Date: Saturday, March 17, 2012 @ 04:36:22 Author: ronald Revision: 153646
upgpkg: grub2 1:2.00beta2-1 update to 2.00beta2 Added: grub2/trunk/archlinux_grub_mkconfig_fixes.patch grub2/trunk/grub_extras_lua_args_fix.patch Modified: grub2/trunk/20_memtest86+ grub2/trunk/PKGBUILD grub2/trunk/archlinux_grub2_mkconfig_fixes.patch grub2/trunk/grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch grub2/trunk/grub.cfg grub2/trunk/grub.default --------------------------------------------------------+ 20_memtest86+ | 10 PKGBUILD | 254 ++++++--------- archlinux_grub2_mkconfig_fixes.patch | 31 - archlinux_grub_mkconfig_fixes.patch | 100 +++++ grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch | 10 grub.cfg | 108 ++---- grub.default | 6 grub_extras_lua_args_fix.patch | 13 8 files changed, 292 insertions(+), 240 deletions(-) Modified: 20_memtest86+ =================================================================== --- 20_memtest86+ 2012-03-17 03:19:37 UTC (rev 153645) +++ 20_memtest86+ 2012-03-17 08:36:22 UTC (rev 153646) @@ -4,12 +4,14 @@ # if memtest is installed on the system. # ######################################################## -prefix=/usr -exec_prefix=${prefix} -libdir=${exec_prefix}/lib +prefix="/usr" +exec_prefix="${prefix}" -. ${libdir}/grub/grub-mkconfig_lib +datarootdir="/usr/share" +datadir="${datarootdir}" +. "${datadir}/grub/grub-mkconfig_lib" + MEMTEST86_IMAGE="/boot/memtest86+/memtest.bin" CLASS="--class memtest86 --class gnu --class tool" Modified: PKGBUILD =================================================================== --- PKGBUILD 2012-03-17 03:19:37 UTC (rev 153645) +++ PKGBUILD 2012-03-17 08:36:22 UTC (rev 153646) @@ -1,106 +1,94 @@ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Keshav P R <(the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> -_grub2_rev="3750" +_grub_bzr_rev="4174" +_pkgver="2.00~beta2" -_grub2_lua_ver="20" -_grub2_gpxe_ver="12" -_grub2_ntldr_ver="20" -_grub2_915_ver="7" +_grub_lua_ver="23" +_grub_gpxe_ver="12" +_grub_ntldr_ver="21" +_grub_915_ver="9" pkgname=('grub2-common' 'grub2-bios' 'grub2-efi-i386') pkgbase="grub2" -pkgver='1.99' -pkgrel=6 +pkgver="2.00beta2" +pkgrel="1" url="http://www.gnu.org/software/grub/" arch=('i686' 'x86_64') license=('GPL3') -epoch=1 -makedepends=('rsync' 'xz' 'bdf-unifont' 'python2' 'autogen' 'texinfo' +epoch="1" +makedepends=('rsync' 'xz' 'bdf-unifont' 'python' 'autogen' 'texinfo' 'help2man' 'gettext' 'device-mapper' 'fuse') -# source=("ftp://ftp.gnu.org/gnu/grub/grub-${pkgver}.tar.xz" -source=("ftp://ftp.archlinux.org/other/grub2/grub2_r${_grub2_rev}.tar.xz" - "ftp://ftp.archlinux.org/other/grub2/grub2_extras_lua_r${_grub2_lua_ver}.tar.xz" - "ftp://ftp.archlinux.org/other/grub2/grub2_extras_gpxe_r${_grub2_gpxe_ver}.tar.xz" - "ftp://ftp.archlinux.org/other/grub2/grub2_extras_ntldr-img_r${_grub2_ntldr_ver}.tar.xz" - "ftp://ftp.archlinux.org/other/grub2/grub2_extras_915resolution_r${_grub2_915_ver}.tar.xz" - 'grub2_automake_1.11.2_pkglib_to_pkgdata.patch' - 'grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch' - 'archlinux_grub2_mkconfig_fixes.patch' +# 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 + "ftp://ftp.archlinux.org/other/grub2/grub2_extras_lua_r${_grub_lua_ver}.tar.xz" + "ftp://ftp.archlinux.org/other/grub2/grub2_extras_gpxe_r${_grub_gpxe_ver}.tar.xz" + "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+' - 'grub2_bzr_export.sh') + '20_memtest86+') -noextract=("grub2_extras_lua_r${_grub2_lua_ver}.tar.xz" - "grub2_extras_gpxe_r${_grub2_gpxe_ver}.tar.xz" - "grub2_extras_ntldr-img_r${_grub2_ntldr_ver}.tar.xz" - "grub2_extras_915resolution_r${_grub2_915_ver}.tar.xz") +noextract=("grub2_extras_lua_r${_grub_lua_ver}.tar.xz" + "grub2_extras_gpxe_r${_grub_gpxe_ver}.tar.xz" + "grub2_extras_ntldr-img_r${_grub_ntldr_ver}.tar.xz" + "grub2_extras_915resolution_r${_grub_915_ver}.tar.xz") -sha1sums=('3fab3260a11756f2cfc39f13279a2a633b814d31' - '9f2dbf7a3faab24ca92266400aa513fecd3895c8' +sha1sums=('2ba583f9466fb676b0ae3d7a9a82d1299b153a98' + 'a09a4cbfd2f23699028ecd09c397bdc1bebf16aa' 'b04994c005910b4bf123f034b30109d5c8d6fd86' - 'd2d6bf4af2a372aa1a3edeb5d5193084322b77a9' - '8bcaed545956bb33581e1b97ac96a2c3717ec793' - 'e149c8f14a74a9c367852a1615e68758f2c71d29' - '16af6a7f65cdb10b7d0d0f86d5431609bc495559' - 'eaa7665e9cdcd330071437ca3eec1fead5f6d7b8' - 'e1477db3700b27b5e5ad3d8fa43028555204759b' - '8948d89537c12a4202df7c001e65a77030bbe5a3' - '82a27eca5277218cf57c6c5767e0b17a72f62229' - 'b872ab94f506ea0d1587ebc3ef7d3d1d3652be7c') + 'eb4b35b4c36b64f9405cbcbc538cb205171c1c0a' + 'd5ae2efec25616028a9d89e98b6e454f1c4c415f' + 'e29559b3b97b773386364d8f99334ca0c60ee98a' + 'f7d4014d71aa2e693c57920b504f64bc792217ef' + 'a76b251b110c9c2d49d2340e4ae932db13ad75bd' + 'fd422806c87905f9cabe1f0dc13e544e5fc09e53' + 'ce35d7ae75cd1b5b677e894e528f96add40e77b9') _build_grub2-common_and_bios() { ## copy the source for building the common/bios package - cp -r "${srcdir}/grub-${pkgver}" "${srcdir}/grub2_bios-${pkgver}" - cd "${srcdir}/grub2_bios-${pkgver}" + cp -r "${srcdir}/grub-${_pkgver}" "${srcdir}/grub_bios-${_pkgver}" + cd "${srcdir}/grub_bios-${_pkgver}" - ## Fix automake 1.11.2 autogen.sh pkglib_DATA and pkglib_SCRIPTS error - patch -Np1 -i "${srcdir}/grub2_automake_1.11.2_pkglib_to_pkgdata.patch" - - ## Use outside GRUB_PREFIX if defined, patch submitted upstream to grub-devel ML - ## solves https://bugs.archlinux.org/task/26430 and https://bugs.archlinux.org/task/26463 - patch -Np1 -i "${srcdir}/grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch" - - ## Apply Archlinux specific fixes to enable grub2-mkconfig detect Arch kernels and initramfs - patch -Np1 -i "${srcdir}/archlinux_grub2_mkconfig_fixes.patch" + ## Apply Archlinux specific fixes to enable grub-mkconfig detect Arch kernels and initramfs + patch -Np1 -i "${srcdir}/archlinux_grub_mkconfig_fixes.patch" echo ## add the grub-extra sources - export GRUB_CONTRIB="${srcdir}/grub2_bios-${pkgver}/grub2-extras/" - install -d "${srcdir}/grub2_bios-${pkgver}/grub2-extras" + export GRUB_CONTRIB="${srcdir}/grub_bios-${_pkgver}/grub-extras/" + install -d "${srcdir}/grub_bios-${_pkgver}/grub-extras" - bsdtar xf "${srcdir}/grub2_extras_lua_r${_grub2_lua_ver}.tar.xz" \ - -C "${srcdir}/grub2_bios-${pkgver}/grub2-extras" + bsdtar xf "${srcdir}/grub2_extras_lua_r${_grub_lua_ver}.tar.xz" \ + -C "${srcdir}/grub_bios-${_pkgver}/grub-extras" - bsdtar xf "${srcdir}/grub2_extras_gpxe_r${_grub2_gpxe_ver}.tar.xz" \ - -C "${srcdir}/grub2_bios-${pkgver}/grub2-extras" + bsdtar xf "${srcdir}/grub2_extras_gpxe_r${_grub_gpxe_ver}.tar.xz" \ + -C "${srcdir}/grub_bios-${_pkgver}/grub-extras" - ## ntldr-img compile fails - disable for now - # bsdtar xf "${srcdir}/grub2_extras_ntldr-img_r${_grub2_ntldr_ver}.tar.xz" \ - # -C "${srcdir}/grub2_bios-${pkgver}/grub2-extras" + bsdtar xf "${srcdir}/grub2_extras_ntldr-img_r${_grub_ntldr_ver}.tar.xz" \ + -C "${srcdir}/grub_bios-${_pkgver}/grub-extras" - bsdtar xf "${srcdir}/grub2_extras_915resolution_r${_grub2_915_ver}.tar.xz" \ - -C "${srcdir}/grub2_bios-${pkgver}/grub2-extras" + bsdtar xf "${srcdir}/grub2_extras_915resolution_r${_grub_915_ver}.tar.xz" \ + -C "${srcdir}/grub_bios-${_pkgver}/grub-extras" - ## The below step is not required as the script now executes with python3, hence makedepends change from python2 to python pkg - ## Seems like python2 is required again as on 04-JAN-2012 - grub2 bzr mainline rev 3732 - ## Need to use python2 - sed 's|python |python2 |g' -i "${srcdir}/grub2_bios-${pkgver}/autogen.sh" - echo + ## 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" + ## start the actual build process - cd "${srcdir}/grub2_bios-${pkgver}" + cd "${srcdir}/grub_bios-${_pkgver}" ./autogen.sh - echo ## fix unifont.bdf location so grub-mkfont can create *.pf2 files - sed 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|g' -i "${srcdir}/grub2_bios-${pkgver}/configure" + sed 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|g' -i "${srcdir}/grub_bios-${_pkgver}/configure" - # install -d "${srcdir}/grub2_bios-${pkgver}/BUILD_BIOS" - # cd "${srcdir}/grub2_bios-${pkgver}/BUILD_BIOS" + # install -d "${srcdir}/grub_bios-${_pkgver}/BUILD_BIOS" + # cd "${srcdir}/grub_bios-${_pkgver}/BUILD_BIOS" CFLAGS="" ./configure \ --with-platform="pc" \ @@ -118,46 +106,40 @@ --sbindir="/usr/sbin" \ --mandir="/usr/share/man" \ --infodir="/usr/share/info" \ - --datadir="/usr/lib" \ --datarootdir="/usr/share" \ --sysconfdir="/etc" \ - --program-prefix="" - echo + --program-prefix="" \ + --with-bootdir="/boot" \ + --with-grubdir="grub" \ + --disable-werror CFLAGS="" make - echo } _build_grub2-efi-i386() { ## copy the source for building the efi package - cp -r "${srcdir}/grub-${pkgver}" "${srcdir}/grub2_efi-${pkgver}" - cd "${srcdir}/grub2_efi-${pkgver}" + cp -r "${srcdir}/grub-${_pkgver}" "${srcdir}/grub_efi-${_pkgver}" + cd "${srcdir}/grub_efi-${_pkgver}" - ## Fix automake 1.11.2 autogen.sh pkglib_DATA and pkglib_SCRIPTS error - patch -Np1 -i "${srcdir}/grub2_automake_1.11.2_pkglib_to_pkgdata.patch" + export GRUB_CONTRIB="${srcdir}/grub_efi-${_pkgver}/grub-extras/" + install -d "${srcdir}/grub_efi-${_pkgver}/grub-extras" - ## add the grub-extra sources - export GRUB_CONTRIB="${srcdir}/grub2_efi-${pkgver}/grub2-extras/" - install -d "${srcdir}/grub2_efi-${pkgver}/grub2-extras" + bsdtar xf "${srcdir}/grub2_extras_lua_r${_grub_lua_ver}.tar.xz" \ + -C "${srcdir}/grub_efi-${_pkgver}/grub-extras" - bsdtar xf "${srcdir}/grub2_extras_lua_r${_grub2_lua_ver}.tar.xz" \ - -C "${srcdir}/grub2_efi-${pkgver}/grub2-extras" + bsdtar xf "${srcdir}/grub2_extras_gpxe_r${_grub_gpxe_ver}.tar.xz" \ + -C "${srcdir}/grub_efi-${_pkgver}/grub-extras" - bsdtar xf "${srcdir}/grub2_extras_gpxe_r${_grub2_gpxe_ver}.tar.xz" \ - -C "${srcdir}/grub2_efi-${pkgver}/grub2-extras" + ## Fix args lua grub-extras + patch -Np1 -i "${srcdir}/grub_extras_lua_args_fix.patch" - ## The below step is not required as the script now executes with python3, hence makedepends change from python2 to python pkg - ## Seems like python2 is required again - as on 04-JAN-2012 - grub2 bzr mainline rev 3732 - ## Need to use python2 - sed 's|python |python2 |g' -i "${srcdir}/grub2_efi-${pkgver}/autogen.sh" - echo + ## Requires python2 + # sed 's|python |python2 |g' -i "${srcdir}/grub_efi-${_pkgver}/autogen.sh" - ## start the actual build process - cd "${srcdir}/grub2_efi-${pkgver}" + cd "${srcdir}/grub_efi-${_pkgver}" ./autogen.sh - echo CFLAGS="" ./configure \ --with-platform="efi" \ @@ -175,17 +157,23 @@ --sbindir="/usr/sbin" \ --mandir="/usr/share/man" \ --infodir="/usr/share/info" \ - --datadir="/usr/lib" \ --datarootdir="/usr/share" \ --sysconfdir="/etc" \ - --program-prefix="" - echo + --program-prefix="" \ + --with-bootdir="/boot" \ + --with-grubdir="grub" \ + --disable-werror CFLAGS="" make - echo - } +#_get_locale_files() { +# +# cd "${srcdir}/grub-${_pkgver}" +# rsync -Lrtvz translationproject.org::tp/latest/grub/ "${srcdir}/grub-${_pkgver}/po" || true +# (cd "${srcdir}/grub-${_pkgver}/po" && ls *.po | cut -d. -f1 | xargs) > "${srcdir}/grub-${_pkgver}/po/LINGUAS" +#} + build() { ## set architecture dependent variables @@ -197,10 +185,8 @@ _HOST="${CARCH}" - cd "${srcdir}/grub-${pkgver}" - rsync -Lrtvz translationproject.org::tp/latest/grub/ "${srcdir}/grub-${pkgver}/po" || true - (cd "${srcdir}/grub-${pkgver}/po" && ls *.po | cut -d. -f1 | xargs) > "${srcdir}/grub-${pkgver}/po/LINGUAS" - echo + cd "${srcdir}/grub-${_pkgver}" + # _get_locale_files _build_grub2-common_and_bios _build_grub2-efi-i386 @@ -210,43 +196,18 @@ package_grub2-common() { pkgdesc="The GNU GRand Unified Bootloader version 2 - Files common for all platforms" - depends=('xz' 'freetype2' 'gettext' 'device-mapper' 'fuse') + depends=('xz' 'freetype2' 'gettext' 'device-mapper' 'fuse' 'sh') conflicts=('grub') backup=('boot/grub/grub.cfg' 'etc/default/grub' 'etc/grub.d/40_custom') - optdepends=('libisoburn: provides xorriso for generating grub2 rescue iso using grub-mkrescue') + optdepends=('libisoburn: provides xorriso for generating grub rescue iso using grub-mkrescue' + 'os-prober: to detect other OSes when generating grub.cfg in BIOS systems' + 'mtools: for grub-mkrescue FAT FS support') install="grub2.install" options=('strip' 'purge' 'docs' 'zipman' '!emptydirs') - cd "${srcdir}/grub2_bios-${pkgver}" + cd "${srcdir}/grub_bios-${_pkgver}" make DESTDIR="${pkgdir}/" install - echo - install -D -m0755 "${pkgdir}/usr/sbin/grub-install" "${pkgdir}/usr/sbin/grub_bios-install" - install -D -m0755 "${pkgdir}/usr/sbin/grub-install" "${pkgdir}/usr/sbin/grub_efi_x86_64-install" - install -D -m0755 "${pkgdir}/usr/sbin/grub-install" "${pkgdir}/usr/sbin/grub_efi_i386-install" - - sed "s|^\(target_cpu\)=.*|\1=i386|; \ - s|^\(platform\)=.*|\1=pc|; \ - s|/boot/grub|/boot/grub|g" \ - -i "${pkgdir}/usr/sbin/grub_bios-install" - - sed "s|^\(target_cpu\)=.*|\1=x86_64|; \ - s|^\(platform\)=.*|\1=efi|; \ - s|/boot/grub|/boot/efi/efi/grub|g" \ - -i "${pkgdir}/usr/sbin/grub_efi_x86_64-install" - - sed "s|^\(target_cpu\)=.*|\1=i386|; \ - s|^\(platform\)=.*|\1=efi|; \ - s|/boot/grub|/boot/efi/efi/grub|g" \ - -i "${pkgdir}/usr/sbin/grub_efi_i386-install" - - # install -D -m0755 "${pkgdir}/usr/sbin/grub-mkconfig" "${pkgdir}/usr/sbin/grub_bios-mkconfig" - # install -D -m0755 "${pkgdir}/usr/sbin/grub-mkconfig" "${pkgdir}/usr/sbin/grub_efi-mkconfig" - - # sed "s|/boot/grub|/boot/grub|g" -i "${pkgdir}/usr/sbin/grub_bios-mkconfig" - - # sed "s|/boot/grub|/boot/efi/efi/grub|g" -i "${pkgdir}/usr/sbin/grub_efi-mkconfig" - ## install extra /etc/grub.d/ files install -D -m0755 "${srcdir}/20_memtest86+" "${pkgdir}/etc/grub.d/20_memtest86+" @@ -259,49 +220,42 @@ # remove platform specific files rm -rf "${pkgdir}/usr/lib/grub/i386-pc/" - # move grub2 fonts from /usr/lib/grub to /usr/share/grub - incorrect path due to grub2_automake_1.11.2_pkglib_to_pkgdata.patch - install -d "${pkgdir}/usr/share/grub" - mv -f "${pkgdir}/usr/lib/grub"/{ascii,euro,unicode}.pf2 "${pkgdir}/usr/share/grub/" - mv -f "${pkgdir}/usr/lib/grub"/{ascii,widthspec}.h "${pkgdir}/usr/share/grub/" - } package_grub2-bios() { pkgdesc="The GNU GRand Unified Bootloader version 2 - Built for i386 PC BIOS" - depends=("grub2-common=${epoch}:${pkgver}" "sh") - optdepends=('os-prober: to detect other OSes when generating grub.cfg in BIOS systems') - replaces=('grub2') - provides=('grub2') + depends=("grub2-common=${epoch}:${pkgver}") options=('!strip' '!emptydirs') - cd "${srcdir}/grub2_bios-${pkgver}" + cd "${srcdir}/grub_bios-${_pkgver}" make DESTDIR="${pkgdir}/" install - echo ## remove non platform-specific files rm -rf "${pkgdir}"/{boot,etc,usr/{share,bin,sbin}} - rm -f "${pkgdir}/usr/lib/grub"/{grub-mkconfig_lib,update-grub_lib} - rm -f "${pkgdir}/usr/lib/grub"/{ascii,euro,unicode}.pf2 - rm -f "${pkgdir}/usr/lib/grub"/{ascii,widthspec}.h + ## remove gdb debugging related files + rm -f "${pkgdir}/usr/lib/grub/i386-pc"/*.module || true + rm -f "${pkgdir}/usr/lib/grub/i386-pc"/*.image || true + rm -f "${pkgdir}/usr/lib/grub/i386-pc"/{kernel.exec,gdb_grub,gmodule.pl} || true + } package_grub2-efi-i386() { pkgdesc="The GNU GRand Unified Bootloader version 2 - i386 UEFI version" - depends=("grub2-common=${epoch}:${pkgver}" 'dosfstools' 'efibootmgr' 'sh') - optdepends=('mtools: for manipulating FAT fs image files') + depends=("grub2-common=${epoch}:${pkgver}" 'dosfstools' 'efibootmgr') options=('!strip' '!emptydirs') - cd "${srcdir}/grub2_efi-${pkgver}" + cd "${srcdir}/grub_efi-${_pkgver}" make DESTDIR="${pkgdir}/" install - echo ## remove non platform-specific files rm -rf "${pkgdir}"/{boot,etc,usr/{share,bin,sbin}} - rm -f "${pkgdir}/usr/lib/grub"/{grub-mkconfig_lib,update-grub_lib} - rm -f "${pkgdir}/usr/lib/grub"/{ascii,euro,unicode}.pf2 - rm -f "${pkgdir}/usr/lib/grub"/{ascii,widthspec}.h + ## remove gdb debugging related files + rm -f "${pkgdir}/usr/lib/grub/i386-efi"/*.module || true + rm -f "${pkgdir}/usr/lib/grub/i386-efi"/*.image || true + rm -f "${pkgdir}/usr/lib/grub/i386-efi"/{kernel.exec,gdb_grub,gmodule.pl} || true + } Modified: archlinux_grub2_mkconfig_fixes.patch =================================================================== --- archlinux_grub2_mkconfig_fixes.patch 2012-03-17 03:19:37 UTC (rev 153645) +++ archlinux_grub2_mkconfig_fixes.patch 2012-03-17 08:36:22 UTC (rev 153646) @@ -1,17 +1,8 @@ diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in -index c408ccc..95424e9 100644 +index 859c2e8..c754dd7 100644 --- a/util/grub-mkconfig.in +++ b/util/grub-mkconfig.in -@@ -36,7 +36,7 @@ grub_mkconfig_dir=${sysconfdir}/grub.d - - self=`basename $0` - --grub_probe=${sbindir}/`echo grub-probe | sed "${transform}"` -+grub_probe="${sbindir}/`echo grub-probe | sed "${transform}"`" - grub_script_check="${bindir}/`echo grub-script-check | sed "${transform}"`" - - GRUB_PREFIX=`echo '/@bootdirname@/@grubdirname@' | sed "s,//*,/,g"` -@@ -241,6 +241,8 @@ export GRUB_DEFAULT \ +@@ -242,6 +242,8 @@ export GRUB_DEFAULT \ GRUB_THEME \ GRUB_GFXPAYLOAD_LINUX \ GRUB_DISABLE_OS_PROBER \ @@ -21,7 +12,7 @@ GRUB_SAVEDEFAULT \ GRUB_ENABLE_CRYPTODISK \ diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in -index 54012f8..d7e982b 100644 +index d9bcc15..a93dcb7 100644 --- a/util/grub.d/00_header.in +++ b/util/grub.d/00_header.in @@ -100,6 +100,14 @@ cat <<EOF @@ -40,10 +31,10 @@ 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 fe4f0e7..46bd092 100644 +index bc738f2..a6ab326 100644 --- a/util/grub.d/10_linux.in +++ b/util/grub.d/10_linux.in -@@ -32,8 +32,8 @@ CLASS="--class gnu-linux --class gnu --class os" +@@ -31,8 +31,8 @@ CLASS="--class gnu-linux --class gnu --class os" if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then OS=GNU/Linux else @@ -54,7 +45,7 @@ fi # loop-AES arranges things so that /dev/loop/X can be our root device, but -@@ -49,7 +49,7 @@ if [ "x${GRUB_DEVICE_UUID}" = "x" ] || [ "x${GRUB_DISABLE_LINUX_UUID}" = "xtrue" +@@ -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 @@ -63,7 +54,7 @@ fi if [ "x`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2>/dev/null || true`" = xbtrfs ]; then -@@ -66,7 +66,9 @@ linux_entry () +@@ -65,7 +65,9 @@ linux_entry () version="$2" recovery="$3" args="$4" @@ -74,7 +65,7 @@ title="$(gettext_quoted "%s, with Linux %s (recovery mode)")" else title="$(gettext_quoted "%s, with Linux %s")" -@@ -114,7 +116,9 @@ EOF +@@ -113,7 +115,9 @@ EOF fi printf '%s\n' "${prepare_boot_cache}" fi @@ -84,7 +75,7 @@ cat << EOF echo '$message' linux ${rel_dirname}/${basename} root=${linux_root_device_thisversion} ro ${args} -@@ -133,11 +137,11 @@ EOF +@@ -132,11 +136,11 @@ EOF case x`uname -m` in xi?86 | xx86_64) @@ -98,7 +89,7 @@ if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi done` ;; esac -@@ -152,16 +156,19 @@ while [ "x$list" != "x" ] ; do +@@ -151,16 +155,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"` @@ -120,7 +111,7 @@ if test -e "${dirname}/${i}" ; then initrd="$i" break -@@ -191,6 +198,16 @@ while [ "x$list" != "x" ] ; do +@@ -190,6 +197,16 @@ while [ "x$list" != "x" ] ; do linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" Added: archlinux_grub_mkconfig_fixes.patch =================================================================== --- archlinux_grub_mkconfig_fixes.patch (rev 0) +++ archlinux_grub_mkconfig_fixes.patch 2012-03-17 08:36:22 UTC (rev 153646) @@ -0,0 +1,100 @@ +diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in +index df3b733..65a7fff 100644 +--- a/util/grub-mkconfig.in ++++ b/util/grub-mkconfig.in +@@ -213,6 +213,8 @@ export GRUB_DEFAULT \ + GRUB_THEME \ + GRUB_GFXPAYLOAD_LINUX \ + GRUB_DISABLE_OS_PROBER \ ++ GRUB_COLOR_NORMAL \ ++ GRUB_COLOR_HIGHLIGHT \ + GRUB_INIT_TUNE \ + GRUB_SAVEDEFAULT \ + GRUB_ENABLE_CRYPTODISK \ +diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in +index 765bfdc..b148558 100644 +--- a/util/grub.d/00_header.in ++++ b/util/grub.d/00_header.in +@@ -115,6 +115,14 @@ cat <<EOF + + EOF + ++if [ x$GRUB_COLOR_NORMAL != x ] && [ x$GRUB_COLOR_HIGHLIGHT != x ] ; then ++ cat << EOF ++set menu_color_normal=$GRUB_COLOR_NORMAL ++set menu_color_highlight=$GRUB_COLOR_HIGHLIGHT ++ ++EOF ++fi ++ + serial=0; + 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 +--- 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 + + # 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 () + fi + printf '%s\n' "${prepare_boot_cache}" | sed "s/^/$submenu_indentation/" + fi ++ + 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_root_device_thisversion="${LINUX_ROOT_DEVICE}" + + initrd= ++ + for i in "initrd.img-${version}" "initrd-${version}.img" "initrd-${version}.gz" \ + "initrd-${version}" "initramfs-${version}.img" \ + "initrd.img-${alt_version}" "initrd-${alt_version}.img" \ + "initrd-${alt_version}" "initramfs-${alt_version}.img" \ + "initramfs-genkernel-${version}" \ +- "initramfs-genkernel-${alt_version}"; do ++ "initramfs-genkernel-${alt_version}" \ ++ "${basename/vmlinuz/initramfs}.img" "${basename/vmlinuz/kernel}.img"; do + if test -e "${dirname}/${i}" ; then + initrd="$i" + break Modified: grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch =================================================================== --- grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch 2012-03-17 03:19:37 UTC (rev 153645) +++ grub-mkconfig-Use_outside_GRUB_PREFIX_if_defined.patch 2012-03-17 08:36:22 UTC (rev 153646) @@ -1,9 +1,9 @@ diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in -index c408ccc..5be8f78 100644 +index 859c2e8..c4391dc 100644 --- a/util/grub-mkconfig.in +++ b/util/grub-mkconfig.in -@@ -39,7 +39,9 @@ self=`basename $0` - grub_probe=${sbindir}/`echo grub-probe | sed "${transform}"` +@@ -40,7 +40,9 @@ self=`basename $0` + grub_probe="${sbindir}/`echo grub-probe | sed "${transform}"`" grub_script_check="${bindir}/`echo grub-script-check | sed "${transform}"`" -GRUB_PREFIX=`echo '/@bootdirname@/@grubdirname@' | sed "s,//*,/,g"` @@ -11,5 +11,5 @@ + GRUB_PREFIX=`echo '/@bootdirname@/@grubdirname@' | sed "s,//*,/,g"` +fi - # Usage: usage - # Print the usage. + . "${datadir}/@PACKAGE@/grub-mkconfig_lib" + Modified: grub.cfg =================================================================== --- grub.cfg 2012-03-17 03:19:37 UTC (rev 153645) +++ grub.cfg 2012-03-17 08:36:22 UTC (rev 153646) @@ -28,25 +28,38 @@ } function load_video { - insmod vbe - insmod vga - insmod video_bochs - insmod video_cirrus + if [ x$feature_all_video_module = xy ]; then + insmod all_video + else + insmod efi_gop + insmod efi_uga + insmod ieee1275_fb + insmod vbe + insmod vga + insmod video_bochs + insmod video_cirrus + fi } -insmod part_msdos +if [ x$feature_default_font_path = xy ] ; then + font=unicode +else +insmod part_gpt insmod ext2 -set root='(hd0,msdos3)' -search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 -if loadfont /usr/share/grub/unicode.pf2 ; then +set root='hd0,gpt9' +if [ x$feature_platform_search_hint = xy ]; then + search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt9 --hint-efi=hd0,gpt9 --hint-baremetal=ahci0,gpt9 0cc6e472-7f98-42ff-b7f3-309b641377ad +else + search --no-floppy --fs-uuid --set=root 0cc6e472-7f98-42ff-b7f3-309b641377ad +fi + font="/usr/share/grub/unicode.pf2" +fi + +if loadfont $font ; then set gfxmode=auto load_video insmod gfxterm - insmod part_msdos - insmod ext2 - set root='(hd0,msdos3)' - search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 - set locale_dir=($root)/boot/grub/locale + set locale_dir=$prefix/locale set lang=en_US insmod gettext fi @@ -56,67 +69,46 @@ ### END /etc/grub.d/00_header ### ### BEGIN /etc/grub.d/10_linux ### -menuentry 'Arch Linux, with Linux vmlinuz26-lts' --class archlinux --class gnu-linux --class gnu --class os { +menuentry 'Arch Linux, with Linux linux' --class archlinux --class gnu-linux --class gnu --class os { load_video set gfxpayload=keep - insmod part_msdos + insmod gzio + insmod part_gpt insmod ext2 - set root='(hd0,msdos3)' - search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 - echo 'Loading Linux vmlinuz26-lts ...' - linux /boot/vmlinuz26-lts root=/dev/disk/by-uuid/fb70f55b-e58a-4ac6-af45-19d19cc24d60 ro quiet + set root='hd0,gpt3' + if [ x$feature_platform_search_hint = xy ]; then + search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 2ccd62fe-2204-44e8-bcfd-ce33996f9852 + else + search --no-floppy --fs-uuid --set=root 2ccd62fe-2204-44e8-bcfd-ce33996f9852 + fi + echo 'Loading Linux linux ...' + linux /vmlinuz-linux root=/dev/disk/by-uuid/0cc6e472-7f98-42ff-b7f3-309b641377ad ro quiet echo 'Loading initial ramdisk ...' - initrd /boot/kernel26-lts.img + initrd /initramfs-linux.img } -menuentry 'Arch Linux, with Linux vmlinuz26-lts Fallback' --class archlinux --class gnu-linux --class gnu --class os { +menuentry 'Arch Linux, with Linux linux Fallback' --class archlinux --class gnu-linux --class gnu --class os { load_video set gfxpayload=keep - insmod part_msdos + insmod gzio + insmod part_gpt insmod ext2 - set root='(hd0,msdos3)' - search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 - echo 'Loading Linux vmlinuz26-lts ...Loading Linux Fallback ...' - linux /boot/vmlinuz26-lts root=/dev/disk/by-uuid/fb70f55b-e58a-4ac6-af45-19d19cc24d60 ro quiet + set root='hd0,gpt3' + if [ x$feature_platform_search_hint = xy ]; then + search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3 2ccd62fe-2204-44e8-bcfd-ce33996f9852 + else + search --no-floppy --fs-uuid --set=root 2ccd62fe-2204-44e8-bcfd-ce33996f9852 + fi + echo 'Loading Linux linux ...' + linux /vmlinuz-linux root=/dev/disk/by-uuid/0cc6e472-7f98-42ff-b7f3-309b641377ad ro quiet echo 'Loading initial ramdisk ...' - initrd /boot/kernel26-lts-fallback.img + initrd /initramfs-linux-fallback.img } -menuentry 'Arch Linux, with Linux vmlinuz26' --class archlinux --class gnu-linux --class gnu --class os { - load_video - set gfxpayload=keep - insmod part_msdos - insmod ext2 - set root='(hd0,msdos3)' - search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 - echo 'Loading Linux vmlinuz26 ...' - linux /boot/vmlinuz26 root=/dev/disk/by-uuid/fb70f55b-e58a-4ac6-af45-19d19cc24d60 ro quiet - echo 'Loading initial ramdisk ...' - initrd /boot/kernel26.img -} -menuentry 'Arch Linux, with Linux vmlinuz26 Fallback' --class archlinux --class gnu-linux --class gnu --class os { - load_video - set gfxpayload=keep - insmod part_msdos - insmod ext2 - set root='(hd0,msdos3)' - search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 - echo 'Loading Linux vmlinuz26 ...Loading Linux Fallback ...' - linux /boot/vmlinuz26 root=/dev/disk/by-uuid/fb70f55b-e58a-4ac6-af45-19d19cc24d60 ro quiet - echo 'Loading initial ramdisk ...' - initrd /boot/kernel26-fallback.img -} ### END /etc/grub.d/10_linux ### ### BEGIN /etc/grub.d/20_linux_xen ### ### END /etc/grub.d/20_linux_xen ### ### BEGIN /etc/grub.d/20_memtest86+ ### -menuentry "Memory test (memtest86+)" --class memtest86 --class gnu --class tool { - insmod part_msdos - insmod ext2 - set root='(hd0,msdos3)' - search --no-floppy --fs-uuid --set=root fb70f55b-e58a-4ac6-af45-19d19cc24d60 - linux16 ($root)/boot/memtest86+/memtest.bin -} ### END /etc/grub.d/20_memtest86+ ### ### BEGIN /etc/grub.d/30_os-prober ### Modified: grub.default =================================================================== --- grub.default 2012-03-17 03:19:37 UTC (rev 153645) +++ grub.default 2012-03-17 08:36:22 UTC (rev 153646) @@ -1,7 +1,7 @@ GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="Arch Linux" -GRUB_CMDLINE_LINUX_DEFAULT="quiet" +GRUB_CMDLINE_LINUX_DEFAULT="quiet add_efi_memmap" GRUB_CMDLINE_LINUX="" # Preload both GPT and MBR modules so that they are not missed @@ -34,8 +34,8 @@ # Uncomment and set to the desired menu colors. Used by normal and wallpaper # modes only. Entries specified as foreground/background. -GRUB_COLOR_NORMAL="light-blue/black" -GRUB_COLOR_HIGHLIGHT="light-cyan/blue" +#GRUB_COLOR_NORMAL="light-blue/black" +#GRUB_COLOR_HIGHLIGHT="light-cyan/blue" # Uncomment one of them for the gfx desired, a image background or a gfxtheme #GRUB_BACKGROUND="/path/to/wallpaper" Added: grub_extras_lua_args_fix.patch =================================================================== --- grub_extras_lua_args_fix.patch (rev 0) +++ grub_extras_lua_args_fix.patch 2012-03-17 08:36:22 UTC (rev 153646) @@ -0,0 +1,13 @@ +diff --git a/grub-extras/lua/grub_lib.c b/grub-extras/lua/grub_lib.c +index 9014320..055d620 100644 +--- a/grub-extras/lua/grub_lib.c ++++ b/grub-extras/lua/grub_lib.c +@@ -466,7 +466,7 @@ grub_lua_add_menu (lua_State *state) + if (! p) + return push_result (state); + +- grub_normal_add_menu_entry (n, args, NULL, NULL, NULL, NULL, p, 0); ++ grub_normal_add_menu_entry (n, args, NULL, NULL, NULL, NULL, NULL, p, 0); + } + else + {