%undefine _hardened_build %global tarversion 2.02 %undefine _missing_build_ids_terminate_build %global _configure_gnuconfig_hack 0 Name: grub2 Epoch: 1 Version: 2.02 Release: 9%{?dist} Summary: Bootloader with support for Linux, Multiboot and more Group: System Environment/Base License: GPLv3+ URL: http://www.gnu.org/software/grub/ Obsoletes: grub < 1:0.98 Source0: ftp://alpha.gnu.org/gnu/grub/grub-%{tarversion}.tar.xz #Source0: ftp://ftp.gnu.org/gnu/grub/grub-%%{tarversion}.tar.xz Source1: grub.macros Source2: grub.patches Source4: http://unifoundry.com/unifont-5.1.20080820.pcf.gz Source5: theme.tar.bz2 Source6: gitignore Source8: strtoull_test.c %include %{SOURCE1} # generate with do-rebase %include %{SOURCE2} # And these are: # git checkout debuginfo # git format-patch fedora-23.. Patch10001: 10001-Put-the-correct-.file-directives-in-our-.S-files.patch Patch10002: 10002-Make-it-possible-to-enabled-build-id-sha1.patch #Patch10003: 10003-Don-t-tell-the-compiler-to-do-annoying-things-with-.patch Patch10004: 10004-Add-grub_qdprintf-grub_dprintf-without-the-file-lin.patch Patch10005: 10005-Make-a-gdb-dprintf-that-tells-us-load-addresses.patch #Patch10006: 10006-Try-it-in-gentpl-again.patch BuildRequires: flex bison binutils python BuildRequires: ncurses-devel xz-devel bzip2-devel BuildRequires: freetype-devel libusb-devel BuildRequires: rpm-devel BuildRequires: rpm-devel rpm-libs BuildRequires: autoconf automake autogen device-mapper-devel BuildRequires: freetype-devel gettext-devel git BuildRequires: texinfo BuildRequires: dejavu-sans-fonts BuildRequires: help2man %ifarch %{efi_arch} BuildRequires: pesign >= 0.99-8 %endif %if %{?_with_ccache: 1}%{?!_with_ccache: 0} BuildRequires: ccache %endif ExcludeArch: s390 s390x %{arm} %{?ix86} Obsoletes: %{name} <= %{evr} %if 0%{with_legacy_arch} Requires: %{name}-%{legacy_package_arch} = %{evr} %else Requires: %{name}-%{package_arch} = %{evr} %endif %global desc \ The GRand Unified Bootloader (GRUB) is a highly configurable and \ customizable bootloader with modular architecture. It supports a rich \ variety of kernel formats, file systems, computer architectures and \ hardware devices.\ %{nil} %description %{desc} # temporary %ifarch x86_64 aarch64 %package efi Summary: Bootloader with support for Linux, Multiboot, and more Group: System Environment/Base Requires: %{name}-tools-minimal = %{evr} Requires: %{name}-tools-extra = %{evr} Requires: %{name}-tools = %{evr} %description efi %{desc} This subpackage provides support for %{_arch} EFI systems %endif %package common Summary: grub2 common layout Group: System Environment/Base BuildArch: noarch %description common This package provides some directories which are required by various grub2 subpackages. %package tools Summary: Support tools for GRUB. Group: System Environment/Base Obsoletes: %{name}-tools < %{evr} Requires: %{name}-common = %{epoch}:%{version}-%{release} Requires: gettext os-prober which file Requires(pre): dracut Requires(post): dracut %description tools %{desc} This subpackage provides tools for support of all platforms. %ifarch x86_64 %package tools-efi Summary: Support tools for GRUB. Group: System Environment/Base Requires: gettext os-prober which file Requires: %{name}-common = %{epoch}:%{version}-%{release} Obsoletes: %{name}-tools < %{evr} %description tools-efi %{desc} This subpackage provides tools for support of EFI platforms. %endif %package tools-minimal Summary: Support tools for GRUB. Group: System Environment/Base Requires: gettext Requires: %{name}-common = %{epoch}:%{version}-%{release} Obsoletes: %{name}-tools < %{evr} %description tools-minimal %{desc} This subpackage provides tools for support of all platforms. %package tools-extra Summary: Support tools for GRUB. Group: System Environment/Base Requires: gettext os-prober which file Requires: %{name}-tools-minimal = %{epoch}:%{version}-%{release} Requires: %{name}-common = %{epoch}:%{version}-%{release} Obsoletes: %{name}-tools < %{evr} %description tools-extra %{desc} This subpackage provides tools for support of all platforms. %if 0%{with_efi_arch} %{expand:%define_efi_variant %%{package_arch} -p} %endif %if 0%{with_alt_efi_arch} %{expand:%define_efi_variant %%{alt_package_arch}} %endif %if 0%{with_legacy_arch} %{expand:%define_legacy_variant %%{legacy_package_arch}} %endif %prep # %%setup -T -c -n grub-%%{tarversion} %do_common_setup %if 0%{with_efi_arch} %{expand:%do_setup %%{grubefiarch}} %endif %if 0%{with_alt_efi_arch} %{expand:%do_setup %%{grubaltefiarch}} %endif %if 0%{with_legacy_arch} %{expand: %do_setup %%{grublegacyarch}} %endif %build %if 0%{with_efi_arch} %{expand:%do_primary_efi_build %%{grubefiarch} %%{grubefiname} %%{grubeficdname} %%{_target_platform} %%{efi_cflags}} %endif %if 0%{with_alt_efi_arch} %{expand:%do_alt_efi_build %%{grubaltefiarch} %%{grubaltefiname} %%{grubalteficdname} %%{_alt_target_platform} %%{alt_efi_cflags}} %endif %if 0%{with_legacy_arch} %{expand:%do_legacy_build %%{grublegacyarch}} %endif %do_common_build %install set -e rm -fr $RPM_BUILD_ROOT %do_common_install %if 0%{with_efi_arch} %{expand:%do_efi_install %%{grubefiarch} %%{grubefiname} %%{grubeficdname}} %endif %if 0%{with_alt_efi_arch} %{expand:%do_alt_efi_install %%{grubaltefiarch} %%{grubaltefiname} %%{grubalteficdname}} %endif %if 0%{with_legacy_arch} %{expand:%do_legacy_install %%{grublegacyarch} %%{alt_grub_target_name}} %endif ${RPM_BUILD_ROOT}/%{_bindir}/%{name}-editenv ${RPM_BUILD_ROOT}/boot/efi/EFI/%{efidir}/grubenv create rm -f $RPM_BUILD_ROOT%{_infodir}/dir %ifnarch x86_64 rm -vf ${RPM_BUILD_ROOT}/%{_bindir}/%{name}-render-label rm -vf ${RPM_BUILD_ROOT}/%{_sbindir}/%{name}-bios-setup rm -vf ${RPM_BUILD_ROOT}/%{_sbindir}/%{name}-macbless %endif %find_lang grub # Make selinux happy with exec stack binaries. mkdir ${RPM_BUILD_ROOT}%{_sysconfdir}/prelink.conf.d/ cat << EOF > ${RPM_BUILD_ROOT}%{_sysconfdir}/prelink.conf.d/grub2.conf # these have execstack, and break under selinux -b /usr/bin/grub2-script-check -b /usr/bin/grub2-mkrelpath -b /usr/bin/grub2-fstest -b /usr/sbin/grub2-bios-setup -b /usr/sbin/grub2-probe -b /usr/sbin/grub2-sparc64-setup EOF # Don't run debuginfo on all the grub modules and whatnot; it just # rejects them, complains, and slows down extraction. %global finddebugroot "%{_builddir}/%{?buildsubdir}/debug" %global dip RPM_BUILD_ROOT=%{finddebugroot} %{__debug_install_post} %define __debug_install_post ( \ mkdir -p %{finddebugroot}/usr \ mv ${RPM_BUILD_ROOT}/usr/bin %{finddebugroot}/usr/bin \ mv ${RPM_BUILD_ROOT}/usr/sbin %{finddebugroot}/usr/sbin \ %{dip} \ install -m 0755 -d %{buildroot}/usr/lib/ %{buildroot}/usr/src/ \ cp -al %{finddebugroot}/usr/lib/debug/ \\\ %{buildroot}/usr/lib/debug/ \ cp -al %{finddebugroot}/usr/src/debug/ \\\ %{buildroot}/usr/src/debug/ ) \ mv %{finddebugroot}/usr/bin %{buildroot}/usr/bin \ mv %{finddebugroot}/usr/sbin %{buildroot}/usr/sbin \ %{nil} %undefine buildsubdir %clean rm -rf $RPM_BUILD_ROOT %pre tools if [ -f /boot/grub2/user.cfg ]; then if grep -q '^GRUB_PASSWORD=' /boot/grub2/user.cfg ; then sed -i 's/^GRUB_PASSWORD=/GRUB2_PASSWORD=/' /boot/grub2/user.cfg fi elif [ -f /boot/efi/EFI/%{efidir}/user.cfg ]; then if grep -q '^GRUB_PASSWORD=' /boot/efi/EFI/%{efidir}/user.cfg ; then sed -i 's/^GRUB_PASSWORD=/GRUB2_PASSWORD=/' \ /boot/efi/EFI/%{efidir}/user.cfg fi elif [ -f /etc/grub.d/01_users ] && \ grep -q '^password_pbkdf2 root' /etc/grub.d/01_users ; then if [ -f /boot/efi/EFI/%{efidir}/grub.cfg ]; then # on EFI we don't get permissions on the file, but # the directory is protected. grep '^password_pbkdf2 root' /etc/grub.d/01_users | \ sed 's/^password_pbkdf2 root \(.*\)$/GRUB2_PASSWORD=\1/' \ > /boot/efi/EFI/%{efidir}/user.cfg fi if [ -f /boot/grub2/grub.cfg ]; then install -m 0600 /dev/null /boot/grub2/user.cfg chmod 0600 /boot/grub2/user.cfg grep '^password_pbkdf2 root' /etc/grub.d/01_users | \ sed 's/^password_pbkdf2 root \(.*\)$/GRUB2_PASSWORD=\1/' \ > /boot/grub2/user.cfg fi fi %post tools if [ "$1" = 1 ]; then /sbin/install-info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz || : /sbin/install-info --info-dir=%{_infodir} %{_infodir}/%{name}-dev.info.gz || : fi %triggerun -- grub2 < 1:1.99-4 # grub2 < 1.99-4 removed a number of essential files in postun. To fix upgrades # from the affected grub2 packages, we first back up the files in triggerun and # later restore them in triggerpostun. # https://bugzilla.redhat.com/show_bug.cgi?id=735259 # Back up the files before uninstalling old grub2 mkdir -p /boot/grub2.tmp && mv -f /boot/grub2/*.mod \ /boot/grub2/*.img \ /boot/grub2/*.lst \ /boot/grub2/device.map \ /boot/grub2.tmp/ || : %triggerpostun -- grub2 < 1:1.99-4 # ... and restore the files. test ! -f /boot/grub2/device.map && test -d /boot/grub2.tmp && mv -f /boot/grub2.tmp/*.mod \ /boot/grub2.tmp/*.img \ /boot/grub2.tmp/*.lst \ /boot/grub2.tmp/device.map \ /boot/grub2/ && rm -r /boot/grub2.tmp/ || : %preun tools if [ "$1" = 0 ]; then /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz || : /sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/%{name}-dev.info.gz || : fi %files # temporary %ifarch x86_64 aarch64 %files efi %defattr(-,root,root,-) %config(noreplace) %{_sysconfdir}/%{name}-efi.cfg %dir %attr(0755,root,root)/boot/efi/EFI/%{efidir} %dir %attr(0755,root,root)/boot/efi/EFI/%{efidir}/fonts %ghost %config(noreplace) /boot/efi/EFI/%{efidir}/grub.cfg /boot/grub2/grubenv %ghost %config(noreplace) %attr(0700,root,root)/boot/efi/EFI/%{efidir}/grubenv /boot/efi/EFI/%{efidir}/fonts/unicode.pf2 /boot/efi/EFI/%{efidir}/gcd%{efiarch}.efi /boot/efi/EFI/%{efidir}/grub%{efiarch}.efi /boot/grub2/grubenv %license COPYING %endif %files common -f grub.lang %dir %{_libdir}/grub/ %dir %{_datarootdir}/grub/ %dir %{_datarootdir}/grub/themes/ %exclude %{_datarootdir}/grub/themes/* %attr(0700,root,root) %dir %{_sysconfdir}/grub.d %dir %{_datarootdir}/grub %exclude %{_datarootdir}/grub/* %dir /boot/%{name} %dir /boot/%{name}/themes/ %dir /boot/%{name}/themes/system %exclude /boot/%{name}/themes/system/* %attr(0700,root,root) %dir /boot/grub2 %exclude /boot/grub2/* %dir %attr(0755,root,root) /boot/efi/EFI/%{efidir} %exclude /boot/efi/EFI/%{efidir}/* %license COPYING %ghost %config(noreplace) /boot/grub2/grubenv %doc INSTALL %doc NEWS %doc README %doc THANKS %doc TODO %doc docs/grub.html %doc docs/grub-dev.html %doc docs/font_char_metrics.png %files tools-minimal %defattr(-,root,root,-) %{_sysconfdir}/prelink.conf.d/grub2.conf %{_sbindir}/%{name}-get-kernel-settings %{_sbindir}/%{name}-set-default %{_sbindir}/%{name}-setpassword %{_bindir}/%{name}-editenv %{_bindir}/%{name}-mkpasswd-pbkdf2 %{_datadir}/man/man3/%{name}-get-kernel-settings* %{_datadir}/man/man8/%{name}-set-default* %{_datadir}/man/man8/%{name}-setpassword* %{_datadir}/man/man1/%{name}-editenv* %{_datadir}/man/man1/%{name}-mkpasswd-* %ifarch x86_64 %files tools-efi %defattr(-,root,root,-) %{_sbindir}/%{name}-macbless %{_bindir}/%{name}-render-label %{_datadir}/man/man8/%{name}-macbless* %{_datadir}/man/man1/%{name}-render-label* %endif %files tools %defattr(-,root,root,-) %attr(0644,root,root) %ghost %config(noreplace) %{_sysconfdir}/default/grub %config %{_sysconfdir}/grub.d/??_* %{_sysconfdir}/grub.d/README %{_infodir}/%{name}* %{_datarootdir}/grub/* %{_sbindir}/%{name}-install %exclude %{_datarootdir}/grub/themes %exclude %{_datarootdir}/grub/*.h %{_datarootdir}/bash-completion/completions/grub %{_sbindir}/%{name}-mkconfig %{_sbindir}/%{name}-probe %{_sbindir}/%{name}-rpm-sort %{_sbindir}/%{name}-reboot %{_bindir}/%{name}-file %{_bindir}/%{name}-menulst2cfg %{_bindir}/%{name}-mkrelpath %{_bindir}/%{name}-script-check %{_datadir}/man/man?/* # exclude man pages from tools-extra %exclude %{_datadir}/man/man8/%{name}-sparc64-setup* %exclude %{_datadir}/man/man8/%{name}-install* %exclude %{_datadir}/man/man1/%{name}-fstest* %exclude %{_datadir}/man/man1/%{name}-glue-efi* %exclude %{_datadir}/man/man1/%{name}-kbdcomp* %exclude %{_datadir}/man/man1/%{name}-mkfont* %exclude %{_datadir}/man/man1/%{name}-mkimage* %exclude %{_datadir}/man/man1/%{name}-mklayout* %exclude %{_datadir}/man/man1/%{name}-mknetdir* %exclude %{_datadir}/man/man1/%{name}-mkrescue* %exclude %{_datadir}/man/man1/%{name}-mkstandalone* %exclude %{_datadir}/man/man1/%{name}-syslinux2cfg* # exclude man pages from tools-minimal %exclude %{_datadir}/man/man3/%{name}-get-kernel-settings* %exclude %{_datadir}/man/man8/%{name}-set-default* %exclude %{_datadir}/man/man8/%{name}-setpassword* %exclude %{_datadir}/man/man1/%{name}-editenv* %exclude %{_datadir}/man/man1/%{name}-mkpasswd-* %exclude %{_datadir}/man/man8/%{name}-macbless* %exclude %{_datadir}/man/man1/%{name}-render-label* %if %{with_legacy_arch} %{_sbindir}/%{name}-install %ifarch x86_64 %{_sbindir}/%{name}-bios-setup %else %exclude %{_sbindir}/%{name}-bios-setup %exclude %{_datadir}/man/man8/%{name}-bios-setup* %endif %ifarch %{sparc} %{_sbindir}/%{name}-sparc64-setup %else %exclude %{_sbindir}/%{name}-sparc64-setup %exclude %{_datadir}/man/man8/%{name}-sparc64-setup* %endif %ifarch %{sparc} ppc ppc64 ppc64le %{_sbindir}/%{name}-ofpathname %else %exclude %{_sbindir}/%{name}-ofpathname %exclude %{_datadir}/man/man8/%{name}-ofpathname* %endif %endif %files tools-extra %{_sbindir}/%{name}-sparc64-setup %{_sbindir}/%{name}-ofpathname %{_bindir}/%{name}-fstest %{_bindir}/%{name}-glue-efi %{_bindir}/%{name}-kbdcomp %{_bindir}/%{name}-mkfont %{_bindir}/%{name}-mkimage %{_bindir}/%{name}-mklayout %{_bindir}/%{name}-mknetdir %ifnarch %{sparc} %{_bindir}/%{name}-mkrescue %endif %{_bindir}/%{name}-mkstandalone %{_bindir}/%{name}-syslinux2cfg %{_sysconfdir}/sysconfig/grub %{_datadir}/man/man8/%{name}-sparc64-setup* %{_datadir}/man/man8/%{name}-install* %{_datadir}/man/man1/%{name}-fstest* %{_datadir}/man/man1/%{name}-glue-efi* %{_datadir}/man/man1/%{name}-kbdcomp* %{_datadir}/man/man1/%{name}-mkfont* %{_datadir}/man/man1/%{name}-mkimage* %{_datadir}/man/man1/%{name}-mklayout* %{_datadir}/man/man1/%{name}-mknetdir* %{_datadir}/man/man1/%{name}-mkrescue* %{_datadir}/man/man1/%{name}-mkstandalone* %{_datadir}/man/man8/%{name}-ofpathname* %{_datadir}/man/man1/%{name}-syslinux2cfg* %exclude %{_datarootdir}/grub/themes/starfield %if 0%{with_efi_arch} %{expand:%define_efi_variant_files %%{package_arch} %%{grubefiname} %%{grubeficdname} %%{grubefiarch} %%{target_cpu_name} %%{grub_target_name}} %endif %if 0%{with_alt_efi_arch} %{expand:%define_efi_variant_files %%{alt_package_arch} %%{grubaltefiname} %%{grubalteficdname} %%{grubaltefiarch} %%{alt_target_cpu_name} %%{alt_grub_target_name}} %endif %if 0%{with_legacy_arch} %{expand:%define_legacy_variant_files %%{legacy_package_arch} %%{grublegacyarch}} %endif %changelog * Wed Aug 16 2017 Peter Jones - 2.02-9 - Re-work for ia32-efi. * Wed Aug 16 2017 pjones - 2.02-8 - Rebased to newer upstream for fedora-27 * Tue Aug 15 2017 Peter Jones - 2.02-7 - Rebuild again with new fixed rpm. (bug #1480407) * Fri Aug 11 2017 Kevin Fenzi - 2.02-6 - Rebuild again with new fixed rpm. (bug #1480407) * Thu Aug 10 2017 Kevin Fenzi - 2.02-5 - Rebuild for rpm soname bump again. * Thu Aug 10 2017 Igor Gnatenko - 2.02-4 - Rebuilt for RPM soname bump * Thu Aug 03 2017 Peter Jones - 2.02-3 - Rebuild so it gets SB signed correctly. Related: rhbz#1335533 - Enable lsefi * Mon Jul 24 2017 Michael Cronenworth - 2.02-2 - Fix symlink to work on both EFI and BIOS machines Resolves: rhbz#1335533 * Mon Jul 10 2017 Peter Jones - 2.02-1 - Rebased to newer upstream for fedora-27 * Wed Feb 01 2017 Stephen Gallagher - 2.02-0.39 - Add missing %%license macro - Fix deps that should have moved to -tools but didn't. * Thu Dec 08 2016 Peter Jones - 2.02-0.38 - Fix regexp in power compile flags, and synchronize release number with other branches. * Fri Dec 02 2016 pjones - 1:2.02-0.37 - Rebased to newer upstream for fedora-26 * Thu Dec 01 2016 Peter Jones - 2.02-0.36 - Update version to .36 because I already built an f25 one named 0.35 * Thu Dec 01 2016 pjones - 1:2.02-0.35 - Rebased to newer upstream for fedora-26 * Thu Dec 01 2016 Peter Jones - 2.02-0.34 - Fix power6 makefile bits for newer autoconf defaults. - efi/chainloader: fix wrong sanity check in relocate_coff() (Laszlo Ersek) Resolves: rhbz#1347291 * Thu Aug 25 2016 Peter Jones - 2.02-0.34 - Update to be newer than f24's branch. - Add grub2-get-kernel-settings Related: rhbz#1226325 * Thu Apr 07 2016 pjones - 1:2.02-0.30 - Revert 27e66193, which was replaced by upstream's 49426e9fd Resolves: rhbz#1251600 * Thu Apr 07 2016 Peter Jones - 2.02-0.29 - Fix ppc64 build failure and rebase to newer f24 code. * Tue Apr 05 2016 pjones - 1:2.02-0.27 - Pull TPM updates from mjg59. Resolves: rhbz#1318067 * Tue Mar 08 2016 pjones - 1:2.02-0.27 - Fix aarch64 build problem. * Fri Mar 04 2016 Peter Jones - 2.02-0.26 - Rebased to newer upstream (grub-2.02-beta3) for fedora-24 * Thu Dec 10 2015 Peter Jones - 2.02-0.25 - Fix security issue when reading username and password Related: CVE-2015-8370 - Do a better job of handling GRUB2_PASSWORD Related: rhbz#1284370 * Fri Nov 20 2015 Peter Jones - 2.02-0.24 - Rebuild without multiboot* modules in the EFI image. Related: rhbz#1264103 * Sat Sep 05 2015 Kalev Lember - 2.02-0.23 - Rebuilt for librpm soname bump * Wed Aug 05 2015 Peter Jones - 2.02-0.21 - Back out one of the debuginfo generation patches; it doesn't work right on aarch64 yet. Resolves: rhbz#1250197 * Mon Aug 03 2015 Peter Jones - 2.02-0.20 - The previous fix was completely not right, so fix it a different way. Resolves: rhbz#1249668 * Fri Jul 31 2015 Peter Jones - 2.02-0.19 - Fix grub2-mkconfig's sort to put kernels in the right order. Related: rhbz#1124074 * Thu Jul 30 2015 Peter Jones - 2.02-0.18 - Fix a build failure on aarch64 * Wed Jul 22 2015 Peter Jones - 2.02-0.17 - Don't build hardened (fixes FTBFS) (pbrobinson) - Reconcile with the current upstream - Fixes for gcc 5 * Tue Apr 28 2015 Peter Jones - 2.02-0.16 - Make grub2-mkconfig produce the kernel titles we actually want. Resolves: rhbz#1215839 * Sat Feb 21 2015 Till Maas - Rebuilt for Fedora 23 Change https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code * Mon Jan 05 2015 Peter Jones - 2.02-0.15 - Bump release to rebuild with Ralf Corsépius's fixes. * Sun Jan 04 2015 Ralf Corsépius - 2.02-0.14 - Move grub2.info/grub2-dev.info install-info scriptlets into *-tools package. - Use sub-shell in %%__debug_install_post (RHBZ#1168732). - Cleanup grub2-starfield-theme packaging. * Thu Dec 04 2014 Peter Jones - 2.02-0.13 - Update minilzo to 2.08 for CVE-2014-4607 Resolves: rhbz#1131793 * Thu Nov 13 2014 Peter Jones - 2.02-0.12 - Make backtrace and usb conditional on !arm - Make sure gcdaa64.efi is packaged. Resolves: rhbz#1163481 * Fri Nov 07 2014 Peter Jones - 2.02-0.11 - fix a copy-paste error in patch 0154. Resolves: rhbz#964828 * Mon Oct 27 2014 Peter Jones - 2.02-0.10 - Try to emit linux16/initrd16 and linuxefi/initrdefi when appropriate in 30_os-prober. Resolves: rhbz#1108296 - If $fw_path doesn't work to find the config file, try $prefix as well Resolves: rhbz#1148652 * Mon Sep 29 2014 Peter Jones - 2.02-0.9 - Clean up the build a bit to make it faster - Make grubenv work right on UEFI machines Related: rhbz#1119943 - Sort debug and rescue kernels later than normal ones Related: rhbz#1065360 - Allow "fallback" to include entries by title as well as number. Related: rhbz#1026084 - Fix a segfault on aarch64. - Load arm with SB enabled if available. - Add some serial port options to GRUB_MODULES. * Tue Aug 19 2014 Peter Jones - 2.02-0.8 - Add ppc64le support. Resolves: rhbz#1125540 * Thu Jul 24 2014 Peter Jones - 2.02-0.7 - Enabled syslinuxcfg module. * Wed Jul 02 2014 Peter Jones - 2.02-0.6 - Re-merge RHEL 7 changes and ARM works in progress. * Mon Jun 30 2014 Peter Jones - 2.02-0.5 - Avoid munging raw spaces when we're escaping command line arguments. Resolves: rhbz#923374 * Tue Jun 24 2014 Peter Jones - 2.02-0.4 - Update to latest upstream. * Thu Mar 13 2014 Peter Jones - 2.02-0.3 - Merge in RHEL 7 changes and ARM works in progress. * Mon Jan 06 2014 Peter Jones - 2.02-0.2 - Update to grub-2.02~beta2 * Sat Aug 10 2013 Peter Jones - 2.00-25 - Last build failed because of a hardware error on the builder. * Mon Aug 05 2013 Peter Jones - 2.00-24 - Fix compiler flags to deal with -fstack-protector-strong * Sat Aug 03 2013 Fedora Release Engineering - 1:2.00-24 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Tue Jul 02 2013 Dennis Gilmore - 2.00-23 - add epoch to obsoletes * Fri Jun 21 2013 Peter Jones - 2.00-22 - Fix linewrapping in edit menu. Resolves: rhbz #976643 * Thu Jun 20 2013 Peter Jones - 2.00-21 - Fix obsoletes to pull in -starfield-theme subpackage when it should. * Fri Jun 14 2013 Peter Jones - 2.00-20 - Put the theme entirely ento the subpackage where it belongs (#974667) * Wed Jun 12 2013 Peter Jones - 2.00-19 - Rebase to upstream snapshot. - Fix PPC build error (#967862) - Fix crash on net_bootp command (#960624) - Reset colors on ppc when appropriate (#908519) - Left align "Loading..." messages (#908492) - Fix probing of SAS disks on PPC (#953954) - Add support for UEFI OSes returned by os-prober - Disable "video" mode on PPC for now (#973205) - Make grub fit better into the boot sequence, visually (#966719) * Fri May 10 2013 Matthias Clasen - 2.00-18 - Move the starfield theme to a subpackage (#962004) - Don't allow SSE or MMX on UEFI builds (#949761) * Wed Apr 24 2013 Peter Jones - 2.00-17.pj0 - Rebase to upstream snapshot. * Thu Apr 04 2013 Peter Jones - 2.00-17 - Fix booting from drives with 4k sectors on UEFI. - Move bash completion to new location (#922997) - Include lvm support for /boot (#906203) * Thu Feb 14 2013 Peter Jones - 2.00-16 - Allow the user to disable submenu generation - (partially) support BLS-style configuration stanzas. * Tue Feb 12 2013 Peter Jones - 2.00-15.pj0 - Add various config file related changes. * Thu Dec 20 2012 Dennis Gilmore - 2.00-15 - bump nvr * Mon Dec 17 2012 Karsten Hopp 2.00-14 - add bootpath device to the device list (pfsmorigo, #886685) * Tue Nov 27 2012 Peter Jones - 2.00-13 - Add vlan tag support (pfsmorigo, #871563) - Follow symlinks during PReP installation in grub2-install (pfsmorigo, #874234) - Improve search paths for config files on network boot (pfsmorigo, #873406) * Tue Oct 23 2012 Peter Jones - 2.00-12 - Don't load modules when grub transitions to "normal" mode on UEFI. * Mon Oct 22 2012 Peter Jones - 2.00-11 - Rebuild with newer pesign so we'll get signed with the final signing keys. * Thu Oct 18 2012 Peter Jones - 2.00-10 - Various PPC fixes. - Fix crash fetching from http (gustavold, #860834) - Issue separate dns queries for ipv4 and ipv6 (gustavold, #860829) - Support IBM CAS reboot (pfsmorigo, #859223) - Include all modules in the core image on ppc (pfsmorigo, #866559) * Mon Oct 01 2012 Peter Jones - 1:2.00-9 - Work around bug with using "\x20" in linux command line. Related: rhbz#855849 * Thu Sep 20 2012 Peter Jones - 2.00-8 - Don't error on insmod on UEFI/SB, but also don't do any insmodding. - Increase device path size for ieee1275 Resolves: rhbz#857936 - Make network booting work on ieee1275 machines. Resolves: rhbz#857936 * Wed Sep 05 2012 Matthew Garrett - 2.00-7 - Add Apple partition map support for EFI * Thu Aug 23 2012 David Cantrell - 2.00-6 - Only require pesign on EFI architectures (#851215) * Tue Aug 14 2012 Peter Jones - 2.00-5 - Work around AHCI firmware bug in efidisk driver. - Move to newer pesign macros - Don't allow insmod if we're in secure-boot mode. * Wed Aug 08 2012 Peter Jones - Split module lists for UEFI boot vs UEFI cd images. - Add raid modules for UEFI image (related: #750794) - Include a prelink whitelist for binaries that need execstack (#839813) - Include fix efi memory map fix from upstream (#839363) * Wed Aug 08 2012 Peter Jones - 2.00-4 - Correct grub-mkimage invocation to use efidir RPM macro (jwb) - Sign with test keys on UEFI systems. - PPC - Handle device paths with commas correctly. Related: rhbz#828740 * Wed Jul 25 2012 Peter Jones - 2.00-3 - Add some more code to support Secure Boot, and temporarily disable some other bits that don't work well enough yet. Resolves: rhbz#836695 * Wed Jul 11 2012 Matthew Garrett - 2.00-2 - Set a prefix for the image - needed for installer work - Provide the font in the EFI directory for the same reason * Thu Jun 28 2012 Peter Jones - 2.00-1 - Rebase to grub-2.00 release. * Mon Jun 18 2012 Peter Jones - 2.0-0.37.beta6 - Fix double-free in grub-probe. * Wed Jun 06 2012 Peter Jones - 2.0-0.36.beta6 - Build with patch19 applied. * Wed Jun 06 2012 Peter Jones - 2.0-0.35.beta6 - More ppc fixes. * Wed Jun 06 2012 Peter Jones - 2.0-0.34.beta6 - Add IBM PPC fixes. * Mon Jun 04 2012 Peter Jones - 2.0-0.33.beta6 - Update to beta6. - Various fixes from mads. * Fri May 25 2012 Peter Jones - 2.0-0.32.beta5 - Revert builddep change for crt1.o; it breaks ppc build. * Fri May 25 2012 Peter Jones - 2.0-0.31.beta5 - Add fwsetup command (pjones) - More ppc fixes (IBM) * Tue May 22 2012 Peter Jones - 2.0-0.30.beta5 - Fix the /other/ grub2-tools require to include epoch. * Mon May 21 2012 Peter Jones - 2.0-0.29.beta5 - Get rid of efi_uga and efi_gop, favoring all_video instead. * Mon May 21 2012 Peter Jones - 2.0-0.28.beta5 - Name grub.efi something that's arch-appropriate (kiilerix, pjones) - use EFI/$SOMETHING_DISTRO_BASED/ not always EFI/redhat/grub2-efi/ . - move common stuff to -tools (kiilerix) - spec file cleanups (kiilerix) * Mon May 14 2012 Peter Jones - 2.0-0.27.beta5 - Fix module trampolining on ppc (benh) * Thu May 10 2012 Peter Jones - 2.0-0.27.beta5 - Fix license of theme (mizmo) Resolves: rhbz#820713 - Fix some PPC bootloader detection IBM problem Resolves: rhbz#820722 * Thu May 10 2012 Peter Jones - 2.0-0.26.beta5 - Update to beta5. - Update how efi building works (kiilerix) - Fix theme support to bring in fonts correctly (kiilerix, pjones) * Wed May 09 2012 Peter Jones - 2.0-0.25.beta4 - Include theme support (mizmo) - Include locale support (kiilerix) - Include html docs (kiilerix) * Thu Apr 26 2012 Peter Jones - 2.0-0.24 - Various fixes from Mads Kiilerich * Thu Apr 19 2012 Peter Jones - 2.0-0.23 - Update to 2.00~beta4 - Make fonts work so we can do graphics reasonably * Thu Mar 29 2012 David Aquilina - 2.0-0.22 - Fix ieee1275 platform define for ppc * Thu Mar 29 2012 Peter Jones - 2.0-0.21 - Remove ppc excludearch lines (dwa) - Update ppc terminfo patch (hamzy) * Wed Mar 28 2012 Peter Jones - 2.0-0.20 - Fix ppc64 vs ppc exclude according to what dwa tells me they need - Fix version number to better match policy. * Tue Mar 27 2012 Dan Horák - 1.99-19.2 - Add support for serial terminal consoles on PPC by Mark Hamzy * Sun Mar 25 2012 Dan Horák - 1.99-19.1 - Use Fix-tests-of-zeroed-partition patch by Mark Hamzy * Thu Mar 15 2012 Peter Jones - 1.99-19 - Use --with-grubdir= on configure to make it behave like -17 did. * Wed Mar 14 2012 Peter Jones - 1.99-18 - Rebase from 1.99 to 2.00~beta2 * Wed Mar 07 2012 Peter Jones - 1.99-17 - Update for newer autotools and gcc 4.7.0 Related: rhbz#782144 - Add /etc/sysconfig/grub link to /etc/default/grub Resolves: rhbz#800152 - ExcludeArch s390*, which is not supported by this package. Resolves: rhbz#758333 * Fri Feb 17 2012 Orion Poplawski - 1:1.99-16 - Build with -Os (bug 782144) * Fri Jan 13 2012 Fedora Release Engineering - 1:1.99-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Wed Dec 14 2011 Matthew Garrett - 1.99-14 - fix up various grub2-efi issues * Thu Dec 08 2011 Adam Williamson - 1.99-13 - fix hardwired call to grub-probe in 30_os-prober (rhbz#737203) * Mon Nov 07 2011 Peter Jones - 1.99-12 - Lots of .spec fixes from Mads Kiilerich: Remove comment about update-grub - it isn't run in any scriptlets patch info pages so they can be installed and removed correctly when renamed fix references to grub/grub2 renames in info pages (#743964) update README.Fedora (#734090) fix comments for the hack for upgrading from grub2 < 1.99-4 fix sed syntax error preventing use of $RPM_OPT_FLAGS (#704820) make /etc/grub2*.cfg %config(noreplace) make grub.cfg %ghost - an empty file is of no use anyway create /etc/default/grub more like anaconda would create it (#678453) don't create rescue entries by default - grubby will not maintain them anyway set GRUB_SAVEDEFAULT=true so saved defaults works (rbhz#732058) grub2-efi should have its own bash completion don't set gfxpayload in efi mode - backport upstream r3402 - Handle dmraid better. Resolves: rhbz#742226 * Wed Oct 26 2011 Fedora Release Engineering - 1:1.99-11 - Rebuilt for glibc bug#747377 * Wed Oct 19 2011 Adam Williamson - 1.99-10 - /etc/default/grub is explicitly intended for user customization, so mark it as config(noreplace) * Tue Oct 11 2011 Peter Jones - 1.99-9 - grub has an epoch, so we need that expressed in the obsolete as well. Today isn't my day. * Tue Oct 11 2011 Peter Jones - 1.99-8 - Fix my bad obsoletes syntax. * Thu Oct 06 2011 Peter Jones - 1.99-7 - Obsolete grub Resolves: rhbz#743381 * Wed Sep 14 2011 Peter Jones - 1.99-6 - Use mv not cp to try to avoid moving disk blocks around for -5 fix Related: rhbz#735259 - handle initramfs on xen better (patch from Marko Ristola) Resolves: rhbz#728775 * Sat Sep 03 2011 Kalev Lember - 1.99-5 - Fix upgrades from grub2 < 1.99-4 (#735259) * Fri Sep 02 2011 Peter Jones - 1.99-4 - Don't do sysadminny things in %preun or %post ever. (#735259) - Actually include the changelog in this build (sorry about -3) * Thu Sep 01 2011 Peter Jones - 1.99-2 - Require os-prober (#678456) (patch from Elad Alfassa) - Require which (#734959) (patch from Elad Alfassa) * Thu Sep 01 2011 Peter Jones - 1.99-1 - Update to grub-1.99 final. - Fix crt1.o require on x86-64 (fix from Mads Kiilerich) - Various CFLAGS fixes (from Mads Kiilerich) - -fexceptions and -m64 - Temporarily ignore translations (from Mads Kiilerich) * Thu Jul 21 2011 Peter Jones - 1.99-0.3 - Use /sbin not /usr/sbin . * Thu Jun 23 2011 Peter Lemenkov - 1:1.99-0.2 - Fixes for ppc and ppc64 * Wed Feb 09 2011 Fedora Release Engineering - 1:1.98-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild