etc/system-release
etc/issue
etc/os-release
+opt/pakfire/lib/functions.sh
srv/web/ipfire/cgi-bin/country.cgi
srv/web/ipfire/cgi-bin/credits.cgi
srv/web/ipfire/cgi-bin/dhcp.cgi
PREFIX = /usr
endif
-TAR_OPTIONS = --xz
+TAR_OPTIONS = \
+ --format=pax \
+ --acls \
+ --xattrs --xattrs-include='*'
# URLs that are common sources of downloads. If you're having trouble with
# a site you should change its URL to that of a suitable mirror site.
# Fail when there is an error in the tar pipe
SHELL=/bin/bash -o pipefail
-ifeq "$(BUILD_PLATFORM)" "arm"
- TAR_OPTIONS =
-else
- TAR_OPTIONS = --lzma
-endif
-
HAS_MEMTEST = 0
HAS_IPXE = 0
HAS_ISOLINUX = 0
# Compress root filesystem
# Reason for this tar+untar+tar is removing of entries listed two or more in src/ROOTFILES
rm -rf $(DIR_TMP)/root && mkdir -p $(DIR_TMP)/root
- tar -c --exclude='#*' --exclude='proc/*' --exclude='dev/pts/*' --exclude='tmp/*' \
+ tar $(TAR_OPTIONS) -c --exclude='#*' --exclude='proc/*' --exclude='dev/pts/*' --exclude='tmp/*' \
--exclude='__pycache__' \
- -C / --files-from=$(DIR_TMP)/ROOTFILES | tar -x -C $(DIR_TMP)/root
+ -C / --files-from=$(DIR_TMP)/ROOTFILES | tar $(TAR_OPTIONS) -x -C $(DIR_TMP)/root
rm -f $(DIR_TMP)/ROOTFILES
mkdir $(DIR_TMP)/root/sys
- cd $(DIR_TMP)/root && tar cf - * | xz $(XZ_OPT) > $(DIR_TMP)/cdrom/distro.img
+ cd $(DIR_TMP)/root && tar $(TAR_OPTIONS) -cf - * | xz $(XZ_OPT) > $(DIR_TMP)/cdrom/distro.img
rm -rf $(DIR_TMP)/root
# Other files
THISAPP = core-updates
TARGET = $(DIR_INFO)/$(THISAPP)
-TAR_OPTIONS = --xz
###############################################################################
# Top-level Rules
sed -e "s/KVER/$(KVER)/g" -i /tmp/ROOTFILES
#Remove doubled files with tar/untar/tar to save space
- tar -c --exclude='proc/*' --exclude='tmp/ROOTFILES' --exclude='__pycache__' --exclude='#*' --exclude='dev/pts/*' \
+ tar $(TAR_OPTIONS) -c --exclude='proc/*' --exclude='tmp/ROOTFILES' --exclude='__pycache__' --exclude='#*' --exclude='dev/pts/*' \
--exclude-from=$(DIR_SRC)/config/rootfiles/$@/exclude \
-C / --files-from=/tmp/ROOTFILES -f /$(SNAME).tar
mv -f /tmp/ROOTFILES /install/packages/package/ROOTFILES
- tar -p --numeric-owner -x -C /tmp -f /$(SNAME).tar
+ tar $(TAR_OPTIONS) -p --numeric-owner -x -C /tmp -f /$(SNAME).tar
rm -f /$(SNAME).tar
- cd /tmp && XZ_OPT="$(XZ_OPT)" tar cJf /install/packages/package/files.tar.xz $(TAR_OPTIONS) * && rm -rf *
+ cd /tmp && XZ_OPT="$(XZ_OPT)" tar $(TAR_OPTIONS) -cJf /install/packages/package/files.tar.xz $(TAR_OPTIONS) * && rm -rf *
cat /install/packages/package/ROOTFILES | grep -v "#" > /install/packages/package/ROOTFILES.tmp
rm /install/packages/package/ROOTFILES
mv /install/packages/package/ROOTFILES.tmp /install/packages/package/ROOTFILES
# Install IPFire
ifneq "$(BUILD_PLATFORM)" "arm"
- tar -x --xz -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
+ tar $(TAR_OPTIONS) -x --xz -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
else
- tar -x -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
+ tar $(TAR_OPTIONS) -x -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img
endif
-touch $(MNThdd)/lib/modules/$(KVER)-ipfire/modules.dep
mkdir $(MNThdd)/proc
// Extract files...
snprintf(commandstring, STRING_SIZE,
- "/bin/tar -C /harddisk -xvf /cdrom/distro.img --xz 2>/dev/null");
+ "/bin/tar --acls --xattrs --xattrs-include='*' -C /harddisk -xvf /cdrom/distro.img --xz 2>/dev/null");
if (runcommandwithprogress(60, 4, title, commandstring, INST_FILECOUNT,
_("Installing the system..."), logfile)) {
extract_files() {
echo "Extracting files..."
- tar xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
+ tar --acls --xattrs --xattrs-include='*' \
+ -xavf /opt/pakfire/tmp/files* --no-overwrite-dir -p --numeric-owner -C /
echo "...Finished."
}