This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, next has been updated via 5621b0ef0a6b7e36966d9183979538ab5a0b08b5 (commit) from 646d6b0670e2b56d007675ad2db1ac7670850382 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 5621b0ef0a6b7e36966d9183979538ab5a0b08b5 Author: Michael Tremer michael.tremer@ipfire.org Date: Tue Jul 13 16:27:59 2021 +0000
cdrom: Compress file system image using Zstandard
This patch uses the new Zstandard algorithm to compress the file system image on the ISO image. This comes with these advantages:
* Compression is about twice as fast than XZ with the parameters we have selected here * We use a lot less memory during compression and can therefore utilise all processor cores of the build machines * Decompression (when installing IPFire and when creating the flash-image) is substantically faster
The downside is that the generated ISO image is slighty larger (~10MiB) which I am okay with as a trade-off for the points mentioned above.
Signed-off-by: Michael Tremer michael.tremer@ipfire.org Signed-off-by: Arne Fitzenreiter arne_f@ipfire.org
-----------------------------------------------------------------------
Summary of changes: lfs/Config | 5 +++++ lfs/cdrom | 2 +- lfs/flash-images | 2 +- src/installer/dracut-module/module-setup.sh | 2 +- src/installer/main.c | 2 +- 5 files changed, 9 insertions(+), 4 deletions(-)
Difference in files: diff --git a/lfs/Config b/lfs/Config index f0139e1c5..a2d3cddc5 100644 --- a/lfs/Config +++ b/lfs/Config @@ -81,6 +81,11 @@ TAR_OPTIONS = \ --acls \ --xattrs --xattrs-include='*'
+ZSTD_OPTIONS = \ + -T$(PARALLELISM) \ + -19 \ + --long + # 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. # diff --git a/lfs/cdrom b/lfs/cdrom index c58fc0885..18c63c79b 100644 --- a/lfs/cdrom +++ b/lfs/cdrom @@ -165,7 +165,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) -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 $(TAR_OPTIONS) -cf - * | xz $(XZ_OPT) > $(DIR_TMP)/cdrom/distro.img + cd $(DIR_TMP)/root && tar $(TAR_OPTIONS) -cf - * | zstd $(ZSTD_OPTIONS) > $(DIR_TMP)/cdrom/distro.img rm -rf $(DIR_TMP)/root
# Other files diff --git a/lfs/flash-images b/lfs/flash-images index 15398d051..72e635073 100644 --- a/lfs/flash-images +++ b/lfs/flash-images @@ -152,7 +152,7 @@ endif
# Install IPFire ifneq "$(BUILD_PLATFORM)" "arm" - tar $(TAR_OPTIONS) -x --xz -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img + tar $(TAR_OPTIONS) -x --zstd -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img else tar $(TAR_OPTIONS) -x -C $(MNThdd)/ -f $(DIR_TMP)/cdrom/distro.img endif diff --git a/src/installer/dracut-module/module-setup.sh b/src/installer/dracut-module/module-setup.sh index ef4b15bdc..29ec4c0d7 100755 --- a/src/installer/dracut-module/module-setup.sh +++ b/src/installer/dracut-module/module-setup.sh @@ -33,7 +33,7 @@ install() { instmods ext4 iso9660 reiserfs vfat xfs
# Extraction - inst_multiple tar gzip lzma xz + inst_multiple tar gzip zstd
# Networking inst_multiple dhcpcd ethtool hostname ip ping sort wget diff --git a/src/installer/main.c b/src/installer/main.c index fd20a1f37..bc0fdaa67 100644 --- a/src/installer/main.c +++ b/src/installer/main.c @@ -786,7 +786,7 @@ int main(int argc, char *argv[]) {
// Extract files... snprintf(commandstring, STRING_SIZE, - "/bin/tar --acls --xattrs --xattrs-include='*' -C /harddisk -xvf /cdrom/distro.img --xz 2>/dev/null"); + "/bin/tar --acls --xattrs --xattrs-include='*' -C /harddisk -xvf /cdrom/distro.img --zstd 2>/dev/null");
if (runcommandwithprogress(60, 4, title, commandstring, INST_FILECOUNT, _("Installing the system..."), logfile)) {
hooks/post-receive -- IPFire 2.x development tree