diff options
-rw-r--r-- | archiso/initcpio/hooks/archiso | 4 | ||||
-rwxr-xr-x | archiso/mkarchiso | 2 | ||||
-rwxr-xr-x | configs/releng/build.sh | 14 | ||||
-rw-r--r-- | configs/releng/mkinitcpio.conf | 2 | ||||
-rw-r--r-- | configs/releng/packages.both | 1 | ||||
-rw-r--r-- | configs/releng/pacman.conf | 11 |
6 files changed, 28 insertions, 6 deletions
diff --git a/archiso/initcpio/hooks/archiso b/archiso/initcpio/hooks/archiso index 753e3da..5c56561 100644 --- a/archiso/initcpio/hooks/archiso +++ b/archiso/initcpio/hooks/archiso @@ -33,6 +33,10 @@ _mnt_dmsnapshot() { dmsetup create ${dm_snap_name} --table "0 ${ro_dev_size} snapshot ${ro_dev} ${rw_dev} ${cow_persistent} ${cow_chunksize}" + if [[ "${cow_persistent}" != "P" ]]; then + rm -f "/run/archiso/cowspace/${cow_directory}/${img_name}.cow" + fi + _mnt_dev "/dev/mapper/${dm_snap_name}" "${newroot}${mnt}" "-w" "defaults" echo $(readlink -f /dev/mapper/${dm_snap_name}) >> /run/archiso/used_block_devices } diff --git a/archiso/mkarchiso b/archiso/mkarchiso index 5f9e887..cc66df4 100755 --- a/archiso/mkarchiso +++ b/archiso/mkarchiso @@ -266,7 +266,7 @@ command_pkglist () { _show_config pkglist _msg_info "Creating a list of installed packages on live-enviroment..." - pacman -Sl -r "${work_dir}/airootfs" --config "${pacman_conf}" | \ + pacman -Sl --sysroot "${work_dir}/airootfs" | \ awk '/\[installed\]$/ {print $1 "/" $2 "-" $3}' > \ "${work_dir}/iso/${install_dir}/pkglist.${arch}.txt" _msg_info "Done!" diff --git a/configs/releng/build.sh b/configs/releng/build.sh index 8c11e2d..aeb323a 100755 --- a/configs/releng/build.sh +++ b/configs/releng/build.sh @@ -4,6 +4,8 @@ set -e -u iso_name=archlinux iso_label="ARCH_$(date +%Y%m)" +iso_publisher="Arch Linux <http://www.archlinux.org>" +iso_application="Arch Linux Live/Rescue CD" iso_version=$(date +%Y.%m.%d) install_dir=arch work_dir=work @@ -27,6 +29,10 @@ _usage () echo " Default: ${iso_version}" echo " -L <iso_label> Set an iso label (disk label)" echo " Default: ${iso_label}" + echo " -P <publisher> Set a publisher for the disk" + echo " Default: '${iso_publisher}'" + echo " -A <application> Set an application name for the disk" + echo " Default: '${iso_application}'" echo " -D <install_dir> Set an install_dir (directory inside iso)" echo " Default: ${install_dir}" echo " -w <work_dir> Set the working directory" @@ -101,6 +107,8 @@ make_setup_mkinitcpio() { make_customize_airootfs() { cp -af ${script_path}/airootfs ${work_dir}/${arch} + cp ${script_path}/pacman.conf ${work_dir}/x86_64/airootfs/etc + if [ "${arch}" = 'i686' ]; then curl -o ${work_dir}/${arch}/airootfs/etc/pacman.d/mirrorlist 'https://raw.githubusercontent.com/archlinux32/packages/master/core/pacman-mirrorlist/mirrorlist' else @@ -223,7 +231,7 @@ make_prepare() { # Build ISO make_iso() { - mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-dual.iso" + mkarchiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -P "${iso_publisher}" -A "${iso_application}" -o "${out_dir}" iso "${iso_name}-${iso_version}-dual.iso" } if [[ ${EUID} -ne 0 ]]; then @@ -236,11 +244,13 @@ if [[ ${arch} != x86_64 ]]; then _usage 1 fi -while getopts 'N:V:L:D:w:o:g:vh' arg; do +while getopts 'N:V:L:P:A:D:w:o:g:vh' arg; do case "${arg}" in N) iso_name="${OPTARG}" ;; V) iso_version="${OPTARG}" ;; L) iso_label="${OPTARG}" ;; + P) iso_publisher="${OPTARG}" ;; + A) iso_application="${OPTARG}" ;; D) install_dir="${OPTARG}" ;; w) work_dir="${OPTARG}" ;; o) out_dir="${OPTARG}" ;; diff --git a/configs/releng/mkinitcpio.conf b/configs/releng/mkinitcpio.conf index 7f39b2c..c04f1dc 100644 --- a/configs/releng/mkinitcpio.conf +++ b/configs/releng/mkinitcpio.conf @@ -1,2 +1,2 @@ -HOOKS=(base udev memdisk archiso_shutdown archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_kms block pcmcia filesystems keyboard) +HOOKS=(base udev memdisk archiso_shutdown archiso archiso_loop_mnt archiso_pxe_common archiso_pxe_nbd archiso_pxe_http archiso_pxe_nfs archiso_kms block filesystems keyboard) COMPRESSION="xz" diff --git a/configs/releng/packages.both b/configs/releng/packages.both index 9417e57..bae8238 100644 --- a/configs/releng/packages.both +++ b/configs/releng/packages.both @@ -62,4 +62,3 @@ wireless_tools wpa_actiond wvdial xl2tpd -zd1211-firmware diff --git a/configs/releng/pacman.conf b/configs/releng/pacman.conf index 45fe03d..c678d01 100644 --- a/configs/releng/pacman.conf +++ b/configs/releng/pacman.conf @@ -14,6 +14,7 @@ #CacheDir = /var/cache/pacman/pkg/ #LogFile = /var/log/pacman.log #GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ HoldPkg = pacman glibc #XferCommand = /usr/bin/curl -C - -f %u > %o #XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u @@ -84,9 +85,17 @@ Include = /etc/pacman.d/mirrorlist [community] Include = /etc/pacman.d/mirrorlist +# If you want to run 32 bit applications on your x86_64 system, +# enable the multilib repositories as required here. + +#[multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[multilib] +#Include = /etc/pacman.d/mirrorlist + # An example of a custom package repository. See the pacman manpage for # tips on creating your own repositories. #[custom] #SigLevel = Optional TrustAll #Server = file:///home/custompkgs - |