From 0720ac9bd4ee82d924f6c0e568aa4477297772d1 Mon Sep 17 00:00:00 2001 From: Gerardo Exequiel Pozzi Date: Mon, 9 Jan 2012 20:33:35 -0300 Subject: [archiso] Refactor: Use losetup from util-linux New losetup from util-linux 2.21 uses new /dev/loop-control from Linux 3.1. Needs mkinitcpio-0.8.2+ (provides modules.devname, or workaround with earlymodules=loop) Get advantages from it! Removing custom shell code. Signed-off-by: Gerardo Exequiel Pozzi --- archiso/hooks/archiso_loop_mnt | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'archiso/hooks/archiso_loop_mnt') diff --git a/archiso/hooks/archiso_loop_mnt b/archiso/hooks/archiso_loop_mnt index e52dc69..664f3a5 100644 --- a/archiso/hooks/archiso_loop_mnt +++ b/archiso/hooks/archiso_loop_mnt @@ -10,15 +10,13 @@ run_hook () { archiso_loop_mount_handler () { newroot="${1}" + local _dev_loop + msg ":: Setup a loop device from ${img_loop} located at device ${img_dev}" _mnt_dev "${img_dev}" "/run/archiso/img_dev" "-r" - _dev_loop=$(losetup -f) - if ! losetup "${_dev_loop}" "/run/archiso/img_dev/${img_loop}"; then - echo "ERROR: Setting loopback device '${_dev_loop}'" - echo " for file '/run/archiso/img_dev/${img_loop}'" - echo " Falling back to interactive prompt" - echo " You can try to fix the problem manually, log out when you are finished" + if ! _dev_loop=$(losetup --find --show "/run/archiso/img_dev/${img_loop}"); then + echo "ERROR: Setting loopback device for file '/run/archiso/img_dev/${img_loop}'" launch_interactive_shell fi -- cgit v1.2.3-70-g09d2