Adding check to detect gnu-fdisk and using the original fdisk, thanks to Peter Skogström <peter.skogstrom@bitrunner.com> for the report.

This commit is contained in:
Daniel Baumann 2007-11-12 22:43:28 +01:00
parent 4c91fd7d96
commit b0282f5d26
3 changed files with 29 additions and 2 deletions

View File

@ -138,10 +138,27 @@ Set_defaults ()
fi
fi
# Setting fdisk
if [ -z "${LH_FDISK}" ] || [ ! -x "${LH_FDISK}" ]
then
# Workaround for gnu-fdisk divertion
# (gnu-fdisk is buggy, #445304).
if [ -x /sbin/fdisk.distrib ]
then
LH_FDISK="fdisk.distrib"
elif [ -x /sbin/fdisk ]
then
LH_FDISK="fdisk"
else
echo "E: Can't proces file /sbin/fdisk (FIXME)"
fi
fi
# Setting losetup
if [ -z "${LH_LOSETUP}" ] || [ ! -x "${LH_LOSETUP}" ]
then
# Workaround for loop-aes-utils divertion
# (loop-aes-utils' losetup lacks features).
if [ -x /sbin/losetup.orig ]
then
LH_LOSETUP="losetup.orig"

View File

@ -53,6 +53,7 @@ USAGE="${PROGRAM} [--apt apt|aptitude]\n\
\t [--debug]\n\
\t [-d|--distribution CODENAME]\n\
\t [-e|--encryption aes128|aes192|aes256]\n\
\t [--fdisk\n\
\t [--force]\n\
\t [--genisoimage genisomage|mkisofs]\n\
\t [--grub-splash FILE]\n\
@ -108,7 +109,7 @@ USAGE="${PROGRAM} [--apt apt|aptitude]\n\
Local_arguments ()
{
ARGUMENTS="$(getopt --longoptions apt:,apt-ftp-proxy:,apt-http-proxy:,apt-pdiffs:,apt-pipeline:,apt-recommends:,apt-secure:,bootstrap:,cache:,cache-indices:,cache-packages:,cache-stages:,debconf-frontend:,debconf-nowarnings:,debconf-priority:,genisoimage:,initramfs:,losetup:,mode:,root-command:,use-fakeroot:,tasksel:,includes:,templates:,architecture:,bootstrap-config:,bootstrap-flavour:,bootstrap-keyring:,distribution:,mirror-bootstrap:,mirror-bootstrap-security:,mirror-binary:,mirror-binary-security:,sections:,chroot-filesystem:,union-filesystem:,exposed-root:,hooks:,interactive:,keyring-packages:,language:,linux-flavours:,linux-packages:,packages:,packages-lists:,tasks:,security:,symlinks:,sysvinit:,binary-images:,binary-indices:,bootappend-install:,bootappend-live:,bootloader:,chroot-build:,debian-installer:,debian-installer-daily:,encryption:,grub-splash:,hostname:,iso-application:,iso-preparer:,iso-publisher:,iso-volume:,memtest:,net-root-filesystem:,net-root-mountoptions:,net-root-path:,net-root-server:,net-cow-filesystem:,net-cow-mountoptions:,net-cow-path:,net-cow-server:,syslinux-splash:,syslinux-timeout:,syslinux-menu:,username:,source:,source-images:,breakpoints,conffile:,debug,force,help,quiet,usage,verbose,version --name=${PROGRAM} --options a:f:d:m:l:k:p:b:e:s:c:huv --shell sh -- "${@}")"
ARGUMENTS="$(getopt --longoptions apt:,apt-ftp-proxy:,apt-http-proxy:,apt-pdiffs:,apt-pipeline:,apt-recommends:,apt-secure:,bootstrap:,cache:,cache-indices:,cache-packages:,cache-stages:,debconf-frontend:,debconf-nowarnings:,debconf-priority:,genisoimage:,initramfs:,fdisk:,losetup:,mode:,root-command:,use-fakeroot:,tasksel:,includes:,templates:,architecture:,bootstrap-config:,bootstrap-flavour:,bootstrap-keyring:,distribution:,mirror-bootstrap:,mirror-bootstrap-security:,mirror-binary:,mirror-binary-security:,sections:,chroot-filesystem:,union-filesystem:,exposed-root:,hooks:,interactive:,keyring-packages:,language:,linux-flavours:,linux-packages:,packages:,packages-lists:,tasks:,security:,symlinks:,sysvinit:,binary-images:,binary-indices:,bootappend-install:,bootappend-live:,bootloader:,chroot-build:,debian-installer:,debian-installer-daily:,encryption:,grub-splash:,hostname:,iso-application:,iso-preparer:,iso-publisher:,iso-volume:,memtest:,net-root-filesystem:,net-root-mountoptions:,net-root-path:,net-root-server:,net-cow-filesystem:,net-cow-mountoptions:,net-cow-path:,net-cow-server:,syslinux-splash:,syslinux-timeout:,syslinux-menu:,username:,source:,source-images:,breakpoints,conffile:,debug,force,help,quiet,usage,verbose,version --name=${PROGRAM} --options a:f:d:m:l:k:p:b:e:s:c:huv --shell sh -- "${@}")"
if [ "${?}" != "0" ]
then
@ -202,6 +203,11 @@ Local_arguments ()
shift 2
;;
--fdisk)
LH_FDISK="${2}"
shift 2
;;
--losetup)
LH_LOSETUP="${2}"
shift 2
@ -699,6 +705,10 @@ LH_DEBCONF_PRIORITY="${LH_DEBCONF_PRIORITY}"
# (Default: ${LH_INITRAMFS})
LH_INITRAMFS="${LH_INITRAMFS}"
# \$LH_FDISK: set fdisk program
# (Default: autodetected)
LH_FDISK="${LH_FDISK}"
# \$LH_LOSETUP: set losetup program
# (Default: autodetected)
LH_LOSETUP="${LH_LOSETUP}"

View File

@ -38,7 +38,7 @@ FILE="${2}"
PARTITION="${3:=1}"
${LH_ROOT_COMMAND} ${LH_LOSETUP} "${DEVICE}" "${FILE}"
FDISK_OUT="$(fdisk -l -u ${DEVICE} 2>&1)"
FDISK_OUT="$(LH_FDISK -l -u ${DEVICE} 2>&1)"
${LH_ROOT_COMMAND} ${LH_LOSETUP} -d "${DEVICE}"
LOOPDEVICE="$(echo ${DEVICE}p${PARTITION})"