diff options
-rw-r--r-- | .SRCINFO | 11 | ||||
-rw-r--r-- | PKGBUILD | 113 | ||||
-rw-r--r-- | grub.cfg | 139 | ||||
-rw-r--r-- | grub.install | 20 |
4 files changed, 68 insertions, 215 deletions
@@ -1,7 +1,7 @@ pkgbase = grub-linux-default pkgdesc = GNU GRand Unified Bootloader (2) with linux as the default kernel pkgver = 2.02 - pkgrel = 7 + pkgrel = 8 epoch = 2 url = https://www.gnu.org/software/grub/ install = grub.install @@ -43,14 +43,13 @@ pkgbase = grub-linux-default conflicts = grub-efi-x86_64 conflicts = grub-legacy options = !makeflags - backup = boot/grub/grub.cfg backup = etc/default/grub backup = etc/grub.d/40_custom source = https://ftp.gnu.org/gnu/grub/grub-2.02.tar.xz source = https://ftp.gnu.org/gnu/grub/grub-2.02.tar.xz.sig source = https://git.savannah.nongnu.org/cgit/grub-extras.git/snapshot/grub-extras-f2a079441939eee7251bf141986cdd78946e1d20.tar.gz - source = https://ftp.gnu.org/gnu/unifont/unifont-10.0.06/unifont-10.0.06.bdf.gz - source = https://ftp.gnu.org/gnu/unifont/unifont-10.0.06/unifont-10.0.06.bdf.gz.sig + source = https://ftp.gnu.org/gnu/unifont/unifont-11.0.02/unifont-11.0.02.bdf.gz + source = https://ftp.gnu.org/gnu/unifont/unifont-11.0.02/unifont-11.0.02.bdf.gz.sig source = 0000-default-kernel.patch source = 0003-10_linux-detect-archlinux-initramfs.patch source = 0004-add-GRUB_COLOR_variables.patch @@ -61,13 +60,12 @@ pkgbase = grub-linux-default source = 0009-xfs-Accept-filesystem-with-sparse-inodes.patch source = 0010-relocation.patch source = grub.default - source = grub.cfg validpgpkeys = E53D497F3FA42AD8C9B4D1E835A93B74E82E4209 validpgpkeys = 95D2E9AB8740D8046387FD151A09227B1F435A33 sha256sums = 810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f sha256sums = SKIP sha256sums = 2844601914cea6b1231eca0104853a93c4d67a5209933a0766f1475953300646 - sha256sums = 0d81571fc519573057b7641d26a31ead55cc0b02a931589fb346a3a534c3dcc1 + sha256sums = a7ea9ca4f6dcb59377d978194835ede669457069256184f86d46ab5b863c56e6 sha256sums = SKIP sha256sums = 55e383e6693f47c0951806e76397d4da5f5a77c3b77f8b84479bf67b0bfb0017 sha256sums = b41e4438319136b5e74e0abdfcb64ae115393e4e15207490272c425f54026dd3 @@ -79,7 +77,6 @@ pkgbase = grub-linux-default sha256sums = fcd5a626d4af33665d041ce42df813f1f198d8230ea186481b155a5b676f3b87 sha256sums = 51562fa1016c54567dbf42a86c0cfc902372ab579bbee17879a81aff09b76b99 sha256sums = 74e5dd2090a153c10a7b9599b73bb09e70fddc6a019dd41641b0f10b9d773d82 - sha256sums = c5e4f3836130c6885e9273c21f057263eba53f4b7c0e2f111f6e5f2e487a47ad pkgname = grub-linux-default @@ -12,7 +12,7 @@ _GRUB_EMU_BUILD="0" _GRUB_EXTRAS_COMMIT="f2a079441939eee7251bf141986cdd78946e1d20" -_UNIFONT_VER="10.0.06" +_UNIFONT_VER="11.0.02" [[ "${CARCH}" == "x86_64" ]] && _EFI_ARCH="x86_64" [[ "${CARCH}" == "i686" ]] && _EFI_ARCH="i386" @@ -22,15 +22,14 @@ _UNIFONT_VER="10.0.06" _basepkgname="grub" pkgname="${_basepkgname}-linux-default" -pkgdesc="GNU GRand Unified Bootloader (2) with linux as the default kernel" +pkgdesc='GNU GRand Unified Bootloader (2) with linux as the default kernel' pkgver=2.02 -pkgrel=7 +pkgrel=8 epoch=2 -url="https://www.gnu.org/software/grub/" +url='https://www.gnu.org/software/grub/' arch=('x86_64') license=('GPL3') -backup=('boot/grub/grub.cfg' - 'etc/default/grub' +backup=('etc/default/grub' 'etc/grub.d/40_custom') install="${_basepkgname}.install" options=('!makeflags') @@ -70,13 +69,12 @@ source=("https://ftp.gnu.org/gnu/${_basepkgname}/${_basepkgname}-${pkgver}.tar.x '0008-Fix-packed-not-aligned-error-on-GCC-8.patch' '0009-xfs-Accept-filesystem-with-sparse-inodes.patch' '0010-relocation.patch' - 'grub.default' - 'grub.cfg') + 'grub.default') sha256sums=('810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f' 'SKIP' '2844601914cea6b1231eca0104853a93c4d67a5209933a0766f1475953300646' - '0d81571fc519573057b7641d26a31ead55cc0b02a931589fb346a3a534c3dcc1' + 'a7ea9ca4f6dcb59377d978194835ede669457069256184f86d46ab5b863c56e6' 'SKIP' '55e383e6693f47c0951806e76397d4da5f5a77c3b77f8b84479bf67b0bfb0017' 'b41e4438319136b5e74e0abdfcb64ae115393e4e15207490272c425f54026dd3' @@ -87,8 +85,7 @@ sha256sums=('810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f' 'e84b8de569c7e6b73263758c35cf95c6516fde85d4ed451991427864f6a4e5a8' 'fcd5a626d4af33665d041ce42df813f1f198d8230ea186481b155a5b676f3b87' '51562fa1016c54567dbf42a86c0cfc902372ab579bbee17879a81aff09b76b99' - '74e5dd2090a153c10a7b9599b73bb09e70fddc6a019dd41641b0f10b9d773d82' - 'c5e4f3836130c6885e9273c21f057263eba53f4b7c0e2f111f6e5f2e487a47ad') + '74e5dd2090a153c10a7b9599b73bb09e70fddc6a019dd41641b0f10b9d773d82') _configure_options=( FREETYPE="pkg-config freetype2" @@ -116,84 +113,83 @@ _configure_options=( prepare() { cd "${srcdir}/grub-${pkgver}/" - msg "Patch to make GRUB use linux as the default kernel" + echo "Patch to make GRUB use linux as the default kernel" patch -Np1 -i "${srcdir}/0000-default-kernel.patch" - echo - msg "Patch to detect of Arch Linux initramfs images by grub-mkconfig" + echo "Patch to detect of Arch Linux initramfs images by grub-mkconfig..." patch -Np1 -i "${srcdir}/0003-10_linux-detect-archlinux-initramfs.patch" - msg "Patch to enable GRUB_COLOR_* variables in grub-mkconfig" + echo "Patch to enable GRUB_COLOR_* variables in grub-mkconfig..." ## Based on http://lists.gnu.org/archive/html/grub-devel/2012-02/msg00021.html patch -Np1 -i "${srcdir}/0004-add-GRUB_COLOR_variables.patch" - msg "Patch to allow GRUB to mount ext2/3/4 filesystems that have the encryption feature" + echo "Patch to allow GRUB to mount ext2/3/4 filesystems that have the encryption feature..." patch -Np1 -i "${srcdir}/0005-Allow_GRUB_to_mount_ext234_filesystems_that_have_the_encryption_feature.patch" - msg "Patch to change default tsc calibration method to pmtimer on EFI systems" + echo "Patch to change default tsc calibration method to pmtimer on EFI systems..." patch -Np1 -i "${srcdir}/0006-tsc-Change-default-tsc-calibration-method-to-pmtimer-on-EFI-systems.patch" - msg "Patch to Support multiple early initrd images" + echo "Patch to Support multiple early initrd images..." patch -Np1 -i "${srcdir}/0007-grub-mkconfig_10_linux_Support_multiple_early_initrd_images.patch" - msg "Patch to fix packed-not-aligned error on GCC 8" + echo "Patch to fix packed-not-aligned error on GCC 8..." patch -Np1 -i "${srcdir}/0008-Fix-packed-not-aligned-error-on-GCC-8.patch" - msg "Patch xfs: Accept filesystem with sparse inodes" + echo "Patch xfs: Accept filesystem with sparse inodes..." patch -Np1 -i "${srcdir}/0009-xfs-Accept-filesystem-with-sparse-inodes.patch" - msg "Patch x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32" + echo "Patch x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32..." patch -Np1 -i "${srcdir}/0010-relocation.patch" - msg "Fix DejaVuSans.ttf location so that grub-mkfont can create *.pf2 files for starfield theme" + echo "Fix DejaVuSans.ttf location so that grub-mkfont can create *.pf2 files for starfield theme..." sed 's|/usr/share/fonts/dejavu|/usr/share/fonts/dejavu /usr/share/fonts/TTF|g' -i "configure.ac" - msg "Fix mkinitcpio 'rw' FS#36275" + echo "Fix mkinitcpio 'rw' FS#36275..." sed 's| ro | rw |g' -i "util/grub.d/10_linux.in" - msg "Fix OS naming FS#33393" + echo "Fix OS naming FS#33393..." sed 's|GNU/Linux|Linux|' -i "util/grub.d/10_linux.in" - msg "Pull in latest language files" + echo "Pull in latest language files..." ./linguas.sh - msg "Remove not working langs which need LC_ALL=C.UTF-8" + echo "Remove not working langs which need LC_ALL=C.UTF-8..." sed -e 's#en@cyrillic en@greek##g' -i "po/LINGUAS" - msg "Avoid problem with unifont during compile of grub" + echo "Avoid problem with unifont during compile of grub..." # http://savannah.gnu.org/bugs/?40330 and https://bugs.archlinux.org/task/37847 cp "${srcdir}/unifont-${_UNIFONT_VER}.bdf" "unifont.bdf" - msg "Run autogen.sh" + echo "Run autogen.sh..." ./autogen.sh } _build_grub-common_and_bios() { - msg "Set ARCH dependent variables for bios build" + echo "Set ARCH dependent variables for bios build..." if [[ "${CARCH}" == 'x86_64' ]]; then _EFIEMU="--enable-efiemu" else _EFIEMU="--disable-efiemu" fi - msg "Copy the source for building the bios part" + echo "Copy the source for building the bios part..." cp -r "${srcdir}/grub-${pkgver}" "${srcdir}/grub-${pkgver}-bios" cd "${srcdir}/grub-${pkgver}-bios/" - msg "Add the grub-extra sources for bios build" + echo "Add the grub-extra sources for bios build..." install -d "${srcdir}/grub-${pkgver}-bios/grub-extras" cp -r "${srcdir}/grub-extras-${_GRUB_EXTRAS_COMMIT}/915resolution" \ "${srcdir}/grub-${pkgver}-bios/grub-extras/915resolution" export GRUB_CONTRIB="${srcdir}/grub-${pkgver}-bios/grub-extras/" - msg "Unset all compiler FLAGS for bios build" + echo "Unset all compiler FLAGS for bios build..." unset CFLAGS unset CPPFLAGS unset CXXFLAGS unset LDFLAGS unset MAKEFLAGS - msg "Run ./configure for bios build" + echo "Run ./configure for bios build..." ./configure \ --with-platform="pc" \ --target="i386" \ @@ -201,23 +197,23 @@ _build_grub-common_and_bios() { --enable-boot-time \ "${_configure_options[@]}" - msg "Run make for bios build" + echo "Run make for bios build..." make } _build_grub-efi() { - msg "Copy the source for building the ${_EFI_ARCH} efi part" + echo "Copy the source for building the ${_EFI_ARCH} efi part..." cp -r "${srcdir}/grub-${pkgver}" "${srcdir}/grub-${pkgver}-efi-${_EFI_ARCH}" cd "${srcdir}/grub-${pkgver}-efi-${_EFI_ARCH}/" - msg "Unset all compiler FLAGS for ${_EFI_ARCH} efi build" + echo "Unset all compiler FLAGS for ${_EFI_ARCH} efi build..." unset CFLAGS unset CPPFLAGS unset CXXFLAGS unset LDFLAGS unset MAKEFLAGS - msg "Run ./configure for ${_EFI_ARCH} efi build" + echo "Run ./configure for ${_EFI_ARCH} efi build..." ./configure \ --with-platform="efi" \ --target="${_EFI_ARCH}" \ @@ -225,23 +221,23 @@ _build_grub-efi() { --enable-boot-time \ "${_configure_options[@]}" - msg "Run make for ${_EFI_ARCH} efi build" + echo "Run make for ${_EFI_ARCH} efi build..." make } _build_grub-emu() { - msg "Copy the source for building the emu part" + echo "Copy the source for building the emu part..." cp -r "${srcdir}/grub-${pkgver}/" "${srcdir}/grub-${pkgver}-emu/" cd "${srcdir}/grub-${pkgver}-emu/" - msg "Unset all compiler FLAGS for emu build" + echo "Unset all compiler FLAGS for emu build..." unset CFLAGS unset CPPFLAGS unset CXXFLAGS unset LDFLAGS unset MAKEFLAGS - msg "Run ./configure for emu build" + echo "Run ./configure for emu build..." ./configure \ --with-platform="emu" \ --target="${_EMU_ARCH}" \ @@ -250,26 +246,26 @@ _build_grub-emu() { --disable-grub-emu-pci \ "${_configure_options[@]}" - msg "Run make for emu build" + echo "Run make for emu build..." make } build() { cd "${srcdir}/grub-${pkgver}/" - msg "Build grub bios stuff" + echo "Build grub bios stuff..." _build_grub-common_and_bios - msg "Build grub ${_EFI_ARCH} efi stuff" + echo "Build grub ${_EFI_ARCH} efi stuff..." _build_grub-efi if [[ "${CARCH}" == "x86_64" ]] && [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then - msg "Build grub i386 efi stuff" + echo "Build grub i386 efi stuff..." _EFI_ARCH="i386" _build_grub-efi fi if [[ "${_GRUB_EMU_BUILD}" == "1" ]]; then - msg "Build grub emu stuff" + echo "Build grub emu stuff..." _build_grub-emu fi } @@ -277,28 +273,25 @@ build() { _package_grub-common_and_bios() { cd "${srcdir}/grub-${pkgver}-bios/" - msg "Run make install for bios build" + echo "Run make install for bios build..." make DESTDIR="${pkgdir}/" bashcompletiondir="/usr/share/bash-completion/completions" install - msg "Remove gdb debugging related files for bios build" + echo "Remove gdb debugging related files for bios build..." 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 - msg "Install /etc/default/grub (used by grub-mkconfig)" + echo "Install /etc/default/grub (used by grub-mkconfig)..." install -D -m0644 "${srcdir}/grub.default" "${pkgdir}/etc/default/grub" - - msg "Install grub.cfg for backup array" - install -D -m0644 "${srcdir}/grub.cfg" "${pkgdir}/boot/grub/grub.cfg" } _package_grub-efi() { cd "${srcdir}/grub-${pkgver}-efi-${_EFI_ARCH}/" - msg "Run make install for ${_EFI_ARCH} efi build" + echo "Run make install for ${_EFI_ARCH} efi build..." make DESTDIR="${pkgdir}/" bashcompletiondir="/usr/share/bash-completion/completions" install - msg "Remove gdb debugging related files for ${_EFI_ARCH} efi build" + echo "Remove gdb debugging related files for ${_EFI_ARCH} efi build..." rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/*.module || true rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/*.image || true rm -f "${pkgdir}/usr/lib/grub/${_EFI_ARCH}-efi"/{kernel.exec,gdb_grub,gmodule.pl} || true @@ -307,10 +300,10 @@ _package_grub-efi() { _package_grub-emu() { cd "${srcdir}/grub-${pkgver}-emu/" - msg "Run make install for emu build" + echo "Run make install for emu build..." make DESTDIR="${pkgdir}/" bashcompletiondir="/usr/share/bash-completion/completions" install - msg "Remove gdb debugging related files for emu build" + echo "Remove gdb debugging related files for emu build..." rm -f "${pkgdir}/usr/lib/grub/${_EMU_ARCH}-emu"/*.module || true rm -f "${pkgdir}/usr/lib/grub/${_EMU_ARCH}-emu"/*.image || true rm -f "${pkgdir}/usr/lib/grub/${_EMU_ARCH}-emu"/{kernel.exec,gdb_grub,gmodule.pl} || true @@ -319,19 +312,19 @@ _package_grub-emu() { package() { cd "${srcdir}/grub-${pkgver}/" - msg "Package grub ${_EFI_ARCH} efi stuff" + echo "Package grub ${_EFI_ARCH} efi stuff..." _package_grub-efi if [[ "${CARCH}" == "x86_64" ]] && [[ "${_IA32_EFI_IN_ARCH_X64}" == "1" ]]; then - msg "Package grub i386 efi stuff" + echo "Package grub i386 efi stuff..." _EFI_ARCH="i386" _package_grub-efi fi if [[ "${_GRUB_EMU_BUILD}" == "1" ]]; then - msg "Package grub emu stuff" + echo "Package grub emu stuff..." _package_grub-emu fi - msg "Package grub bios stuff" + echo "Package grub bios stuff..." _package_grub-common_and_bios } diff --git a/grub.cfg b/grub.cfg deleted file mode 100644 index 9d9144f870d1..000000000000 --- a/grub.cfg +++ /dev/null @@ -1,139 +0,0 @@ -# -# DO NOT EDIT THIS FILE -# -# It is automatically generated by grub-mkconfig using templates -# from /etc/grub.d and settings from /etc/default/grub -# - -### BEGIN /etc/grub.d/00_header ### -insmod part_gpt -insmod part_msdos -if [ -s $prefix/grubenv ]; then - load_env -fi -set default="0" - -if [ x"${feature_menuentry_id}" = xy ]; then - menuentry_id_option="--id" -else - menuentry_id_option="" -fi - -export menuentry_id_option - -if [ "${prev_saved_entry}" ]; then - set saved_entry="${prev_saved_entry}" - save_env saved_entry - set prev_saved_entry= - save_env prev_saved_entry - set boot_once=true -fi - -function savedefault { - if [ -z "${boot_once}" ]; then - saved_entry="${chosen}" - save_env saved_entry - fi -} - -function load_video { - 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 -} - -if [ x$feature_default_font_path = xy ] ; then - font=unicode -else -insmod part_msdos -insmod ext2 -set root='hd0,msdos5' -if [ x$feature_platform_search_hint = xy ]; then - search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 ad4103fa-d940-47ca-8506-301d8071d467 -else - search --no-floppy --fs-uuid --set=root ad4103fa-d940-47ca-8506-301d8071d467 -fi - font="/usr/share/grub/unicode.pf2" -fi - -if loadfont $font ; then - set gfxmode=auto - load_video - insmod gfxterm - set locale_dir=$prefix/locale - set lang=en_US - insmod gettext -fi -terminal_input console -terminal_output gfxterm -set timeout=5 -### END /etc/grub.d/00_header ### - -### BEGIN /etc/grub.d/10_linux ### -menuentry 'Arch Linux, with Linux core repo kernel' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-true-ad4103fa-d940-47ca-8506-301d8071d467' { - load_video - set gfxpayload=keep - insmod gzio - insmod part_msdos - insmod ext2 - set root='hd0,msdos5' - if [ x$feature_platform_search_hint = xy ]; then - search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 ad4103fa-d940-47ca-8506-301d8071d467 - else - search --no-floppy --fs-uuid --set=root ad4103fa-d940-47ca-8506-301d8071d467 - fi - echo 'Loading Linux core repo kernel ...' - linux /boot/vmlinuz-linux root=UUID=ad4103fa-d940-47ca-8506-301d8071d467 rw quiet - echo 'Loading initial ramdisk ...' - initrd /boot/initramfs-linux.img -} -menuentry 'Arch Linux, with Linux core repo kernel (Fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-fallback-ad4103fa-d940-47ca-8506-301d8071d467' { - load_video - set gfxpayload=keep - insmod gzio - insmod part_msdos - insmod ext2 - set root='hd0,msdos5' - if [ x$feature_platform_search_hint = xy ]; then - search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 ad4103fa-d940-47ca-8506-301d8071d467 - else - search --no-floppy --fs-uuid --set=root ad4103fa-d940-47ca-8506-301d8071d467 - fi - echo 'Loading Linux core repo kernel ...' - linux /boot/vmlinuz-linux root=UUID=ad4103fa-d940-47ca-8506-301d8071d467 rw quiet - echo 'Loading initial ramdisk ...' - initrd /boot/initramfs-linux-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+ ### -### END /etc/grub.d/20_memtest86+ ### - -### BEGIN /etc/grub.d/30_os-prober ### -### END /etc/grub.d/30_os-prober ### - -### BEGIN /etc/grub.d/40_custom ### -# This file provides an easy way to add custom menu entries. Simply type the -# menu entries you want to add after this comment. Be careful not to change -# the 'exec tail' line above. -### END /etc/grub.d/40_custom ### - -### BEGIN /etc/grub.d/41_custom ### -if [ -f ${config_directory}/custom.cfg ]; then - source ${config_directory}/custom.cfg -elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then - source $prefix/custom.cfg; -fi -### END /etc/grub.d/41_custom ### diff --git a/grub.install b/grub.install index cf2e4b59535f..c13ef99c77c5 100644 --- a/grub.install +++ b/grub.install @@ -1,15 +1,17 @@ -post_install() { - if [ -f /boot/grub/grub.cfg.pacsave ]; then - echo "Copying /boot/grub/grub.cfg.pacsave to /boot/grub/grub.cfg" - install -D -m0644 /boot/grub/grub.cfg.pacsave /boot/grub/grub.cfg +#!/bin/sh + +post_upgrade() { + # We used to package /boot/grub/grub.cfg, but there is no reason to. + # Remove the file from package, but move real file back in place. + if [ ! -f /boot/grub/grub.cfg -a -f /boot/grub/grub.cfg.pacsave ]; then + mv /boot/grub/grub.cfg.pacsave /boot/grub/grub.cfg fi +} +post_install() { cat << 'EOM' -Generating grub.cfg.example config file... -This may fail on some machines running a custom kernel. +Generate your bootloader configuration with: + grub-mkconfig -o /boot/grub/grub.cfg EOM - - grub-mkconfig -o /boot/grub/grub.cfg.example 2> /dev/null - echo "done." } |