summaryrefslogtreecommitdiff
path: root/libre/grub2
diff options
context:
space:
mode:
Diffstat (limited to 'libre/grub2')
-rw-r--r--libre/grub2/PKGBUILD17
-rw-r--r--libre/grub2/parabola-mkconfig.patch51
2 files changed, 62 insertions, 6 deletions
diff --git a/libre/grub2/PKGBUILD b/libre/grub2/PKGBUILD
index 6d884dcea..7c1c0177a 100644
--- a/libre/grub2/PKGBUILD
+++ b/libre/grub2/PKGBUILD
@@ -11,11 +11,11 @@ _grub2_915_ver=6
pkgname=('grub2-common' 'grub2-bios' 'grub2-efi-i386')
pkgbase="grub2"
pkgver='1.99~rc1'
-pkgrel=4
+pkgrel=4.1
url="http://www.gnu.org/software/grub/"
arch=('i686' 'x86_64')
license=('GPL3')
-makedepends=('bdf-unifont' 'python2' 'xz' 'autogen' 'texinfo' 'help2man' 'gettext' 'device-mapper')
+makedepends=('bdf-unifont' 'python2' 'xz' 'autogen' 'texinfo' 'help2man' 'gettext' 'device-mapper' 'flex')
options=(strip purge docs zipman !emptydirs)
source=("ftp://alpha.gnu.org/gnu/grub/grub-${pkgver}.tar.gz"
@@ -27,7 +27,8 @@ source=("ftp://alpha.gnu.org/gnu/grub/grub-${pkgver}.tar.gz"
'grub.default'
'grub.cfg'
'20_memtest86+'
- '05_archtheme')
+ '05_archtheme'
+ 'parabola-mkconfig.patch')
noextract=("grub2_extras_lua_r${_grub2_lua_ver}.tar.xz"
"grub2_extras_gpxe_r${_grub2_gpxe_ver}.tar.xz"
@@ -55,6 +56,7 @@ build_grub2-common_and_bios() {
## Apply Archlinux specific fixes to enable grub2-mkconfig detect Arch kernels and initramfs
cd ${srcdir}/grub2_bios-${pkgver}
patch -Np1 -i ${srcdir}/archlinux_grub2_mkconfig_fixes.patch
+ patch -Np1 -i ${srcdir}/parabola-mkconfig.patch
# add the grub-extra sources
export GRUB_CONTRIB=${srcdir}/grub2_bios-${pkgver}/grub2-extras/
@@ -88,7 +90,8 @@ build_grub2-common_and_bios() {
--bindir=/bin --sbindir=/sbin \
--mandir=/usr/share/man --infodir=/usr/share/info \
--sysconfdir=/etc --enable-nls \
- --program-transform-name=s,grub,grub,
+ --program-transform-name=s,grub,grub, \
+ --disable-werror
CFLAGS="" make
}
@@ -118,7 +121,8 @@ build_grub2-efi() {
--prefix=/usr --bindir=/bin \
--sbindir=/sbin --mandir=/usr/share/man \
--infodir=/usr/share/info --sysconfdir=/etc \
- --enable-nls --program-transform-name=s,grub,grub,
+ --enable-nls --program-transform-name=s,grub,grub, \
+ --disable-werror
CFLAGS="" make
}
@@ -201,4 +205,5 @@ md5sums=('fd602ffaada5ba7939d0ea47091841a5'
'50123c37cf145a98aba4ffb0fc4efba1'
'7cb90ebb04b856ded6ae171c3658fba2'
'5a07e04c4ecb8ed145d54fec3043e0d5'
- 'e143ae2e453b7c3ced309667df30da55')
+ 'e143ae2e453b7c3ced309667df30da55'
+ 'bc369fcd7576beba804cad91f2b79f8f')
diff --git a/libre/grub2/parabola-mkconfig.patch b/libre/grub2/parabola-mkconfig.patch
new file mode 100644
index 000000000..d9aae8501
--- /dev/null
+++ b/libre/grub2/parabola-mkconfig.patch
@@ -0,0 +1,51 @@
+diff -ru grub-1.99~rc1-orig/util/grub.d/10_linux.in grub-1.99~rc1/util/grub.d/10_linux.in
+--- grub-1.99~rc1-orig/util/grub.d/10_linux.in 2011-08-08 17:03:17.177418423 +0200
++++ grub-1.99~rc1/util/grub.d/10_linux.in 2011-08-08 19:36:17.307138530 +0200
+@@ -57,12 +57,22 @@
+ version="$2"
+ recovery="$3"
+ args="$4"
+- if ${recovery} ; then
+- title="$(gettext_quoted "%s, with Linux %s (recovery mode)")"
++ if echo "$version" | fgrep . ; then
++ if ${recovery} ; then
++ title="$(gettext_quoted "%s, with Linux %s (recovery mode)")"
++ else
++ title="$(gettext_quoted "%s, with Linux %s")"
++ fi
++ printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
+ else
+- title="$(gettext_quoted "%s, with Linux %s")"
++ # Parabola GNU/Linux-libre doesn't put kernel version in its file name.
++ if ${recovery} ; then
++ title="$(gettext_quoted "%s (recovery mode)")"
++ else
++ title="%s"
++ fi
++ printf "menuentry '${title}' ${CLASS} {\n" "${os}"
+ fi
+- printf "menuentry '${title}' ${CLASS} {\n" "${os}" "${version}"
+ if ! ${recovery} ; then
+ save_default_entry | sed -e "s/^/\t/"
+ fi
+@@ -123,7 +133,7 @@
+ dirname=`dirname $linux`
+ rel_dirname=`make_system_path_relative_to_its_root $dirname`
+ version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
+- base_init=`echo $basename | sed -e "s,vmlinuz,kernel,g"`
++ base_init=`echo $basename | sed -e "s,vmlinuz,initramfs,g"`
+ alt_version="${base_init}-fallback"
+ linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
+
+diff -ru grub-1.99~rc1-orig/util/grub-mkconfig_lib.in grub-1.99~rc1/util/grub-mkconfig_lib.in
+--- grub-1.99~rc1-orig/util/grub-mkconfig_lib.in 2011-08-08 17:03:17.177418423 +0200
++++ grub-1.99~rc1/util/grub-mkconfig_lib.in 2011-08-08 17:04:48.064082390 +0200
+@@ -130,7 +130,7 @@
+
+ grub_file_is_not_garbage ()
+ {
+- if test -f "$1" ; then
++ if test -f "$1" -a ! -L "$1" ; then
+ case "$1" in
+ *.dpkg-*) return 1 ;; # debian dpkg
+ README*) return 1 ;; # documentation