29 Sep
2010
29 Sep
'10
4:28 a.m.
Hello Aaron, Dieter, Thomas: Next Linux 2.6.36 [#1] will support squashfs with lzo compression, and we need newer squashfs-tools 4.1 (officially supported) with lzo enabled (changes needed to PKGBUILD here [#2]). I added a parameter -c to mkarchiso that can select between gzip (default) and lzo. What do you think about adding lzo support to mkarchiso, this should be enabled by default? Or just keep mkarchiso with gzip as default then in "syslinux-iso" profile enable lzo. I did not make any tests at this moment I will wait for 2.6.36 package become ready. Thanks for your time. [#1] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=79cb8ced7eef53856b5a877db0544acf52e00c80 [#2] https://bugs.archlinux.org/task/20986 Adding an "informal" patch just for RFC. --- a/archiso/mkarchiso +++ b/archiso/mkarchiso @@ -7,6 +7,7 @@ PACCONFIG="/etc/pacman.conf" export LABEL="ARCH_$(date +%Y%m)" PUBLISHER="Arch Linux <http://www.archlinux.org>" APPLICATION="Arch Linux Live/Rescue CD" +COMPRESSION="gzip" CREATE_DEFAULT="n" APPNAME=$(basename "${0}") @@ -22,6 +23,7 @@ usage () echo " -L <label> Set a label for the disk" echo " -P <publisher> Set a publisher for the disk" echo " -A <application> Set an application name for the disk" + echo " -c <compressor> Set compression type: 'gzip' (default) or 'lzo'" echo " -d Create default user directory /home/arch" echo " -v Enable verbose output" echo " -h This message" @@ -34,13 +36,14 @@ usage () exit $1 } -while getopts 'p:C:L:P:A:dfvh' arg; do +while getopts 'p:C:L:P:A:cdfvh' arg; do case "${arg}" in p) PKGLIST="${PKGLIST} ${OPTARG}" ;; C) PACCONFIG="${OPTARG}" ;; - L) LABEL="${OPTARG}" ;; - P) PUBLISHER="${OPTARG}" ;; - A) APPLICATION="${OPTARG}" ;; + L) LABEL="${OPTARG}" ;; + P) PUBLISHER="${OPTARG}" ;; + A) APPLICATION="${OPTARG}" ;; + c) COMPRESSION="${OPTARG}" ;; d) CREATE_DEFAULT="y" ;; f) FORCE="y" ;; v) QUIET="n" ;; @@ -187,9 +190,9 @@ _mksquash () { echo "Creating SquashFS image. This may take some time..." start=$(date +%s) if [ "${QUIET}" = "y" ]; then - mksquashfs "${1}" "${sqimg}" -noappend >/dev/null + mksquashfs "${1}" "${sqimg}" -noappend -comp ${COMPRESSION} >/dev/null else - mksquashfs "${1}" "${sqimg}" -noappend + mksquashfs "${1}" "${sqimg}" -noappend -comp ${COMPRESSION} fi minutes=$(echo $start $(date +%s) | awk '{ printf "%0.2f",($2-$1)/60 }') echo "Image creation done in $minutes minutes." -- Gerardo Exequiel Pozzi \cos^2\alpha + \sin^2\alpha = 1