diff options
author | Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> | 2013-09-21 18:11:43 -0300 |
---|---|---|
committer | Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> | 2013-09-21 18:11:43 -0300 |
commit | 997dabbce2f8b621dacdac268212c4cb1be8956d (patch) | |
tree | c9cda970acb9575ffe1b75d4b5d5a1e443a68db6 | |
parent | 4d25ed614ab34e093e477b1ceb491f6ad2300de7 (diff) | |
download | archiso32-997dabbce2f8b621dacdac268212c4cb1be8956d.tar.xz |
[archiso] mkarchiso: use arch-install-scripts instead of own functions
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
-rwxr-xr-x | archiso/mkarchiso | 43 | ||||
-rw-r--r-- | docs/README.build | 5 |
2 files changed, 9 insertions, 39 deletions
diff --git a/archiso/mkarchiso b/archiso/mkarchiso index fb65f09..e6a2195 100755 --- a/archiso/mkarchiso +++ b/archiso/mkarchiso @@ -47,42 +47,15 @@ _show_space_usage () { _msg_info "Total: ${_total} MiB (100%) | Used: ${_used} MiB (${_pct_u}) | Avail: ${_avail} MiB ($((100 - ${_pct_u%\%}))%)" } -_chroot_mount () { - mount -t devtmpfs dev "${work_dir}/root-image/dev" - mount -t devpts devpts "${work_dir}/root-image/dev/pts" - mount -t tmpfs devshm "${work_dir}/root-image/dev/shm" - mount -t proc proc "${work_dir}/root-image/proc" - mount -t tmpfs run "${work_dir}/root-image/run" - mount -t sysfs sys "${work_dir}/root-image/sys" - mount -t tmpfs tmp "${work_dir}/root-image/tmp" - - trap '_chroot_umount' EXIT HUP INT TERM -} - -_chroot_umount () { - umount "${work_dir}/root-image/tmp" - umount "${work_dir}/root-image/sys" - umount "${work_dir}/root-image/run" - umount "${work_dir}/root-image/proc" - umount "${work_dir}/root-image/dev/shm" - umount "${work_dir}/root-image/dev/pts" - umount "${work_dir}/root-image/dev" - - trap - EXIT HUP INT TERM -} - _chroot_init() { - if [[ ! -d ${work_dir}/root-image/var/cache/pacman ]]; then - mkdir -p ${work_dir}/root-image/{dev,proc,run,sys,tmp,var/lib/pacman} - _pacman "base" - _pacman "syslinux" + if [[ ! -d ${work_dir}/root-image ]]; then + mkdir -p ${work_dir}/root-image + _pacman "base syslinux" fi } _chroot_run() { - _chroot_mount - eval chroot ${work_dir}/root-image "${run_cmd}" - _chroot_umount + eval arch-chroot ${work_dir}/root-image "${run_cmd}" } # Mount a filesystem (trap signals in case of error for unmounting it @@ -218,16 +191,12 @@ _pacman () { _msg_info "Installing packages to '${work_dir}/root-image/'..." - _chroot_mount - if [[ "${quiet}" = "y" ]]; then - pacman -Sy -r "${work_dir}/root-image" --config "${pacman_conf}" --needed --noconfirm $* &> /dev/null + pacstrap -C "${pacman_conf}" -c -d -G -M "${work_dir}/root-image" $* &> /dev/null else - pacman -Sy -r "${work_dir}/root-image" --config "${pacman_conf}" --needed --noconfirm $* + pacstrap -C "${pacman_conf}" -c -d -G -M "${work_dir}/root-image" $* fi - _chroot_umount - _msg_info "Packages installed successfully!" } diff --git a/docs/README.build b/docs/README.build index 80d4b2c..e22ec65 100644 --- a/docs/README.build +++ b/docs/README.build @@ -13,6 +13,7 @@ INDEX *** Build requirements ** For mkarchiso script needs these packages (build host): + + arch-install-scripts for pacstrap/arch-chroot + squashfs-tools for mksquashfs + libisoburn for xorriso + btrfs-progs for mkfs.btrfs (optional) @@ -83,7 +84,7 @@ module of SYSLINUX. ISOLINUX can not find config files on *** Building the most basic Arch Linux live media. (configs/baseline) * Install needed packages. - # pacman -S git make squashfs-tools libisoburn rsync --needed + # pacman -S git make arch-install-scripts squashfs-tools libisoburn rsync --needed * Install archiso. # git clone git://projects.archlinux.org/archiso.git @@ -99,7 +100,7 @@ used to build official images with much more things. *** Building official Arch Linux live media. (configs/releng) * Install needed packages. - # pacman -S git make squashfs-tools libisoburn dosfstools lynx --needed + # pacman -S git make arch-install-scripts squashfs-tools libisoburn dosfstools lynx --needed * Install archiso. # git clone git://projects.archlinux.org/archiso.git |