[arch-commits] Commit in grub2/trunk (PKGBUILD archlinux_grub_mkconfig_fixes.patch)
Ronald van Haren
ronald at archlinux.org
Wed Mar 21 08:05:35 UTC 2012
Date: Wednesday, March 21, 2012 @ 04:05:34
Author: ronald
Revision: 153983
upgpkg: grub 1:2.00beta2-2
FS#25453
Modified:
grub2/trunk/PKGBUILD
grub2/trunk/archlinux_grub_mkconfig_fixes.patch
-------------------------------------+
PKGBUILD | 30 ++-----
archlinux_grub_mkconfig_fixes.patch | 128 ++++++++++++++++++++++------------
2 files changed, 95 insertions(+), 63 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2012-03-21 07:47:25 UTC (rev 153982)
+++ PKGBUILD 2012-03-21 08:05:34 UTC (rev 153983)
@@ -1,24 +1,24 @@
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Keshav P R <(the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)>
-_grub_bzr_rev="4174"
+_grub_bzr_rev="4169"
_pkgver="2.00~beta2"
-_grub_lua_ver="23"
-_grub_gpxe_ver="12"
-_grub_ntldr_ver="21"
-_grub_915_ver="9"
+_grub_lua_ver=24
+_grub_gpxe_ver=12
+_grub_ntldr_ver=21
+_grub_915_ver=9
pkgname=('grub2-common' 'grub2-bios' 'grub2-efi-i386')
-pkgbase="grub2"
-pkgver="2.00beta2"
-pkgrel="1"
+pkgbase=grub
+pkgver=2.00beta2
+pkgrel=2
url="http://www.gnu.org/software/grub/"
arch=('i686' 'x86_64')
license=('GPL3')
epoch="1"
makedepends=('rsync' 'xz' 'bdf-unifont' 'python' 'autogen' 'texinfo'
- 'help2man' 'gettext' 'device-mapper' 'fuse')
+ 'help2man' 'gettext' 'device-mapper' 'fuse' 'dosfstools' 'efibootmgr')
# source=("ftp://ftp.archlinux.org/other/grub2/grub_r${_grub_bzr_rev}.tar.xz"
source=("http://alpha.gnu.org/gnu/grub/grub-${_pkgver}".tar.xz
@@ -27,7 +27,6 @@
"ftp://ftp.archlinux.org/other/grub2/grub2_extras_ntldr-img_r${_grub_ntldr_ver}.tar.xz"
"ftp://ftp.archlinux.org/other/grub2/grub2_extras_915resolution_r${_grub_915_ver}.tar.xz"
'archlinux_grub_mkconfig_fixes.patch'
- 'grub_extras_lua_args_fix.patch'
'grub.default'
'grub.cfg'
'20_memtest86+')
@@ -38,12 +37,11 @@
"grub2_extras_915resolution_r${_grub_915_ver}.tar.xz")
sha1sums=('2ba583f9466fb676b0ae3d7a9a82d1299b153a98'
- 'a09a4cbfd2f23699028ecd09c397bdc1bebf16aa'
+ '89290031b974780c6df76893836d2477d4add895'
'b04994c005910b4bf123f034b30109d5c8d6fd86'
'eb4b35b4c36b64f9405cbcbc538cb205171c1c0a'
'd5ae2efec25616028a9d89e98b6e454f1c4c415f'
- 'e29559b3b97b773386364d8f99334ca0c60ee98a'
- 'f7d4014d71aa2e693c57920b504f64bc792217ef'
+ '3323e6167878ee123ebc0c63c6880df95c5604cc'
'a76b251b110c9c2d49d2340e4ae932db13ad75bd'
'fd422806c87905f9cabe1f0dc13e544e5fc09e53'
'ce35d7ae75cd1b5b677e894e528f96add40e77b9')
@@ -74,9 +72,6 @@
bsdtar xf "${srcdir}/grub2_extras_915resolution_r${_grub_915_ver}.tar.xz" \
-C "${srcdir}/grub_bios-${_pkgver}/grub-extras"
- ## Fix args lua grub-extras
- patch -Np1 -i "${srcdir}/grub_extras_lua_args_fix.patch"
-
## Requires python2
# sed 's|python |python2 |g' -i "${srcdir}/grub_bios-${_pkgver}/autogen.sh"
@@ -132,9 +127,6 @@
bsdtar xf "${srcdir}/grub2_extras_gpxe_r${_grub_gpxe_ver}.tar.xz" \
-C "${srcdir}/grub_efi-${_pkgver}/grub-extras"
- ## Fix args lua grub-extras
- patch -Np1 -i "${srcdir}/grub_extras_lua_args_fix.patch"
-
## Requires python2
# sed 's|python |python2 |g' -i "${srcdir}/grub_efi-${_pkgver}/autogen.sh"
Modified: archlinux_grub_mkconfig_fixes.patch
===================================================================
--- archlinux_grub_mkconfig_fixes.patch 2012-03-21 07:47:25 UTC (rev 153982)
+++ archlinux_grub_mkconfig_fixes.patch 2012-03-21 08:05:34 UTC (rev 153983)
@@ -31,60 +31,54 @@
gfxterm=0;
for x in ${GRUB_TERMINAL_INPUT} ${GRUB_TERMINAL_OUTPUT}; do
diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in
-index 8c75fab..62e87e1 100644
+index 8c75fab..0e00d19 100644
--- a/util/grub.d/10_linux.in
+++ b/util/grub.d/10_linux.in
-@@ -31,8 +31,8 @@ CLASS="--class gnu-linux --class gnu --class os"
- if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
- OS=GNU/Linux
- else
-- OS="${GRUB_DISTRIBUTOR} GNU/Linux"
-- CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | cut -d' ' -f1) ${CLASS}"
-+ OS="${GRUB_DISTRIBUTOR}"
-+ CLASS="--class $(echo ${GRUB_DISTRIBUTOR} | tr 'A-Z' 'a-z' | tr -d ' ') ${CLASS}"
- fi
+@@ -87,6 +87,8 @@ linux_entry ()
+ case $type in
+ recovery)
+ title="$(gettext_printf "%s, with Linux %s (recovery mode)" "${os}" "${version}")" ;;
++ fallback)
++ title="$(gettext_printf "%s, with Linux %s (Fallback initramfs)" "${os}" "${version}")" ;;
+ *)
+ title="$(gettext_printf "%s, with Linux %s" "${os}" "${version}")" ;;
+ esac
+@@ -100,7 +102,7 @@ linux_entry ()
+ else
+ echo "menuentry '$(echo "$os" | grub_quote)' ${CLASS} \$menuentry_id_option 'gnulinux-simple-$boot_device_id' {" | sed "s/^/$submenu_indentation/"
+ fi
+- if [ x$type != xrecovery ] ; then
++ if [ x$type != xrecovery ] && [ x$type != xfallback ] ; then
+ save_default_entry | sed -e "s/^/\t/"
+ fi
- # loop-AES arranges things so that /dev/loop/X can be our root device, but
-@@ -48,7 +48,7 @@ if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue"
- || uses_abstraction "${GRUB_DEVICE}" lvm; then
- LINUX_ROOT_DEVICE=${GRUB_DEVICE}
- else
-- LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
-+ LINUX_ROOT_DEVICE="/dev/disk/by-uuid/${GRUB_DEVICE_UUID}"
- fi
-
- GRUBFS="`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2>/dev/null || true`"
-@@ -132,6 +132,7 @@ linux_entry ()
+@@ -132,7 +134,8 @@ linux_entry ()
fi
printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/"
fi
+- message="$(gettext_printf "Loading Linux %s ..." ${version})"
+
- message="$(gettext_printf "Loading Linux %s ..." ${version})"
++ message="$(gettext_printf "Loading Linux %s ..." "${version}")"
sed "s/^/$submenu_indentation/" << EOF
echo '$message'
-@@ -152,11 +153,11 @@ EOF
-
- case x`uname -m` in
- xi?86 | xx86_64)
-- list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
-+ list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* /boot/vmlinuz26-* ; do
- if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
- done` ;;
- *)
-- list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* /boot/kernel-* ; do
-+ list=`for i in /boot/vmlinuz* /boot/vmlinux* /vmlinuz* /vmlinux* /boot/kernel-* ; do
- if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
- done` ;;
- esac
-@@ -178,16 +179,19 @@ while [ "x$list" != "x" ] ; do
- dirname=`dirname $linux`
- rel_dirname=`make_system_path_relative_to_its_root $dirname`
- version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
-- alt_version=`echo $version | sed -e "s,\.old$,,g"`
-+ base_init=`echo $basename | sed -e "s,vmlinuz,initramfs,g"`
-+ alt_version="${base_init}-fallback"
+ linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args}
+@@ -181,13 +184,28 @@ while [ "x$list" != "x" ] ; do
+ alt_version=`echo $version | sed -e "s,\.old$,,g"`
linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
++ if [[ "$(grep "Arch Linux" /etc/os-release)" ]]; then
++ if [[ "$(echo "${basename}" | grep "vmlinuz-linux")" ]]; then
++ version="$(echo "${basename}" | sed -e "s,vmlinuz-linux,,g")"
++
++ if [[ "${version}" == "" ]]; then
++ version="core repo kernel"
++ else
++ version="$(echo "${version}" | sed -e "s,-,,g")"
++ version="${version} kernel"
++ fi
++ fi
++ fi
++
initrd=
+
for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \
@@ -94,7 +88,53 @@
"initramfs-genkernel-${version}" \
- "initramfs-genkernel-${alt_version}"; do
+ "initramfs-genkernel-${alt_version}" \
-+ "${basename/vmlinuz/initramfs}.img" "${basename/vmlinuz/kernel}.img"; do
++ "${basename/vmlinuz/initramfs}.img"; do
if test -e "${dirname}/${i}" ; then
initrd="$i"
break
+@@ -215,6 +233,22 @@ while [ "x$list" != "x" ] ; do
+ linux_root_device_thisversion=${GRUB_DEVICE}
+ fi
+
++ if [[ "$(grep "Arch Linux" /etc/os-release)" ]]; then
++ is_first_entry="false"
++
++ linux_entry "${OS}" "${version}" true \
++ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
++
++ for i in "${basename/vmlinuz/initramfs}-fallback.img" "initramfs-${version}-fallback.img" ; do
++ if test -e "${dirname}/${i}"; then
++ initrd="${i}"
++ linux_entry "${OS}" "${version}" fallback \
++ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
++ break
++ fi
++ done
++ fi
++
+ if [ "x$is_first_entry" = xtrue ]; then
+ linux_entry "${OS}" "${version}" simple \
+ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
+@@ -228,8 +262,11 @@ while [ "x$list" != "x" ] ; do
+ echo "submenu '$(gettext_printf "Advanced options for %s" "${OS}" | grub_quote)' \$menuentry_id_option 'gnulinux-advanced-$boot_device_id' {"
+ fi
+
++ if [[ ! "$(grep "Arch Linux" /etc/os-release)" ]]; then
+ linux_entry "${OS}" "${version}" advanced \
+ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
++ fi
++
+ if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
+ linux_entry "${OS}" "${version}" recovery \
+ "single ${GRUB_CMDLINE_LINUX}"
+@@ -241,8 +278,10 @@ done
+
+ # If at least one kernel was found, then we need to
+ # add a closing '}' for the submenu command.
++if [[ ! "$(grep "Arch Linux" /etc/os-release)" ]]; then
+ if [ x"$is_first_entry" != xtrue ]; then
+ echo '}'
+ fi
++fi
+
+ echo "$title_correction_code"
More information about the arch-commits
mailing list