about summary refs log tree commit diff
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2015-11-28 19:30:09 +0100
committerChristian Neukirchen <chneukirchen@gmail.com>2015-11-28 19:30:09 +0100
commitafecbf55d35f9aa3cb593db13bef10a65426b492 (patch)
tree2b5035d56e17b9097a77e9e521cdd4d4e7b24c8d
parent55db8b05fa0ba5f24b28a82bcabae1197aaac220 (diff)
parent242712da5bf0aa61909ede0ca03e74b65d86d9a7 (diff)
downloadhrmpf-afecbf55d35f9aa3cb593db13bef10a65426b492.tar.gz
hrmpf-afecbf55d35f9aa3cb593db13bef10a65426b492.tar.xz
hrmpf-afecbf55d35f9aa3cb593db13bef10a65426b492.zip
Merge remote-tracking branch 'remotes/origin/master'
* remotes/origin/master:
  installer: redirect stderr to /dev/null for cciss(4).
  Add support for proper 32 bit grub
  build-x86-images: enable the LXQt image by default.
  build-x86-images: added -r repo opt.
  mklive: make sure -r is preferred over defaults.
  installer: allow posix timezones too. (thanks \0xc0ffee@irc).
-rw-r--r--build-x86-images.sh.in9
-rw-r--r--installer.sh.in6
-rw-r--r--mklive.sh.in43
3 files changed, 37 insertions, 21 deletions
diff --git a/build-x86-images.sh.in b/build-x86-images.sh.in
index 0fbf593..5ea5b04 100644
--- a/build-x86-images.sh.in
+++ b/build-x86-images.sh.in
@@ -3,11 +3,12 @@
 ARCH=
 IMAGE=
 
-while getopts "a:b:h" opt; do
+while getopts "a:b:hr:" opt; do
 case $opt in
 	a) ARCH="$OPTARG";;
 	b) IMAGE="$OPTARG";;
-	h) echo "${0#/*}: [-a arch] [-b base|e|xfce|mate|cinnamon|kde|lxde]" >&2; exit 1;;
+	h) echo "${0#/*}: [-a arch] [-b base|e|xfce|mate|cinnamon|kde|lxde|lxqt] [-r repo]" >&2; exit 1;;
+	r) REPO="-r $OPTARG $REPO";;
 esac
 done
 shift $((OPTIND - 1))
@@ -43,7 +44,7 @@ readonly LXQT_PKGS="$X_PKGS lxdm lxqt gvfs-afc gvfs-mtp gvfs-smb udisks2 qupzill
 
 if [ -z "$IMAGE" -o "$IMAGE" = base ]; then
 	if [ ! -e $BASE_IMG ]; then
-		./mklive.sh -a $ARCH -o $BASE_IMG -p "$BASE_PKGS" $@
+		./mklive.sh -a $ARCH -o $BASE_IMG -p "$BASE_PKGS" ${REPO} $@
 	fi
 fi
 if [ -z "$IMAGE" -o "$IMAGE" = e ]; then
@@ -71,7 +72,7 @@ if [ -z "$IMAGE" -o "$IMAGE" = lxde ]; then
 		./mklive.sh -a $ARCH -o $LXDE_IMG -p "$LXDE_PKGS" $@
 	fi
 fi
-if [ "$IMAGE" = lxqt ]; then
+if [ -z "$IMAGE" -o "$IMAGE" = lxqt ]; then
 	if [ ! -e $LXQT_IMG ]; then
 		./mklive.sh -a $ARCH -o $LXQT_IMG -p "$LXQT_PKGS" $@
 	fi
diff --git a/installer.sh.in b/installer.sh.in
index 290d5cd..6705f09 100644
--- a/installer.sh.in
+++ b/installer.sh.in
@@ -136,7 +136,7 @@ show_disks() {
         echo "size:${gbytes}GB;sector_size:$sectorsize"
     done
     # cciss(4) devices
-    for dev in $(ls /dev/cciss|grep -E 'c[0-9]d[0-9]$'); do
+    for dev in $(ls /dev/cciss 2>/dev/null|grep -E 'c[0-9]d[0-9]$'); do
         echo "/dev/cciss/$dev"
         size=$(cat /sys/block/cciss\!$dev/size)
         sectorsize=$(cat /sys/block/cciss\!$dev/queue/hw_sector_size)
@@ -179,7 +179,7 @@ show_partitions() {
         fi
     done
     # cciss(4) devices
-    for part in $(ls /dev/cciss|grep -E 'c[0-9]d[0-9]p[0-9]+'); do
+    for part in $(ls /dev/cciss 2>/dev/null|grep -E 'c[0-9]d[0-9]p[0-9]+'); do
         fstype=$(lsblk -nfr /dev/cciss/$part|awk '{print $2}')
         [ "$fstype" = "crypto_LUKS" ] && continue
         [ "$fstype" = "LVM2_member" ] && continue
@@ -344,7 +344,7 @@ set_locale() {
 }
 
 menu_timezone() {
-    local _tzones="$(cd /usr/share/zoneinfo; find Africa/ America/ Antarctica/ Arctic/ Asia/ Atlantic/ Australia/ Europe/ Indian/ Pacific/ -type f | sort)"
+    local _tzones="$(cd /usr/share/zoneinfo; find Africa/ America/ Antarctica/ Arctic/ Asia/ Atlantic/ Australia/ Europe/ Indian/ Pacific/ posix/ -type f | sort)"
     local _TIMEZONES=
 
     for f in ${_tzones}; do
diff --git a/mklive.sh.in b/mklive.sh.in
index 58784c6..9e6a9c3 100644
--- a/mklive.sh.in
+++ b/mklive.sh.in
@@ -28,7 +28,7 @@
 #-
 trap "error_out $LINENO $?" INT TERM 0
 
-readonly REQUIRED_PKGS="base-files libgcc dash coreutils sed tar gawk syslinux grub-x86_64-efi squashfs-tools xorriso"
+readonly REQUIRED_PKGS="base-files libgcc dash coreutils sed tar gawk syslinux grub-i386-efi grub-x86_64-efi squashfs-tools xorriso"
 readonly INITRAMFS_PKGS="binutils xz device-mapper"
 readonly PROGNAME=$(basename $0)
 
@@ -215,18 +215,33 @@ generate_grub_efi_boot() {
     mount -o rw,flush -t vfat "${LOOP_DEVICE}" "${GRUB_EFI_TMPDIR}" >/dev/null 2>&1
 
     cp -a $IMAGEDIR/boot $VOIDHOSTDIR
-    xbps-uchroot $VOIDHOSTDIR grub-mkstandalone -- \
-        --directory="/usr/lib/grub/x86_64-efi" \
-        --format="x86_64-efi" \
-        --compression="xz" --output="/tmp/bootx64.efi" \
-        "boot/grub/grub.cfg"
-    if [ $? -ne 0 ]; then
-        umount "$GRUB_EFI_TMPDIR"
-        losetup --detach "${LOOP_DEVICE}"
-        die "Failed to generate EFI loader"
+    if [ $BASE_ARCH = "i686" ]; then
+	xbps-uchroot $VOIDHOSTDIR grub-mkstandalone -- \
+		     --directory="/usr/lib/grub/i386-efi" \
+		     --format="i386-efi" \
+		     --compression="xz" --output="/tmp/bootia32.efi" \
+		     "boot/grub/grub.cfg"
+	if [ $? -ne 0 ]; then
+            umount "$GRUB_EFI_TMPDIR"
+            losetup --detach "${LOOP_DEVICE}"
+            die "Failed to generate EFI loader"
+	fi
+	mkdir -p ${GRUB_EFI_TMPDIR}/EFI/BOOT
+	cp -f $VOIDHOSTDIR/tmp/bootia32.efi ${GRUB_EFI_TMPDIR}/EFI/BOOT/BOOTIA32.EFI
+    else
+	xbps-uchroot $VOIDHOSTDIR grub-mkstandalone -- \
+		     --directory="/usr/lib/grub/x86_64-efi" \
+		     --format="x86_64-efi" \
+		     --compression="xz" --output="/tmp/bootx64.efi" \
+		     "boot/grub/grub.cfg"
+	if [ $? -ne 0 ]; then
+            umount "$GRUB_EFI_TMPDIR"
+            losetup --detach "${LOOP_DEVICE}"
+            die "Failed to generate EFI loader"
+	fi
+	mkdir -p ${GRUB_EFI_TMPDIR}/EFI/BOOT
+	cp -f $VOIDHOSTDIR/tmp/bootx64.efi ${GRUB_EFI_TMPDIR}/EFI/BOOT/BOOTX64.EFI
     fi
-    mkdir -p ${GRUB_EFI_TMPDIR}/EFI/BOOT
-    cp -f $VOIDHOSTDIR/tmp/bootx64.efi ${GRUB_EFI_TMPDIR}/EFI/BOOT/BOOTX64.EFI
     umount "$GRUB_EFI_TMPDIR"
     losetup --detach "${LOOP_DEVICE}"
     rm -rf $GRUB_EFI_TMPDIR
@@ -272,8 +287,6 @@ generate_iso_image() {
         -output "$CURDIR/$OUTPUT_FILE" "$IMAGEDIR" || die "Failed to generate ISO image"
 }
 
-BOOT_FILES=
-XBPS_REPOSITORY="--repository=http://repo.voidlinux.eu/current --repository=http://muslrepo.voidlinux.eu/current"
 #
 # main()
 #
@@ -299,6 +312,8 @@ while getopts "a:b:B:r:c:C:T:Kk:l:i:s:S:o:p:h" opt; do
 done
 shift $((OPTIND - 1))
 
+XBPS_REPOSITORY="$XBPS_REPOSITORY --repository=http://repo.voidlinux.eu/current --repository=http://muslrepo.voidlinux.eu/current"
+
 ARCH=$(uname -m)
 
 # Set defaults