2010-02-18 15:10:48 +01:00
|
|
|
#
|
2011-05-09 10:48:37 +02:00
|
|
|
# spec file for package grub2
|
2010-02-18 15:10:48 +01:00
|
|
|
#
|
2023-01-06 03:48:00 +01:00
|
|
|
# Copyright (c) 2023 SUSE LLC
|
2010-02-18 15:10:48 +01:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2019-01-29 08:27:11 +01:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2010-02-18 15:10:48 +01:00
|
|
|
#
|
2019-01-24 11:05:22 +01:00
|
|
|
# needssslcertforbuild
|
2012-03-22 12:32:34 +01:00
|
|
|
|
2016-10-28 11:04:35 +02:00
|
|
|
|
2019-01-10 10:57:18 +01:00
|
|
|
%define _binaries_in_noarch_package_terminate_build 0
|
|
|
|
|
2022-04-21 05:49:55 +02:00
|
|
|
%if %{defined sbat_distro}
|
|
|
|
# SBAT metadata
|
|
|
|
%define sbat_generation 1
|
2022-11-16 04:21:13 +01:00
|
|
|
%define sbat_generation_grub 3
|
2022-04-21 05:49:55 +02:00
|
|
|
%else
|
|
|
|
%{error please define sbat_distro, sbat_distro_summary and sbat_distro_url}
|
|
|
|
%endif
|
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
Name: grub2
|
2011-08-02 16:45:10 +02:00
|
|
|
%ifarch x86_64 ppc64
|
2011-12-25 17:34:30 +01:00
|
|
|
BuildRequires: gcc-32bit
|
|
|
|
BuildRequires: glibc-32bit
|
|
|
|
BuildRequires: glibc-devel-32bit
|
2010-02-18 15:10:48 +01:00
|
|
|
%else
|
2011-12-25 17:34:30 +01:00
|
|
|
BuildRequires: gcc
|
|
|
|
BuildRequires: glibc-devel
|
2010-02-18 15:10:48 +01:00
|
|
|
%endif
|
2011-12-25 17:34:30 +01:00
|
|
|
BuildRequires: automake
|
|
|
|
BuildRequires: bison
|
|
|
|
BuildRequires: device-mapper-devel
|
|
|
|
BuildRequires: fdupes
|
|
|
|
BuildRequires: flex
|
2012-11-13 09:53:25 +01:00
|
|
|
BuildRequires: freetype2-devel
|
2012-06-29 06:59:42 +02:00
|
|
|
BuildRequires: fuse-devel
|
2012-11-13 09:53:25 +01:00
|
|
|
%if 0%{?suse_version} >= 1140
|
2019-01-10 10:57:18 +01:00
|
|
|
BuildRequires: dejavu-fonts
|
2012-03-22 12:32:34 +01:00
|
|
|
BuildRequires: gnu-unifont
|
2012-11-13 09:53:25 +01:00
|
|
|
%endif
|
2013-04-16 22:25:22 +02:00
|
|
|
BuildRequires: help2man
|
2012-11-13 09:53:25 +01:00
|
|
|
BuildRequires: xz
|
|
|
|
%if 0%{?suse_version} >= 1210
|
2012-07-23 10:00:52 +02:00
|
|
|
BuildRequires: makeinfo
|
2012-11-13 09:53:25 +01:00
|
|
|
%else
|
|
|
|
BuildRequires: texinfo
|
|
|
|
%endif
|
2019-01-10 10:57:18 +01:00
|
|
|
%if %{defined pythons}
|
|
|
|
BuildRequires: %{pythons}
|
|
|
|
%else
|
|
|
|
BuildRequires: python
|
|
|
|
%endif
|
2012-06-29 06:59:42 +02:00
|
|
|
BuildRequires: xz-devel
|
2022-01-12 08:31:19 +01:00
|
|
|
%ifarch x86_64 aarch64 ppc ppc64 ppc64le
|
2013-03-28 12:00:02 +01:00
|
|
|
BuildRequires: openssl >= 0.9.8
|
2013-03-29 09:58:57 +01:00
|
|
|
BuildRequires: pesign-obs-integration
|
2013-02-07 11:46:30 +01:00
|
|
|
%endif
|
2015-04-13 19:58:16 +02:00
|
|
|
%if 0%{?suse_version} >= 1210
|
|
|
|
# Package systemd services files grub2-once.service
|
2015-04-15 09:50:53 +02:00
|
|
|
BuildRequires: systemd-rpm-macros
|
2015-04-13 19:58:16 +02:00
|
|
|
%define has_systemd 1
|
|
|
|
%endif
|
2017-01-13 15:51:18 +01:00
|
|
|
%if 0%{?suse_version} > 1320
|
|
|
|
BuildRequires: update-bootloader-rpm-macros
|
|
|
|
%endif
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2013-02-19 17:44:15 +01:00
|
|
|
# Modules code is dynamically loaded and collected from a _fixed_ path.
|
2010-02-18 15:10:48 +01:00
|
|
|
%define _libdir %{_exec_prefix}/lib
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2017-02-16 08:12:06 +01:00
|
|
|
# Build grub2-emu everywhere (it may be "required" by 'grub2-once')
|
|
|
|
%define emu 1
|
|
|
|
|
2014-02-05 04:57:12 +01:00
|
|
|
%ifarch ppc ppc64 ppc64le
|
2012-11-28 10:34:03 +01:00
|
|
|
%define grubcpu powerpc
|
2011-08-02 16:45:10 +02:00
|
|
|
%define platform ieee1275
|
2022-01-12 08:31:19 +01:00
|
|
|
%define brp_pesign_reservation 65536
|
2017-02-16 08:12:06 +01:00
|
|
|
# emu does not build here yet... :-(
|
|
|
|
%define emu 0
|
2011-08-02 16:45:10 +02:00
|
|
|
%endif
|
2012-10-26 17:06:09 +02:00
|
|
|
|
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
%define grubcpu i386
|
2012-11-28 10:34:03 +01:00
|
|
|
%define platform pc
|
2012-10-26 17:06:09 +02:00
|
|
|
%endif
|
|
|
|
|
2014-01-27 04:17:41 +01:00
|
|
|
%ifarch s390x
|
|
|
|
%define grubcpu s390x
|
|
|
|
%define platform emu
|
|
|
|
%endif
|
|
|
|
|
2014-12-05 07:26:19 +01:00
|
|
|
%ifarch %{arm}
|
|
|
|
%define grubcpu arm
|
|
|
|
%define platform uboot
|
|
|
|
%endif
|
|
|
|
|
2017-02-16 08:12:06 +01:00
|
|
|
%ifarch aarch64
|
|
|
|
%define grubcpu arm64
|
|
|
|
%define platform efi
|
|
|
|
%define only_efi 1
|
|
|
|
%endif
|
|
|
|
|
2019-10-23 08:00:37 +02:00
|
|
|
%ifarch riscv64
|
|
|
|
%define grubcpu riscv64
|
|
|
|
%define platform efi
|
|
|
|
%define only_efi 1
|
|
|
|
%endif
|
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%define grubarch %{grubcpu}-%{platform}
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
# build efi bootloader on some platforms only:
|
2014-10-31 15:00:39 +01:00
|
|
|
%if ! 0%{?efi:1}
|
2019-10-23 08:00:37 +02:00
|
|
|
%global efi %{ix86} x86_64 ia64 aarch64 %{arm} riscv64
|
2014-08-13 04:36:26 +02:00
|
|
|
%endif
|
2011-08-26 10:01:42 +02:00
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%ifarch %{efi}
|
|
|
|
%ifarch %{ix86}
|
|
|
|
%define grubefiarch i386-efi
|
|
|
|
%else
|
2014-08-13 04:36:26 +02:00
|
|
|
%ifarch aarch64
|
|
|
|
%define grubefiarch arm64-efi
|
|
|
|
%else
|
2014-12-05 07:26:19 +01:00
|
|
|
%ifarch %{arm}
|
|
|
|
%define grubefiarch arm-efi
|
|
|
|
%else
|
2012-11-28 10:34:03 +01:00
|
|
|
%define grubefiarch %{_target_cpu}-efi
|
|
|
|
%endif
|
|
|
|
%endif
|
2014-08-13 04:36:26 +02:00
|
|
|
%endif
|
2014-12-05 07:26:19 +01:00
|
|
|
%endif
|
2012-11-28 10:34:03 +01:00
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%ifarch %{ix86}
|
|
|
|
%define grubxenarch i386-xen
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%ifarch x86_64
|
|
|
|
%define grubxenarch x86_64-xen
|
|
|
|
%endif
|
|
|
|
|
2020-10-16 04:22:18 +02:00
|
|
|
%if "%{platform}" == "emu"
|
2019-01-10 10:57:18 +01:00
|
|
|
# force %%{emu} to 1, e.g. for s390
|
2017-02-16 08:12:06 +01:00
|
|
|
%define emu 1
|
|
|
|
%endif
|
|
|
|
|
2013-02-25 15:17:52 +01:00
|
|
|
%if 0%{?suse_version} == 1110
|
2012-11-28 10:34:03 +01:00
|
|
|
%define only_efi %{nil}
|
|
|
|
%define only_x86_64 %{nil}
|
|
|
|
%endif
|
|
|
|
|
2021-07-08 11:03:14 +02:00
|
|
|
Version: 2.06
|
2011-12-25 17:34:30 +01:00
|
|
|
Release: 0
|
2010-02-18 15:10:48 +01:00
|
|
|
Summary: Bootloader with support for Linux, Multiboot and more
|
2018-05-09 08:14:01 +02:00
|
|
|
License: GPL-3.0-or-later
|
2012-03-22 12:32:34 +01:00
|
|
|
Group: System/Boot
|
2020-03-12 12:58:43 +01:00
|
|
|
URL: http://www.gnu.org/software/grub/
|
2019-10-18 12:18:53 +02:00
|
|
|
Source0: https://ftp.gnu.org/gnu/grub/grub-%{version}.tar.xz
|
2010-02-18 15:10:48 +01:00
|
|
|
Source1: 90_persistent
|
|
|
|
Source2: grub.default
|
2010-03-15 00:45:00 +01:00
|
|
|
Source4: grub2.rpmlintrc
|
2012-08-31 09:28:14 +02:00
|
|
|
Source6: grub2-once
|
2012-09-23 21:04:15 +02:00
|
|
|
Source7: 20_memtest86+
|
2015-04-13 19:58:16 +02:00
|
|
|
Source8: README.ibm3215
|
2013-03-28 12:00:02 +01:00
|
|
|
Source10: openSUSE-UEFI-CA-Certificate.crt
|
|
|
|
Source11: SLES-UEFI-CA-Certificate.crt
|
2014-02-08 11:52:59 +01:00
|
|
|
Source12: grub2-snapper-plugin.sh
|
2014-10-01 09:24:29 +02:00
|
|
|
Source14: 80_suse_btrfs_snapshot
|
2015-04-13 19:58:16 +02:00
|
|
|
Source15: grub2-once.service
|
2015-12-08 08:55:20 +01:00
|
|
|
Source16: grub2-xen-pv-firmware.cfg
|
2015-08-26 11:54:23 +02:00
|
|
|
# required hook for systemd-sleep (bsc#941758)
|
|
|
|
Source17: grub2-systemd-sleep.sh
|
2018-02-01 05:09:06 +01:00
|
|
|
Source18: grub2-check-default.sh
|
2021-07-08 11:03:14 +02:00
|
|
|
Source19: grub2-instdev-fixup.pl
|
2012-08-31 09:28:14 +02:00
|
|
|
Source1000: PATCH_POLICY
|
2012-06-29 06:59:42 +02:00
|
|
|
Patch1: rename-grub-info-file-to-grub2.patch
|
2010-02-18 15:10:48 +01:00
|
|
|
Patch2: grub2-linux.patch
|
2012-06-29 06:59:42 +02:00
|
|
|
Patch3: use-grub2-as-a-package-name.patch
|
2017-01-25 17:54:43 +01:00
|
|
|
Patch4: info-dir-entry.patch
|
2021-12-09 08:35:45 +01:00
|
|
|
Patch5: grub2-simplefb.patch
|
2012-03-22 12:32:34 +01:00
|
|
|
Patch6: grub2-iterate-and-hook-for-extended-partition.patch
|
2012-06-29 14:19:02 +02:00
|
|
|
Patch8: grub2-ppc-terminfo.patch
|
2012-07-09 07:58:49 +02:00
|
|
|
Patch9: grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch
|
2012-07-23 10:00:52 +02:00
|
|
|
Patch10: grub2-fix-error-terminal-gfxterm-isn-t-found.patch
|
|
|
|
Patch12: grub2-fix-menu-in-xen-host-server.patch
|
2012-08-31 09:28:14 +02:00
|
|
|
Patch15: not-display-menu-when-boot-once.patch
|
|
|
|
Patch17: grub2-pass-corret-root-for-nfsroot.patch
|
2015-04-13 19:58:16 +02:00
|
|
|
Patch19: grub2-efi-HP-workaround.patch
|
2012-11-28 10:34:03 +01:00
|
|
|
Patch21: grub2-secureboot-add-linuxefi.patch
|
|
|
|
Patch23: grub2-secureboot-no-insmod-on-sb.patch
|
2017-03-06 08:17:24 +01:00
|
|
|
Patch25: grub2-secureboot-chainloader.patch
|
|
|
|
Patch27: grub2-linuxefi-fix-boot-params.patch
|
2013-06-18 19:11:34 +02:00
|
|
|
Patch35: grub2-linguas.sh-no-rsync.patch
|
2014-04-07 05:38:20 +02:00
|
|
|
Patch37: grub2-use-Unifont-for-starfield-theme-terminal.patch
|
2014-01-27 04:17:41 +01:00
|
|
|
Patch38: grub2-s390x-01-Changes-made-and-files-added-in-order-to-allow-s390x.patch
|
2015-04-13 19:58:16 +02:00
|
|
|
Patch39: grub2-s390x-02-kexec-module-added-to-emu.patch
|
|
|
|
Patch40: grub2-s390x-03-output-7-bit-ascii.patch
|
|
|
|
Patch41: grub2-s390x-04-grub2-install.patch
|
|
|
|
Patch42: grub2-s390x-05-grub2-mkconfig.patch
|
|
|
|
Patch43: grub2-use-rpmsort-for-version-sorting.patch
|
|
|
|
Patch53: grub2-getroot-treat-mdadm-ddf-as-simple-device.patch
|
|
|
|
Patch56: grub2-setup-try-fs-embed-if-mbr-gap-too-small.patch
|
|
|
|
Patch58: grub2-xen-linux16.patch
|
|
|
|
Patch59: grub2-efi-disable-video-cirrus-and-bochus.patch
|
|
|
|
Patch61: grub2-vbe-blacklist-preferred-1440x900x32.patch
|
2018-03-13 08:03:38 +01:00
|
|
|
Patch64: grub2-grubenv-in-btrfs-header.patch
|
2015-04-13 19:58:16 +02:00
|
|
|
Patch65: grub2-mkconfig-aarch64.patch
|
2015-09-15 13:16:16 +02:00
|
|
|
Patch70: grub2-default-distributor.patch
|
2015-10-31 14:21:40 +01:00
|
|
|
Patch71: grub2-menu-unrestricted.patch
|
2016-03-04 03:44:35 +01:00
|
|
|
Patch72: grub2-mkconfig-arm.patch
|
2017-02-16 08:12:06 +01:00
|
|
|
Patch75: grub2-s390x-06-loadparm.patch
|
|
|
|
Patch76: grub2-s390x-07-add-image-param-for-zipl-setup.patch
|
|
|
|
Patch77: grub2-s390x-08-workaround-part-to-disk.patch
|
|
|
|
Patch78: grub2-commands-introduce-read_file-subcommand.patch
|
|
|
|
Patch79: grub2-efi-chainload-harder.patch
|
|
|
|
Patch80: grub2-emu-4-all.patch
|
2017-03-21 11:35:03 +01:00
|
|
|
Patch81: grub2-lvm-allocate-metadata-buffer-from-raw-contents.patch
|
2017-06-03 23:22:46 +02:00
|
|
|
Patch82: grub2-diskfilter-support-pv-without-metadatacopies.patch
|
2017-08-24 05:58:08 +02:00
|
|
|
Patch84: grub2-s390x-09-improve-zipl-setup.patch
|
2018-03-28 09:02:31 +02:00
|
|
|
Patch85: grub2-getroot-scan-disk-pv.patch
|
2018-10-03 11:09:37 +02:00
|
|
|
Patch92: grub2-util-30_os-prober-multiple-initrd.patch
|
2018-10-04 09:19:50 +02:00
|
|
|
Patch93: grub2-getroot-support-nvdimm.patch
|
2020-02-06 05:53:11 +01:00
|
|
|
Patch94: grub2-install-fix-not-a-directory-error.patch
|
2020-05-06 09:01:48 +02:00
|
|
|
Patch96: grub-install-force-journal-draining-to-ensure-data-i.patch
|
2020-05-20 10:54:22 +02:00
|
|
|
Patch97: grub2-s390x-skip-zfcpdump-image.patch
|
2013-12-18 10:57:04 +01:00
|
|
|
# Btrfs snapshot booting related patches
|
2014-08-21 05:39:11 +02:00
|
|
|
Patch101: grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch
|
|
|
|
Patch102: grub2-btrfs-02-export-subvolume-envvars.patch
|
|
|
|
Patch103: grub2-btrfs-03-follow_default.patch
|
|
|
|
Patch104: grub2-btrfs-04-grub2-install.patch
|
|
|
|
Patch105: grub2-btrfs-05-grub2-mkconfig.patch
|
2015-05-22 13:45:25 +02:00
|
|
|
Patch106: grub2-btrfs-06-subvol-mount.patch
|
2016-06-21 18:44:17 +02:00
|
|
|
Patch107: grub2-btrfs-07-subvol-fallback.patch
|
2016-08-15 06:10:39 +02:00
|
|
|
Patch108: grub2-btrfs-08-workaround-snapshot-menu-default-entry.patch
|
2017-05-12 09:10:19 +02:00
|
|
|
Patch109: grub2-btrfs-09-get-default-subvolume.patch
|
2018-07-26 08:55:22 +02:00
|
|
|
Patch110: grub2-btrfs-10-config-directory.patch
|
2016-02-03 18:39:22 +01:00
|
|
|
# Support EFI xen loader
|
|
|
|
Patch120: grub2-efi-xen-chainload.patch
|
|
|
|
Patch121: grub2-efi-chainloader-root.patch
|
|
|
|
Patch122: grub2-efi-xen-cmdline.patch
|
2017-03-06 08:17:24 +01:00
|
|
|
Patch123: grub2-efi-xen-cfg-unquote.patch
|
2018-04-17 06:04:01 +02:00
|
|
|
Patch124: grub2-efi-xen-removable.patch
|
2016-04-29 20:24:44 +02:00
|
|
|
# Hidden menu entry and hotkey "t" for text console
|
|
|
|
Patch140: grub2-Add-hidden-menu-entries.patch
|
|
|
|
Patch141: grub2-SUSE-Add-the-t-hotkey.patch
|
2016-08-05 09:32:20 +02:00
|
|
|
# Linux root device related patches
|
|
|
|
Patch163: grub2-zipl-setup-fix-btrfs-multipledev.patch
|
|
|
|
Patch164: grub2-suse-remove-linux-root-param.patch
|
2016-02-03 18:39:22 +01:00
|
|
|
# PPC64 LE support
|
2016-01-29 04:26:23 +01:00
|
|
|
Patch205: grub2-ppc64le-disable-video.patch
|
|
|
|
Patch207: grub2-ppc64le-memory-map.patch
|
2021-04-23 05:44:52 +02:00
|
|
|
# PPC
|
2018-04-19 09:23:05 +02:00
|
|
|
Patch211: grub2-ppc64-cas-reboot-support.patch
|
|
|
|
Patch212: grub2-install-remove-useless-check-PReP-partition-is-empty.patch
|
|
|
|
Patch213: grub2-Fix-incorrect-netmask-on-ppc64.patch
|
2018-07-26 08:55:22 +02:00
|
|
|
Patch215: grub2-ppc64-cas-new-scope.patch
|
2018-11-26 10:10:43 +01:00
|
|
|
Patch218: grub2-ppc64-cas-fix-double-free.patch
|
2021-08-05 04:21:26 +02:00
|
|
|
Patch233: 0001-osdep-Introduce-include-grub-osdep-major.h-and-use-i.patch
|
|
|
|
Patch234: 0002-osdep-linux-hostdisk-Use-stat-instead-of-udevadm-for.patch
|
2015-04-13 19:58:16 +02:00
|
|
|
Patch236: grub2-efi_gop-avoid-low-resolution.patch
|
2016-08-05 09:32:20 +02:00
|
|
|
# Support HTTP Boot IPv4 and IPv6 (fate#320129)
|
|
|
|
Patch281: 0002-net-read-bracketed-ipv6-addrs-and-port-numbers.patch
|
|
|
|
Patch282: 0003-bootp-New-net_bootp6-command.patch
|
|
|
|
Patch283: 0004-efinet-UEFI-IPv6-PXE-support.patch
|
|
|
|
Patch284: 0005-grub.texi-Add-net_bootp6-doument.patch
|
|
|
|
Patch285: 0006-bootp-Add-processing-DHCPACK-packet-from-HTTP-Boot.patch
|
|
|
|
Patch286: 0007-efinet-Setting-network-from-UEFI-device-path.patch
|
|
|
|
Patch287: 0008-efinet-Setting-DNS-server-from-UEFI-protocol.patch
|
2017-03-09 07:19:36 +01:00
|
|
|
# TPM Support (FATE#315831)
|
|
|
|
Patch411: 0012-tpm-Build-tpm-as-module.patch
|
2017-09-04 08:46:54 +02:00
|
|
|
# UEFI HTTP and related network protocol support (FATE#320130)
|
|
|
|
Patch420: 0001-add-support-for-UEFI-network-protocols.patch
|
2017-12-03 15:35:21 +01:00
|
|
|
Patch421: 0002-AUDIT-0-http-boot-tracker-bug.patch
|
2021-04-23 05:44:52 +02:00
|
|
|
# check if default entry need to be corrected for updated distributor version
|
2018-02-01 05:09:06 +01:00
|
|
|
# and/or use fallback entry if default kernel entry removed (bsc#1065349)
|
|
|
|
Patch430: grub2-mkconfig-default-entry-correction.patch
|
2018-05-17 05:00:56 +02:00
|
|
|
Patch431: grub2-s390x-10-keep-network-at-kexec.patch
|
2020-03-10 07:21:18 +01:00
|
|
|
Patch432: grub2-s390x-11-secureboot.patch
|
2018-12-21 09:21:48 +01:00
|
|
|
# Support for UEFI Secure Boot on AArch64 (FATE#326541)
|
2019-07-03 08:15:39 +02:00
|
|
|
Patch450: grub2-secureboot-install-signed-grub.patch
|
2018-06-21 06:25:42 +02:00
|
|
|
Patch501: grub2-btrfs-help-on-snapper-rollback.patch
|
2019-01-24 11:05:22 +01:00
|
|
|
# Improved hiDPI device support (FATE#326680)
|
|
|
|
Patch510: grub2-video-limit-the-resolution-for-fixed-bimap-font.patch
|
2019-01-25 10:33:40 +01:00
|
|
|
# Support long menuentries (FATE#325760)
|
|
|
|
Patch511: grub2-gfxmenu-support-scrolling-menu-entry-s-text.patch
|
2020-08-13 11:48:00 +02:00
|
|
|
Patch714: 0001-kern-mm.c-Make-grub_calloc-inline.patch
|
2020-08-20 05:33:06 +02:00
|
|
|
Patch716: 0002-cmdline-Provide-cmdline-functions-as-module.patch
|
2020-08-21 13:29:27 +02:00
|
|
|
# bsc#1172745 L3: SLES 12 SP4 - Slow boot of system after updated kernel -
|
|
|
|
# takes 45 minutes after grub to start loading kernel
|
|
|
|
Patch717: 0001-ieee1275-powerpc-implements-fibre-channel-discovery-.patch
|
|
|
|
Patch718: 0002-ieee1275-powerpc-enables-device-mapper-discovery.patch
|
2020-08-24 09:58:17 +02:00
|
|
|
Patch719: 0001-Unify-the-check-to-enable-btrfs-relative-path.patch
|
2020-09-10 10:06:48 +02:00
|
|
|
Patch721: 0001-efi-linux-provide-linux-command.patch
|
2021-01-27 07:11:30 +01:00
|
|
|
# Secure Boot support in GRUB on aarch64 (jsc#SLE-15864)
|
|
|
|
Patch730: 0001-Add-support-for-Linux-EFI-stub-loading-on-aarch64.patch
|
|
|
|
Patch731: 0002-arm64-make-sure-fdt-has-address-cells-and-size-cells.patch
|
|
|
|
Patch732: 0003-Make-grub_error-more-verbose.patch
|
|
|
|
Patch733: 0004-arm-arm64-loader-Better-memory-allocation-and-error-.patch
|
|
|
|
Patch735: 0006-efi-Set-image-base-address-before-jumping-to-the-PE-.patch
|
2021-02-23 01:58:17 +01:00
|
|
|
Patch739: 0001-Fix-build-error-in-binutils-2.36.patch
|
|
|
|
Patch740: 0001-emu-fix-executable-stack-marking.patch
|
2021-03-03 02:40:50 +01:00
|
|
|
Patch784: 0044-squash-kern-Add-lockdown-support.patch
|
|
|
|
Patch786: 0046-squash-verifiers-Move-verifiers-API-to-kernel-image.patch
|
2021-03-16 06:26:13 +01:00
|
|
|
Patch788: 0001-ieee1275-Avoiding-many-unecessary-open-close.patch
|
2021-04-09 08:58:33 +02:00
|
|
|
Patch789: 0001-Workaround-volatile-efi-boot-variable.patch
|
2021-07-08 11:03:14 +02:00
|
|
|
Patch790: 0001-30_uefi-firmware-fix-printf-format-with-null-byte.patch
|
2021-09-07 05:50:12 +02:00
|
|
|
Patch792: 0001-templates-Follow-the-path-of-usr-merged-kernel-confi.patch
|
2022-08-18 11:42:06 +02:00
|
|
|
Patch793: 0001-tpm-Pass-unknown-error-as-non-fatal-but-debug-print-.patch
|
2021-11-02 06:52:57 +01:00
|
|
|
Patch794: 0001-Filter-out-POSIX-locale-for-translation.patch
|
|
|
|
Patch795: 0001-ieee1275-implement-FCP-methods-for-WWPN-and-LUNs.patch
|
|
|
|
Patch796: 0001-disk-diskfilter-Use-nodes-in-logical-volume-s-segmen.patch
|
|
|
|
Patch797: 0001-fs-xfs-Fix-unreadable-filesystem-with-v4-superblock.patch
|
2021-11-16 02:06:12 +01:00
|
|
|
Patch798: 0001-arm64-Fix-EFI-loader-kernel-image-allocation.patch
|
|
|
|
Patch799: 0002-Arm-check-for-the-PE-magic-for-the-compiled-arch.patch
|
2021-12-06 03:44:05 +01:00
|
|
|
Patch800: 0001-fs-btrfs-Make-extent-item-iteration-to-handle-gaps.patch
|
2021-12-27 07:21:59 +01:00
|
|
|
Patch801: 0001-Factor-out-grub_efi_linux_boot.patch
|
|
|
|
Patch802: 0002-Fix-race-in-EFI-validation.patch
|
|
|
|
Patch803: 0003-Handle-multi-arch-64-on-32-boot-in-linuxefi-loader.patch
|
|
|
|
Patch804: 0004-Try-to-pick-better-locations-for-kernel-and-initrd.patch
|
|
|
|
Patch805: 0005-x86-efi-Use-bounce-buffers-for-reading-to-addresses-.patch
|
|
|
|
Patch806: 0006-x86-efi-Re-arrange-grub_cmd_linux-a-little-bit.patch
|
|
|
|
Patch807: 0007-x86-efi-Make-our-own-allocator-for-kernel-stuff.patch
|
|
|
|
Patch808: 0008-x86-efi-Allow-initrd-params-cmdline-allocations-abov.patch
|
|
|
|
Patch809: 0009-x86-efi-Reduce-maximum-bounce-buffer-size-to-16-MiB.patch
|
|
|
|
Patch810: 0010-efilinux-Fix-integer-overflows-in-grub_cmd_initrd.patch
|
|
|
|
Patch811: 0011-Also-define-GRUB_EFI_MAX_ALLOCATION_ADDRESS-for-RISC.patch
|
|
|
|
Patch812: 0001-grub-mkconfig-restore-umask-for-grub.cfg.patch
|
2022-01-12 08:31:19 +01:00
|
|
|
Patch813: 0001-ieee1275-Drop-HEAP_MAX_ADDR-and-HEAP_MIN_SIZE-consta.patch
|
|
|
|
Patch814: 0002-ieee1275-claim-more-memory.patch
|
|
|
|
Patch815: 0003-ieee1275-request-memory-with-ibm-client-architecture.patch
|
|
|
|
Patch816: 0004-Add-suport-for-signing-grub-with-an-appended-signatu.patch
|
|
|
|
Patch817: 0005-docs-grub-Document-signing-grub-under-UEFI.patch
|
|
|
|
Patch818: 0006-docs-grub-Document-signing-grub-with-an-appended-sig.patch
|
|
|
|
Patch819: 0007-dl-provide-a-fake-grub_dl_set_persistent-for-the-emu.patch
|
|
|
|
Patch820: 0008-pgp-factor-out-rsa_pad.patch
|
|
|
|
Patch821: 0009-crypto-move-storage-for-grub_crypto_pk_-to-crypto.c.patch
|
|
|
|
Patch822: 0010-posix_wrap-tweaks-in-preparation-for-libtasn1.patch
|
|
|
|
Patch823: 0011-libtasn1-import-libtasn1-4.18.0.patch
|
|
|
|
Patch824: 0012-libtasn1-disable-code-not-needed-in-grub.patch
|
|
|
|
Patch825: 0013-libtasn1-changes-for-grub-compatibility.patch
|
|
|
|
Patch826: 0014-libtasn1-compile-into-asn1-module.patch
|
|
|
|
Patch827: 0015-test_asn1-test-module-for-libtasn1.patch
|
|
|
|
Patch828: 0016-grub-install-support-embedding-x509-certificates.patch
|
|
|
|
Patch829: 0017-appended-signatures-import-GNUTLS-s-ASN.1-descriptio.patch
|
|
|
|
Patch830: 0018-appended-signatures-parse-PKCS-7-signedData-and-X.50.patch
|
|
|
|
Patch831: 0019-appended-signatures-support-verifying-appended-signa.patch
|
|
|
|
Patch832: 0020-appended-signatures-verification-tests.patch
|
|
|
|
Patch833: 0021-appended-signatures-documentation.patch
|
|
|
|
Patch834: 0022-ieee1275-enter-lockdown-based-on-ibm-secure-boot.patch
|
|
|
|
Patch835: 0023-x509-allow-Digitial-Signature-plus-other-Key-Usages.patch
|
2022-01-14 09:55:34 +01:00
|
|
|
Patch836: 0001-grub-install-Add-SUSE-signed-image-support-for-power.patch
|
2022-03-07 04:24:00 +01:00
|
|
|
Patch837: 0001-Add-grub_envblk_buf-helper-function.patch
|
|
|
|
Patch838: 0002-Add-grub_disk_write_tail-helper-function.patch
|
|
|
|
Patch839: 0003-grub-install-support-prep-environment-block.patch
|
|
|
|
Patch840: 0004-Introduce-prep_load_env-command.patch
|
|
|
|
Patch841: 0005-export-environment-at-start-up.patch
|
2022-03-14 07:53:06 +01:00
|
|
|
Patch842: 0001-grub-install-bailout-root-device-probing.patch
|
|
|
|
Patch843: 0001-RISC-V-Adjust-march-flags-for-binutils-2.38.patch
|
|
|
|
Patch844: 0001-install-fix-software-raid1-on-esp.patch
|
2022-03-18 08:29:19 +01:00
|
|
|
Patch845: 0001-mkimage-Fix-dangling-pointer-may-be-used-error.patch
|
|
|
|
Patch846: 0002-Fix-Werror-array-bounds-array-subscript-0-is-outside.patch
|
|
|
|
Patch847: 0003-reed_solomon-Fix-array-subscript-0-is-outside-array-.patch
|
2022-03-18 13:30:44 +01:00
|
|
|
Patch848: 0001-grub-probe-Deduplicate-probed-partmap-output.patch
|
2022-04-25 07:04:46 +02:00
|
|
|
Patch849: 0001-powerpc-do-CAS-in-a-more-compatible-way.patch
|
2022-05-23 08:31:10 +02:00
|
|
|
Patch850: 0001-Fix-infinite-boot-loop-on-headless-system-in-qemu.patch
|
|
|
|
Patch851: 0001-libc-config-merge-from-glibc.patch
|
2022-06-01 08:10:34 +02:00
|
|
|
Patch852: 0001-ofdisk-improve-boot-time-by-lookup-boot-disk-first.patch
|
2022-06-08 05:04:17 +02:00
|
|
|
Patch853: 0001-video-Remove-trailing-whitespaces.patch
|
|
|
|
Patch854: 0002-loader-efi-chainloader-Simplify-the-loader-state.patch
|
|
|
|
Patch855: 0003-commands-boot-Add-API-to-pass-context-to-loader.patch
|
|
|
|
Patch856: 0004-loader-efi-chainloader-Use-grub_loader_set_ex.patch
|
|
|
|
Patch857: 0005-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch
|
|
|
|
Patch858: 0006-kern-file-Do-not-leak-device_name-on-error-in-grub_f.patch
|
|
|
|
Patch859: 0007-video-readers-png-Abort-sooner-if-a-read-operation-f.patch
|
|
|
|
Patch860: 0008-video-readers-png-Refuse-to-handle-multiple-image-he.patch
|
|
|
|
Patch861: 0009-video-readers-png-Drop-greyscale-support-to-fix-heap.patch
|
|
|
|
Patch862: 0010-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch
|
|
|
|
Patch863: 0011-video-readers-png-Sanity-check-some-huffman-codes.patch
|
|
|
|
Patch864: 0012-video-readers-jpeg-Abort-sooner-if-a-read-operation-.patch
|
|
|
|
Patch865: 0013-video-readers-jpeg-Do-not-reallocate-a-given-huff-ta.patch
|
|
|
|
Patch866: 0014-video-readers-jpeg-Refuse-to-handle-multiple-start-o.patch
|
|
|
|
Patch867: 0015-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch
|
|
|
|
Patch868: 0016-normal-charset-Fix-array-out-of-bounds-formatting-un.patch
|
|
|
|
Patch869: 0017-net-ip-Do-IP-fragment-maths-safely.patch
|
|
|
|
Patch870: 0018-net-netbuff-Block-overly-large-netbuff-allocs.patch
|
|
|
|
Patch871: 0019-net-dns-Fix-double-free-addresses-on-corrupt-DNS-res.patch
|
|
|
|
Patch872: 0020-net-dns-Don-t-read-past-the-end-of-the-string-we-re-.patch
|
|
|
|
Patch873: 0021-net-tftp-Prevent-a-UAF-and-double-free-from-a-failed.patch
|
|
|
|
Patch874: 0022-net-tftp-Avoid-a-trivial-UAF.patch
|
|
|
|
Patch875: 0023-net-http-Do-not-tear-down-socket-if-it-s-already-bee.patch
|
|
|
|
Patch876: 0024-net-http-Fix-OOB-write-for-split-http-headers.patch
|
|
|
|
Patch877: 0025-net-http-Error-out-on-headers-with-LF-without-CR.patch
|
|
|
|
Patch878: 0026-fs-f2fs-Do-not-read-past-the-end-of-nat-journal-entr.patch
|
|
|
|
Patch879: 0027-fs-f2fs-Do-not-read-past-the-end-of-nat-bitmap.patch
|
|
|
|
Patch880: 0028-fs-f2fs-Do-not-copy-file-names-that-are-too-long.patch
|
|
|
|
Patch881: 0029-fs-btrfs-Fix-several-fuzz-issues-with-invalid-dir-it.patch
|
|
|
|
Patch882: 0030-fs-btrfs-Fix-more-ASAN-and-SEGV-issues-found-with-fu.patch
|
|
|
|
Patch883: 0031-fs-btrfs-Fix-more-fuzz-issues-related-to-chunks.patch
|
|
|
|
Patch884: 0032-Use-grub_loader_set_ex-for-secureboot-chainloader.patch
|
2022-08-11 12:30:46 +02:00
|
|
|
Patch885: 0001-luks2-Add-debug-message-to-align-with-luks-and-geli-.patch
|
|
|
|
Patch886: 0002-cryptodisk-Refactor-to-discard-have_it-global.patch
|
|
|
|
Patch887: 0003-cryptodisk-Return-failure-in-cryptomount-when-no-cry.patch
|
|
|
|
Patch888: 0004-cryptodisk-Improve-error-messaging-in-cryptomount-in.patch
|
|
|
|
Patch889: 0005-cryptodisk-Improve-cryptomount-u-error-message.patch
|
|
|
|
Patch890: 0006-cryptodisk-Add-infrastructure-to-pass-data-from-cryp.patch
|
|
|
|
Patch891: 0007-cryptodisk-Refactor-password-input-out-of-crypto-dev.patch
|
|
|
|
Patch892: 0008-cryptodisk-Move-global-variables-into-grub_cryptomou.patch
|
|
|
|
Patch893: 0009-cryptodisk-Improve-handling-of-partition-name-in-cry.patch
|
|
|
|
Patch894: 0010-protectors-Add-key-protectors-framework.patch
|
|
|
|
Patch895: 0011-tpm2-Add-TPM-Software-Stack-TSS.patch
|
|
|
|
Patch896: 0012-protectors-Add-TPM2-Key-Protector.patch
|
|
|
|
Patch897: 0013-cryptodisk-Support-key-protectors.patch
|
|
|
|
Patch898: 0014-util-grub-protect-Add-new-tool.patch
|
|
|
|
Patch899: fix-tpm2-build.patch
|
|
|
|
Patch900: 0001-crytodisk-fix-cryptodisk-module-looking-up.patch
|
2022-09-19 08:10:23 +02:00
|
|
|
# fde
|
|
|
|
Patch901: 0001-devmapper-getroot-Have-devmapper-recognize-LUKS2.patch
|
|
|
|
Patch902: 0002-devmapper-getroot-Set-up-cheated-LUKS2-cryptodisk-mo.patch
|
|
|
|
Patch903: 0003-disk-cryptodisk-When-cheatmounting-use-the-sector-in.patch
|
|
|
|
Patch904: 0004-normal-menu-Don-t-show-Booting-s-msg-when-auto-booti.patch
|
|
|
|
Patch905: 0005-EFI-suppress-the-Welcome-to-GRUB-message-in-EFI-buil.patch
|
|
|
|
Patch906: 0006-EFI-console-Do-not-set-colorstate-until-the-first-te.patch
|
|
|
|
Patch907: 0007-EFI-console-Do-not-set-cursor-until-the-first-text-o.patch
|
|
|
|
Patch908: 0008-linuxefi-Use-common-grub_initrd_load.patch
|
|
|
|
Patch909: 0009-Add-crypttab_entry-to-obviate-the-need-to-input-pass.patch
|
|
|
|
Patch910: 0010-templates-import-etc-crypttab-to-grub.cfg.patch
|
|
|
|
Patch911: grub-read-pcr.patch
|
|
|
|
Patch912: efi-set-variable-with-attrs.patch
|
|
|
|
Patch913: tpm-record-pcrs.patch
|
|
|
|
Patch914: tpm-protector-dont-measure-sealed-key.patch
|
|
|
|
Patch915: tpm-protector-export-secret-key.patch
|
|
|
|
Patch916: grub-install-record-pcrs.patch
|
|
|
|
Patch917: grub-unseal-debug.patch
|
|
|
|
# efi mm
|
|
|
|
Patch918: 0001-tpm-Disable-tpm-verifier-if-tpm-is-not-present.patch
|
|
|
|
Patch919: 0001-mm-Allow-dynamically-requesting-additional-memory-re.patch
|
|
|
|
Patch920: 0002-kern-efi-mm-Always-request-a-fixed-number-of-pages-o.patch
|
|
|
|
Patch921: 0003-kern-efi-mm-Extract-function-to-add-memory-regions.patch
|
|
|
|
Patch922: 0004-kern-efi-mm-Pass-up-errors-from-add_memory_regions.patch
|
|
|
|
Patch923: 0005-kern-efi-mm-Implement-runtime-addition-of-pages.patch
|
|
|
|
Patch924: 0001-kern-efi-mm-Enlarge-the-default-heap-size.patch
|
|
|
|
Patch925: 0002-mm-Defer-the-disk-cache-invalidation.patch
|
|
|
|
# powerpc-ieee1275
|
|
|
|
Patch926: 0001-grub-install-set-point-of-no-return-for-powerpc-ieee1275.patch
|
|
|
|
Patch927: safe_tpm_pcr_snapshot.patch
|
2022-11-01 05:59:50 +01:00
|
|
|
# (PED-996) NVMeoFC support on Grub (grub2)
|
|
|
|
Patch929: 0001-ieee1275-add-support-for-NVMeoFC.patch
|
|
|
|
Patch930: 0002-ieee1275-ofpath-enable-NVMeoF-logical-device-transla.patch
|
|
|
|
Patch931: 0003-ieee1275-change-the-logic-of-ieee1275_get_devargs.patch
|
|
|
|
Patch932: 0004-ofpath-controller-name-update.patch
|
|
|
|
# (PED-1265) TDX: Enhance grub2 measurement to TD RTMR
|
|
|
|
Patch933: 0001-commands-efi-tpm-Refine-the-status-of-log-event.patch
|
|
|
|
Patch934: 0002-commands-efi-tpm-Use-grub_strcpy-instead-of-grub_mem.patch
|
|
|
|
Patch935: 0003-efi-tpm-Add-EFI_CC_MEASUREMENT_PROTOCOL-support.patch
|
|
|
|
# (PED-1990) GRUB2: Measure the kernel on POWER10 and extend TPM PCRs
|
|
|
|
Patch936: 0001-ibmvtpm-Add-support-for-trusted-boot-using-a-vTPM-2..patch
|
|
|
|
Patch937: 0002-ieee1275-implement-vec5-for-cas-negotiation.patch
|
2022-11-16 04:21:13 +01:00
|
|
|
Patch938: 0001-font-Reject-glyphs-exceeds-font-max_glyph_width-or-f.patch
|
|
|
|
Patch939: 0002-font-Fix-size-overflow-in-grub_font_get_glyph_intern.patch
|
|
|
|
Patch940: 0003-font-Fix-several-integer-overflows-in-grub_font_cons.patch
|
|
|
|
Patch941: 0004-font-Remove-grub_font_dup_glyph.patch
|
|
|
|
Patch942: 0005-font-Fix-integer-overflow-in-ensure_comb_space.patch
|
|
|
|
Patch943: 0006-font-Fix-integer-overflow-in-BMP-index.patch
|
|
|
|
Patch944: 0007-font-Fix-integer-underflow-in-binary-search-of-char-.patch
|
|
|
|
Patch945: 0008-fbutil-Fix-integer-overflow.patch
|
|
|
|
Patch946: 0009-font-Fix-an-integer-underflow-in-blit_comb.patch
|
|
|
|
Patch947: 0010-font-Harden-grub_font_blit_glyph-and-grub_font_blit_.patch
|
|
|
|
Patch948: 0011-font-Assign-null_font-to-glyphs-in-ascii_font_glyph.patch
|
|
|
|
Patch949: 0012-normal-charset-Fix-an-integer-overflow-in-grub_unico.patch
|
2022-11-24 04:05:20 +01:00
|
|
|
Patch950: 0001-fs-btrfs-Use-full-btrfs-bootloader-area.patch
|
|
|
|
Patch951: 0002-Mark-environmet-blocks-as-used-for-image-embedding.patch
|
2022-12-06 08:49:23 +01:00
|
|
|
Patch952: 0001-ieee1275-Increase-initially-allocated-heap-from-1-4-.patch
|
2022-12-19 04:45:35 +01:00
|
|
|
Patch953: grub2-increase-crypttab-path-buffer.patch
|
2022-12-20 16:32:08 +01:00
|
|
|
Patch954: 0001-grub2-Set-multiple-device-path-for-a-nvmf-boot-devic.patch
|
2014-04-11 04:43:28 +02:00
|
|
|
|
2010-09-13 18:50:45 +02:00
|
|
|
Requires: gettext-runtime
|
2012-11-13 09:53:25 +01:00
|
|
|
%if 0%{?suse_version} >= 1140
|
2015-04-13 19:58:16 +02:00
|
|
|
%ifnarch s390x
|
2015-02-05 11:58:21 +01:00
|
|
|
Recommends: os-prober
|
2012-11-13 09:53:25 +01:00
|
|
|
%endif
|
2015-04-13 19:58:16 +02:00
|
|
|
# xorriso not available using grub2-mkrescue (bnc#812681)
|
2018-08-09 04:50:44 +02:00
|
|
|
# downgrade to suggest as minimal system can't afford pulling in tcl/tk and half of the x11 stack (bsc#1102515)
|
|
|
|
Suggests: libburnia-tools
|
2020-03-18 14:48:10 +01:00
|
|
|
Suggests: mtools
|
2015-04-13 19:58:16 +02:00
|
|
|
%endif
|
2012-11-28 10:34:03 +01:00
|
|
|
%if ! 0%{?only_efi:1}
|
|
|
|
Requires: grub2-%{grubarch} = %{version}-%{release}
|
|
|
|
%endif
|
2019-01-10 10:57:18 +01:00
|
|
|
%ifarch s390x
|
|
|
|
# required utilities by grub2-s390x-04-grub2-install.patch
|
|
|
|
# use 'showconsole' to determine console device. (bnc#876743)
|
|
|
|
Requires: kexec-tools
|
2021-11-16 02:06:12 +01:00
|
|
|
Requires: (/sbin/showconsole or /usr/sbin/showconsole)
|
2019-01-10 10:57:18 +01:00
|
|
|
# for /sbin/zipl used by grub2-zipl-setup
|
|
|
|
Requires: s390-tools
|
|
|
|
%endif
|
|
|
|
%ifarch ppc64 ppc64le
|
|
|
|
Requires: powerpc-utils
|
|
|
|
%endif
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%if 0%{?only_x86_64:1}
|
|
|
|
ExclusiveArch: x86_64
|
|
|
|
%else
|
2019-10-23 08:00:37 +02:00
|
|
|
ExclusiveArch: %{ix86} x86_64 ppc ppc64 ppc64le s390x aarch64 %{arm} riscv64
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
2011-08-02 16:45:10 +02:00
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
%description
|
2013-02-15 17:18:37 +01:00
|
|
|
This is the second version of the GRUB (Grand Unified Bootloader), a
|
|
|
|
highly configurable and customizable bootloader with modular
|
|
|
|
architecture. It support rich scale of kernel formats, file systems,
|
2010-02-18 15:10:48 +01:00
|
|
|
computer architectures and hardware devices.
|
|
|
|
|
2014-01-16 04:44:50 +01:00
|
|
|
This package includes user space utlities to manage GRUB on your system.
|
2013-02-15 17:18:37 +01:00
|
|
|
|
2014-01-16 04:44:50 +01:00
|
|
|
%package branding-upstream
|
|
|
|
|
|
|
|
Summary: Upstream branding for GRUB2's graphical console
|
|
|
|
Group: System/Fhs
|
2019-01-10 10:57:18 +01:00
|
|
|
Requires: %{name} = %{version}
|
2014-01-16 04:44:50 +01:00
|
|
|
|
|
|
|
%description branding-upstream
|
|
|
|
Upstream branding for GRUB2's graphical console
|
|
|
|
|
2017-02-16 08:12:06 +01:00
|
|
|
%if ! 0%{?only_efi:1}
|
2012-11-28 10:34:03 +01:00
|
|
|
%package %{grubarch}
|
|
|
|
|
2013-02-15 17:18:37 +01:00
|
|
|
Summary: Bootloader with support for Linux, Multiboot and more
|
2012-11-28 10:34:03 +01:00
|
|
|
Group: System/Boot
|
2020-10-16 04:22:18 +02:00
|
|
|
%if "%{platform}" != "emu"
|
2019-01-10 10:57:18 +01:00
|
|
|
BuildArch: noarch
|
2019-01-23 12:53:47 +01:00
|
|
|
%endif
|
2019-01-10 10:57:18 +01:00
|
|
|
Requires: %{name} = %{version}
|
2021-04-23 05:44:52 +02:00
|
|
|
Requires(post): %{name} = %{version}
|
2017-01-13 15:51:18 +01:00
|
|
|
%if 0%{?update_bootloader_requires:1}
|
|
|
|
%update_bootloader_requires
|
|
|
|
%else
|
2013-03-12 10:56:29 +01:00
|
|
|
Requires: perl-Bootloader
|
|
|
|
Requires(post): perl-Bootloader
|
2017-01-13 15:51:18 +01:00
|
|
|
%endif
|
2012-11-28 10:34:03 +01:00
|
|
|
|
|
|
|
%description %{grubarch}
|
|
|
|
The GRand Unified Bootloader (GRUB) is a highly configurable and customizable
|
|
|
|
bootloader with modular architecture. It supports rich variety of kernel formats,
|
|
|
|
file systems, computer architectures and hardware devices. This subpackage
|
|
|
|
provides support for %{platform} systems.
|
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%package %{grubarch}-extras
|
|
|
|
Summary: Unsupported modules for %{grubarch}
|
|
|
|
Group: System/Boot
|
|
|
|
BuildArch: noarch
|
|
|
|
Requires: %{name}-%{grubarch} = %{version}
|
|
|
|
Provides: %{name}-%{grubarch}:%{_datadir}/%{name}/%{grubarch}/zfs.mod
|
|
|
|
Provides: %{name}-%{grubarch}:%{_datadir}/%{name}/%{grubarch}/zfscrypt.mod
|
|
|
|
Provides: %{name}-%{grubarch}:%{_datadir}/%{name}/%{grubarch}/zfsinfo.mod
|
|
|
|
|
|
|
|
%description %{grubarch}-extras
|
|
|
|
Unsupported modules for %{name}-%{grubarch}
|
|
|
|
|
2020-03-18 14:48:10 +01:00
|
|
|
%package %{grubarch}-debug
|
|
|
|
Summary: Debug symbols for %{grubarch}
|
|
|
|
Group: System/Boot
|
2020-10-16 04:22:18 +02:00
|
|
|
%if "%{platform}" != "emu"
|
2020-03-18 14:48:10 +01:00
|
|
|
BuildArch: noarch
|
|
|
|
%endif
|
|
|
|
Requires: %{name}-%{grubarch} = %{version}
|
|
|
|
|
|
|
|
%description %{grubarch}-debug
|
|
|
|
Debug information for %{name}-%{grubarch}
|
|
|
|
|
|
|
|
Information on how to debug grub can be found online:
|
|
|
|
https://www.cnblogs.com/coryxie/archive/2013/03/12/2956807.html
|
|
|
|
|
2017-02-16 08:12:06 +01:00
|
|
|
%endif
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
%ifarch %{efi}
|
2012-11-28 10:34:03 +01:00
|
|
|
|
|
|
|
%package %{grubefiarch}
|
|
|
|
|
2013-02-15 17:18:37 +01:00
|
|
|
Summary: Bootloader with support for Linux, Multiboot and more
|
2019-01-24 11:05:22 +01:00
|
|
|
Group: System/Boot
|
2019-01-10 10:57:18 +01:00
|
|
|
BuildArch: noarch
|
2019-10-23 08:00:37 +02:00
|
|
|
# Require efibootmgr
|
|
|
|
# Without it grub-install is broken so break the package as well if unavailable
|
2011-10-25 16:00:45 +02:00
|
|
|
Requires: efibootmgr
|
2013-03-12 10:56:29 +01:00
|
|
|
Requires(post): efibootmgr
|
2019-01-10 10:57:18 +01:00
|
|
|
Requires: %{name} = %{version}
|
2021-04-23 05:44:52 +02:00
|
|
|
Requires(post): %{name} = %{version}
|
2017-01-13 15:51:18 +01:00
|
|
|
%if 0%{?update_bootloader_requires:1}
|
|
|
|
%update_bootloader_requires
|
|
|
|
%else
|
2013-03-12 10:56:29 +01:00
|
|
|
Requires: perl-Bootloader >= 0.706
|
|
|
|
Requires(post): perl-Bootloader >= 0.706
|
2017-01-13 15:51:18 +01:00
|
|
|
%endif
|
2013-03-26 09:58:26 +01:00
|
|
|
Provides: %{name}-efi = %{version}-%{release}
|
2013-03-20 17:58:19 +01:00
|
|
|
Obsoletes: %{name}-efi < %{version}-%{release}
|
2011-08-26 10:01:42 +02:00
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%description %{grubefiarch}
|
2011-08-26 10:01:42 +02:00
|
|
|
The GRand Unified Bootloader (GRUB) is a highly configurable and customizable
|
2012-02-23 15:32:40 +01:00
|
|
|
bootloader with modular architecture. It supports rich variety of kernel formats,
|
2011-08-26 10:01:42 +02:00
|
|
|
file systems, computer architectures and hardware devices. This subpackage
|
|
|
|
provides support for EFI systems.
|
2012-11-28 10:34:03 +01:00
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%package %{grubefiarch}-extras
|
|
|
|
|
|
|
|
Summary: Unsupported modules for %{grubefiarch}
|
|
|
|
Group: System/Boot
|
|
|
|
BuildArch: noarch
|
|
|
|
Requires: %{name}-%{grubefiarch} = %{version}
|
|
|
|
Provides: %{name}-%{grubefiarch}:%{_datadir}/%{name}/%{grubefiarch}/zfs.mod
|
|
|
|
Provides: %{name}-%{grubefiarch}:%{_datadir}/%{name}/%{grubefiarch}/zfscrypt.mod
|
|
|
|
Provides: %{name}-%{grubefiarch}:%{_datadir}/%{name}/%{grubefiarch}/zfsinfo.mod
|
|
|
|
|
|
|
|
%description %{grubefiarch}-extras
|
|
|
|
Unsupported modules for %{name}-%{grubefiarch}
|
|
|
|
|
2020-03-18 14:48:10 +01:00
|
|
|
%package %{grubefiarch}-debug
|
|
|
|
Summary: Debug symbols for %{grubefiarch}
|
|
|
|
Group: System/Boot
|
2020-10-16 04:22:18 +02:00
|
|
|
%if "%{platform}" != "emu"
|
2020-03-18 14:48:10 +01:00
|
|
|
BuildArch: noarch
|
|
|
|
%endif
|
|
|
|
Requires: %{name}-%{grubefiarch} = %{version}
|
|
|
|
|
|
|
|
%description %{grubefiarch}-debug
|
|
|
|
Debug symbols for %{name}-%{grubefiarch}
|
|
|
|
|
|
|
|
Information on how to debug grub can be found online:
|
|
|
|
https://www.cnblogs.com/coryxie/archive/2013/03/12/2956807.html
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
%endif
|
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%ifarch %{ix86} x86_64
|
2014-04-10 10:09:18 +02:00
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%package %{grubxenarch}
|
2014-04-10 10:09:18 +02:00
|
|
|
|
|
|
|
Summary: Bootloader with support for Linux, Multiboot and more
|
|
|
|
Group: System/Boot
|
|
|
|
Provides: %{name}-xen = %{version}-%{release}
|
|
|
|
Obsoletes: %{name}-xen < %{version}-%{release}
|
2018-08-07 06:19:42 +02:00
|
|
|
BuildArch: noarch
|
2014-04-10 10:09:18 +02:00
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%description %{grubxenarch}
|
2014-04-10 10:09:18 +02:00
|
|
|
The GRand Unified Bootloader (GRUB) is a highly configurable and customizable
|
|
|
|
bootloader with modular architecture. It supports rich variety of kernel formats,
|
|
|
|
file systems, computer architectures and hardware devices. This subpackage
|
|
|
|
provides support for XEN systems.
|
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%package %{grubxenarch}-extras
|
|
|
|
Summary: Unsupported modules for %{grubxenarch}
|
|
|
|
Group: System/Boot
|
|
|
|
BuildArch: noarch
|
|
|
|
Requires: %{name}-%{grubxenarch} = %{version}
|
|
|
|
Provides: %{name}-%{grubxenarch}:%{_datadir}/%{name}/%{grubxenarch}/zfs.mod
|
|
|
|
Provides: %{name}-%{grubxenarch}:%{_datadir}/%{name}/%{grubxenarch}/zfscrypt.mod
|
|
|
|
Provides: %{name}-%{grubxenarch}:%{_datadir}/%{name}/%{grubxenarch}/zfsinfo.mod
|
|
|
|
|
|
|
|
%description %{grubxenarch}-extras
|
|
|
|
Unsupported modules for %{name}-%{grubxenarch}
|
|
|
|
|
2014-04-10 10:09:18 +02:00
|
|
|
%endif
|
|
|
|
|
2014-02-08 11:52:59 +01:00
|
|
|
%package snapper-plugin
|
|
|
|
|
|
|
|
Summary: Grub2's snapper plugin
|
|
|
|
Group: System/Fhs
|
2019-01-10 10:57:18 +01:00
|
|
|
Requires: %{name} = %{version}
|
2014-02-08 11:52:59 +01:00
|
|
|
Requires: libxml2-tools
|
2014-02-12 17:20:04 +01:00
|
|
|
Supplements: packageand(snapper:grub2)
|
2014-02-08 11:52:59 +01:00
|
|
|
BuildArch: noarch
|
|
|
|
|
|
|
|
%description snapper-plugin
|
|
|
|
Grub2's snapper plugin for advanced btrfs snapshot boot menu management
|
|
|
|
|
2015-08-26 11:54:23 +02:00
|
|
|
%if 0%{?has_systemd:1}
|
|
|
|
%package systemd-sleep-plugin
|
|
|
|
|
|
|
|
Summary: Grub2's systemd-sleep plugin
|
|
|
|
Group: System/Fhs
|
|
|
|
Requires: grub2
|
|
|
|
Requires: util-linux
|
|
|
|
Supplements: packageand(systemd:grub2)
|
|
|
|
BuildArch: noarch
|
|
|
|
|
|
|
|
%description systemd-sleep-plugin
|
|
|
|
Grub2's systemd-sleep plugin for directly booting hibernated kernel image in
|
|
|
|
swap partition while in resuming
|
|
|
|
%endif
|
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
%prep
|
2012-06-29 06:59:42 +02:00
|
|
|
# We create (if we build for efi) two copies of the sources in the Builddir
|
2021-08-20 05:32:29 +02:00
|
|
|
%autosetup -p1 -n grub-%{version}
|
2018-02-06 07:29:18 +01:00
|
|
|
|
|
|
|
%build
|
2019-01-23 12:53:47 +01:00
|
|
|
# collect evidence to debug spurious build failure on SLE15
|
|
|
|
ulimit -a
|
2017-07-25 08:31:39 +02:00
|
|
|
# patches above may update the timestamp of grub.texi
|
|
|
|
# and via build-aux/mdate-sh they end up in grub2.info, breaking build-compare
|
|
|
|
[ -z "$SOURCE_DATE_EPOCH" ] ||\
|
|
|
|
[ `stat -c %Y docs/grub.texi` -lt $SOURCE_DATE_EPOCH ] ||\
|
|
|
|
touch -d@$SOURCE_DATE_EPOCH docs/grub.texi
|
2016-08-05 09:32:20 +02:00
|
|
|
|
|
|
|
# This simplifies patch handling without need to use git to create patch
|
|
|
|
# that renames file
|
|
|
|
mv docs/grub.texi docs/grub2.texi
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2015-04-13 19:58:16 +02:00
|
|
|
cp %{SOURCE8} .
|
2013-02-15 17:18:37 +01:00
|
|
|
mkdir build
|
2011-08-26 10:01:42 +02:00
|
|
|
%ifarch %{efi}
|
2013-02-15 17:18:37 +01:00
|
|
|
mkdir build-efi
|
2011-08-26 10:01:42 +02:00
|
|
|
%endif
|
2015-02-16 08:43:46 +01:00
|
|
|
%ifarch %{ix86} x86_64
|
2014-04-10 10:09:18 +02:00
|
|
|
mkdir build-xen
|
|
|
|
%endif
|
2017-02-16 08:12:06 +01:00
|
|
|
%if %{emu}
|
|
|
|
mkdir build-emu
|
|
|
|
%endif
|
2010-02-18 15:10:48 +01:00
|
|
|
|
2017-11-07 05:42:57 +01:00
|
|
|
export PYTHON=%{_bindir}/python3
|
2019-01-10 10:57:18 +01:00
|
|
|
[ -x $PYTHON ] || unset PYTHON # try 'python', if 'python3' is unavailable
|
2014-01-06 04:50:43 +01:00
|
|
|
# autogen calls autoreconf -vi
|
|
|
|
./autogen.sh
|
2013-02-15 17:18:37 +01:00
|
|
|
# Not yet:
|
|
|
|
%define common_conf_options TARGET_LDFLAGS=-static --program-transform-name=s,grub,%{name},
|
|
|
|
# This does NOT work on SLE11:
|
|
|
|
%define _configure ../configure
|
|
|
|
|
|
|
|
# We don't want to let rpm override *FLAGS with default a.k.a bogus values.
|
2012-11-13 09:53:25 +01:00
|
|
|
CFLAGS="-fno-strict-aliasing -fno-inline-functions-called-once "
|
2011-08-26 10:01:42 +02:00
|
|
|
CXXFLAGS=" "
|
|
|
|
FFLAGS=" "
|
|
|
|
export CFLAGS CXXFLAGS FFLAGS
|
2013-02-15 17:18:37 +01:00
|
|
|
|
2017-02-16 08:12:06 +01:00
|
|
|
%if %{emu}
|
|
|
|
cd build-emu
|
|
|
|
%define arch_specific --enable-device-mapper --disable-grub-mount
|
2019-01-23 12:53:47 +01:00
|
|
|
TLFLAGS="-fPIC"
|
2017-02-16 08:12:06 +01:00
|
|
|
|
|
|
|
# -static is needed so that autoconf script is able to link
|
|
|
|
# test that looks for _start symbol on 64 bit platforms
|
2019-01-23 12:53:47 +01:00
|
|
|
../configure TARGET_LDFLAGS=$TLFLAGS \
|
2017-02-16 08:12:06 +01:00
|
|
|
--prefix=%{_prefix} \
|
2019-01-23 12:53:47 +01:00
|
|
|
--libdir=%{_datadir} \
|
2017-02-16 08:12:06 +01:00
|
|
|
--sysconfdir=%{_sysconfdir} \
|
|
|
|
--target=%{_target_platform} \
|
|
|
|
--with-platform=emu \
|
|
|
|
%{arch_specific} \
|
|
|
|
--program-transform-name=s,grub,%{name},
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
cd ..
|
|
|
|
if [ "%{platform}" = "emu" ]; then
|
|
|
|
rmdir build
|
|
|
|
mv build-emu build
|
|
|
|
fi
|
|
|
|
%endif
|
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%ifarch %{ix86} x86_64
|
2014-04-10 10:09:18 +02:00
|
|
|
cd build-xen
|
|
|
|
../configure \
|
|
|
|
TARGET_LDFLAGS=-static \
|
|
|
|
--prefix=%{_prefix} \
|
2019-01-23 12:53:47 +01:00
|
|
|
--libdir=%{_datadir} \
|
2014-04-10 10:09:18 +02:00
|
|
|
--sysconfdir=%{_sysconfdir} \
|
|
|
|
--target=%{_target_platform} \
|
|
|
|
--with-platform=xen \
|
|
|
|
--program-transform-name=s,grub,%{name},
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
2015-05-11 13:16:27 +02:00
|
|
|
./grub-mkstandalone --grub-mkimage=./grub-mkimage -o grub.xen -O %{grubxenarch} -d grub-core/ "/boot/grub/grub.cfg=%{SOURCE16}"
|
2014-04-10 10:09:18 +02:00
|
|
|
|
|
|
|
cd ..
|
|
|
|
%endif
|
|
|
|
|
2019-01-10 10:57:18 +01:00
|
|
|
FS_MODULES="btrfs ext2 xfs jfs reiserfs"
|
2022-01-12 08:31:19 +01:00
|
|
|
CD_MODULES="all_video boot cat configfile echo true \
|
|
|
|
font gfxmenu gfxterm gzio halt iso9660 \
|
2012-11-28 10:34:03 +01:00
|
|
|
jpeg minicmd normal part_apple part_msdos part_gpt \
|
2021-05-13 10:40:35 +02:00
|
|
|
password password_pbkdf2 png reboot search search_fs_uuid \
|
2022-10-24 13:44:15 +02:00
|
|
|
search_fs_file search_label sleep test video fat loadenv loopback"
|
2022-01-12 08:31:19 +01:00
|
|
|
PXE_MODULES="tftp http"
|
2022-09-19 08:10:23 +02:00
|
|
|
CRYPTO_MODULES="luks luks2 gcry_rijndael gcry_sha1 gcry_sha256 gcry_sha512 crypttab"
|
2022-01-12 08:31:19 +01:00
|
|
|
%ifarch %{efi}
|
2022-08-11 12:30:46 +02:00
|
|
|
CD_MODULES="${CD_MODULES} chain efifwsetup efinet read tpm tpm2"
|
2022-01-12 08:31:19 +01:00
|
|
|
PXE_MODULES="${PXE_MODULES} efinet"
|
|
|
|
%else
|
|
|
|
CD_MODULES="${CD_MODULES} net"
|
|
|
|
PXE_MODULES="${PXE_MODULES} net"
|
|
|
|
%endif
|
2012-11-28 10:34:03 +01:00
|
|
|
|
2019-07-03 08:15:39 +02:00
|
|
|
%ifarch x86_64
|
2021-04-23 05:44:52 +02:00
|
|
|
CD_MODULES="${CD_MODULES} linuxefi"
|
2011-08-26 10:01:42 +02:00
|
|
|
%else
|
2021-04-23 05:44:52 +02:00
|
|
|
CD_MODULES="${CD_MODULES} linux"
|
2011-08-26 10:01:42 +02:00
|
|
|
%endif
|
2012-11-28 10:34:03 +01:00
|
|
|
|
2022-01-12 08:31:19 +01:00
|
|
|
GRUB_MODULES="${CD_MODULES} ${FS_MODULES} ${PXE_MODULES} ${CRYPTO_MODULES} mdraid09 mdraid1x lvm serial"
|
|
|
|
%ifarch ppc ppc64 ppc64le
|
2022-12-06 08:49:23 +01:00
|
|
|
GRUB_MODULES="${GRUB_MODULES} appendedsig memdisk tar regexp prep_loadenv tpm"
|
2022-01-12 08:31:19 +01:00
|
|
|
%endif
|
|
|
|
|
|
|
|
%ifarch %{efi}
|
|
|
|
cd build-efi
|
|
|
|
../configure \
|
|
|
|
TARGET_LDFLAGS=-static \
|
|
|
|
--prefix=%{_prefix} \
|
|
|
|
--libdir=%{_datadir} \
|
|
|
|
--sysconfdir=%{_sysconfdir} \
|
|
|
|
--target=%{_target_platform} \
|
|
|
|
--with-platform=efi \
|
|
|
|
--program-transform-name=s,grub,%{name},
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
2022-04-21 05:49:55 +02:00
|
|
|
%if 0%{?sbat_generation}
|
2021-03-03 02:40:50 +01:00
|
|
|
echo "sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md" > sbat.csv
|
2022-04-21 05:49:55 +02:00
|
|
|
echo "grub,%{sbat_generation_grub},Free Software Foundation,grub,%{version},https://www.gnu.org/software/grub/" >> sbat.csv
|
|
|
|
echo "grub.%{sbat_distro},%{sbat_generation},%{sbat_distro_summary},%{name},%{version},%{sbat_distro_url}" >> sbat.csv
|
|
|
|
%endif
|
2021-03-03 02:40:50 +01:00
|
|
|
|
2022-04-21 05:49:55 +02:00
|
|
|
./grub-mkimage -O %{grubefiarch} -o grub.efi --prefix= %{?sbat_generation:--sbat sbat.csv} \
|
2012-11-28 10:34:03 +01:00
|
|
|
-d grub-core ${GRUB_MODULES}
|
2013-03-28 12:00:02 +01:00
|
|
|
|
2018-12-21 09:21:48 +01:00
|
|
|
%ifarch x86_64 aarch64
|
2013-03-28 12:00:02 +01:00
|
|
|
if test -e %{_sourcedir}/_projectcert.crt ; then
|
|
|
|
prjsubject=$(openssl x509 -in %{_sourcedir}/_projectcert.crt -noout -subject_hash)
|
|
|
|
prjissuer=$(openssl x509 -in %{_sourcedir}/_projectcert.crt -noout -issuer_hash)
|
|
|
|
opensusesubject=$(openssl x509 -in %{SOURCE10} -noout -subject_hash)
|
|
|
|
slessubject=$(openssl x509 -in %{SOURCE11} -noout -subject_hash)
|
|
|
|
if test "$prjissuer" = "$opensusesubject" ; then
|
|
|
|
cert=%{SOURCE10}
|
|
|
|
fi
|
|
|
|
if test "$prjissuer" = "$slessubject" ; then
|
|
|
|
cert=%{SOURCE11}
|
|
|
|
fi
|
|
|
|
if test "$prjsubject" = "$prjissuer" ; then
|
|
|
|
cert=%{_sourcedir}/_projectcert.crt
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
if test -z "$cert" ; then
|
|
|
|
echo "cannot identify project, assuming openSUSE signing"
|
|
|
|
cert=%{SOURCE10}
|
|
|
|
fi
|
|
|
|
|
|
|
|
openssl x509 -in $cert -outform DER -out grub.der
|
|
|
|
%endif
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
cd ..
|
|
|
|
%endif
|
2012-06-29 06:59:42 +02:00
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%if ! 0%{?only_efi:1}
|
2013-02-15 17:18:37 +01:00
|
|
|
cd build
|
2011-05-09 10:48:37 +02:00
|
|
|
|
2011-12-30 08:45:41 +01:00
|
|
|
# 64-bit x86-64 machines use 32-bit boot loader
|
|
|
|
# (We cannot just redefine _target_cpu, as we'd get i386.rpm packages then)
|
2021-04-23 05:44:52 +02:00
|
|
|
%ifarch x86_64
|
2011-12-30 08:45:41 +01:00
|
|
|
%define _target_platform i386-%{_vendor}-%{_target_os}%{?_gnu}
|
|
|
|
%endif
|
|
|
|
|
2020-10-16 04:22:18 +02:00
|
|
|
%if "%{platform}" != "emu"
|
2015-04-13 19:58:16 +02:00
|
|
|
%define arch_specific --enable-device-mapper
|
2019-01-23 12:53:47 +01:00
|
|
|
TLFLAGS="-static"
|
2014-01-27 04:17:41 +01:00
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
# -static is needed so that autoconf script is able to link
|
|
|
|
# test that looks for _start symbol on 64 bit platforms
|
2019-01-23 12:53:47 +01:00
|
|
|
../configure TARGET_LDFLAGS="$TLFLAGS" \
|
2013-02-15 17:18:37 +01:00
|
|
|
--prefix=%{_prefix} \
|
2019-01-23 12:53:47 +01:00
|
|
|
--libdir=%{_datadir} \
|
2013-02-15 17:18:37 +01:00
|
|
|
--sysconfdir=%{_sysconfdir} \
|
2011-12-30 08:45:41 +01:00
|
|
|
--target=%{_target_platform} \
|
2011-08-02 16:45:10 +02:00
|
|
|
--with-platform=%{platform} \
|
2015-04-13 19:58:16 +02:00
|
|
|
%{arch_specific} \
|
2010-02-18 15:10:48 +01:00
|
|
|
--program-transform-name=s,grub,%{name},
|
2011-05-09 10:48:37 +02:00
|
|
|
make %{?_smp_mflags}
|
2022-01-12 08:31:19 +01:00
|
|
|
|
|
|
|
if [ "%{platform}" = "ieee1275" ]; then
|
2022-03-04 03:14:49 +01:00
|
|
|
# So far neither OpenFirmware nor grub support CA chain, only certificate pinning
|
|
|
|
# Use project certificate always in the shipped informational file and
|
|
|
|
# for kernel verification
|
|
|
|
projectcert="%{_sourcedir}/_projectcert.crt"
|
|
|
|
openssl x509 -in "$projectcert" -outform DER -out grub.der
|
2022-01-12 08:31:19 +01:00
|
|
|
cat > %{platform}-config <<'EOF'
|
|
|
|
set root=memdisk
|
|
|
|
set prefix=($root)/
|
|
|
|
echo "earlycfg: root=$root prefix=$prefix"
|
|
|
|
EOF
|
|
|
|
cat > ./grub.cfg <<'EOF'
|
|
|
|
|
|
|
|
regexp --set 1:bdev --set 2:bpart --set 3:bpath '\(([^,]+)(,?.*)?\)(.*)' "$cmdpath"
|
|
|
|
|
|
|
|
echo "bdev=$bdev"
|
|
|
|
echo "bpart=$bpart"
|
|
|
|
echo "bpath=$bpath"
|
|
|
|
|
2022-03-07 04:24:00 +01:00
|
|
|
if [ "$btrfs_relative_path" = xy ]; then
|
|
|
|
btrfs_relative_path=1
|
|
|
|
fi
|
|
|
|
|
2022-01-12 08:31:19 +01:00
|
|
|
if [ "$bdev" -a "$bpart" -a "$bpath" ]; then
|
2022-03-07 04:24:00 +01:00
|
|
|
set hints="--hint $bdev$bpart"
|
|
|
|
set cfg_dir="$bpath"
|
2022-01-12 08:31:19 +01:00
|
|
|
elif [ "$bdev" -a "$bpart" ]; then
|
2022-03-07 04:24:00 +01:00
|
|
|
set hints="--hint $bdev$bpart"
|
|
|
|
set cfg_dir="/boot/grub2 /grub2"
|
|
|
|
set btrfs_relative_path=1
|
2022-01-12 08:31:19 +01:00
|
|
|
elif [ "$bdev" ]; then
|
2022-03-07 04:24:00 +01:00
|
|
|
if [ "$ENV_HINT" ]; then
|
|
|
|
set hints="--hint $ENV_HINT"
|
|
|
|
else
|
|
|
|
set hints="--hint ${bdev},"
|
|
|
|
fi
|
|
|
|
if [ "$ENV_GRUB_DIR" ]; then
|
|
|
|
set cfg_dir="$ENV_GRUB_DIR"
|
|
|
|
else
|
|
|
|
set cfg_dir="/boot/grub2 /grub2"
|
|
|
|
set btrfs_relative_path=1
|
|
|
|
fi
|
2022-01-12 08:31:19 +01:00
|
|
|
else
|
2022-03-07 04:24:00 +01:00
|
|
|
set hints=""
|
|
|
|
set cfg_dir="/boot/grub2 /grub2"
|
|
|
|
set btrfs_relative_path=1
|
2022-01-12 08:31:19 +01:00
|
|
|
fi
|
|
|
|
|
|
|
|
set prefix=""
|
|
|
|
set root=""
|
|
|
|
set cfg="grub.cfg"
|
2022-03-07 04:24:00 +01:00
|
|
|
|
|
|
|
if [ "$ENV_CRYPTO_UUID" ]; then
|
|
|
|
cryptomount -u "$ENV_CRYPTO_UUID"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$ENV_FS_UUID" ]; then
|
|
|
|
echo "searching for $ENV_FS_UUID with $hints"
|
|
|
|
if search --fs-uuid --set=root "$ENV_FS_UUID" $hints; then
|
|
|
|
echo "$ENV_FS_UUID is on $root"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2022-01-12 08:31:19 +01:00
|
|
|
for d in ${cfg_dir}; do
|
2022-03-07 04:24:00 +01:00
|
|
|
if [ -z "$root" ]; then
|
|
|
|
echo "searching for ${d}/${cfg}"
|
|
|
|
if search --file --set=root "${d}/${cfg}" $hints; then
|
|
|
|
echo "${d}/${cfg} is on $root"
|
|
|
|
prefix="($root)${d}"
|
|
|
|
fi
|
|
|
|
elif [ -f "${d}/${cfg}" ]; then
|
2022-01-12 08:31:19 +01:00
|
|
|
echo "${d}/${cfg} is on $root"
|
2022-03-07 04:24:00 +01:00
|
|
|
prefix="($root)${d}"
|
|
|
|
else
|
|
|
|
echo "${d}/${cfg} not found in $root"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$prefix" -a x"$btrfs_relative_path" = x1 ]; then
|
|
|
|
btrfs_relative_path=0
|
2022-01-12 08:31:19 +01:00
|
|
|
if [ -f /@"${d}"/powerpc-ieee1275/command.lst ]; then
|
2022-03-07 04:24:00 +01:00
|
|
|
btrfs_relative_path=1
|
2022-01-12 08:31:19 +01:00
|
|
|
echo "mounting subvolume @${d}/powerpc-ieee1275 on ${d}/powerpc-ieee1275"
|
|
|
|
btrfs-mount-subvol ($root) "${d}"/powerpc-ieee1275 @"${d}"/powerpc-ieee1275
|
|
|
|
fi
|
2022-03-07 04:24:00 +01:00
|
|
|
btrfs_relative_path=1
|
2022-01-12 08:31:19 +01:00
|
|
|
break
|
|
|
|
fi
|
|
|
|
done
|
2022-03-07 04:24:00 +01:00
|
|
|
|
2022-01-12 08:31:19 +01:00
|
|
|
echo "prefix=$prefix root=$root"
|
|
|
|
if [ -n "$prefix" ]; then
|
|
|
|
source "${prefix}/${cfg}"
|
|
|
|
fi
|
|
|
|
EOF
|
|
|
|
%{__tar} cvf memdisk.tar ./grub.cfg
|
|
|
|
./grub-mkimage -O %{grubarch} -o grub.elf -d grub-core -x grub.der -m memdisk.tar \
|
|
|
|
-c %{platform}-config --appended-signature-size %brp_pesign_reservation ${GRUB_MODULES}
|
|
|
|
ls -l "grub.elf"
|
|
|
|
truncate -s -%brp_pesign_reservation "grub.elf"
|
|
|
|
fi
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
2017-02-16 08:12:06 +01:00
|
|
|
cd ..
|
|
|
|
%endif
|
2010-02-18 15:10:48 +01:00
|
|
|
|
|
|
|
%install
|
2014-04-10 10:09:18 +02:00
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%ifarch %{ix86} x86_64
|
2014-04-10 10:09:18 +02:00
|
|
|
cd build-xen
|
2019-02-12 09:10:12 +01:00
|
|
|
%make_install
|
|
|
|
install -m 644 grub.xen %{buildroot}/%{_datadir}/%{name}/%{grubxenarch}/.
|
2021-02-18 11:15:28 +01:00
|
|
|
# provide compatibility sym-link for VM definitions pointing to old location
|
|
|
|
install -d %{buildroot}%{_libdir}/%{name}/%{grubxenarch}
|
|
|
|
ln -srf %{buildroot}%{_datadir}/%{name}/%{grubxenarch}/grub.xen %{buildroot}%{_libdir}/%{name}/%{grubxenarch}/grub.xen
|
|
|
|
cat <<-EoM >%{buildroot}%{_libdir}/%{name}/%{grubxenarch}/DEPRECATED
|
|
|
|
This directory and its contents was moved to %{_datadir}/%{name}/%{grubxenarch}.
|
|
|
|
Individual symbolic links are provided for a smooth transition.
|
|
|
|
Please update your VM definition files to use the new location!
|
|
|
|
EoM
|
2014-04-10 10:09:18 +02:00
|
|
|
cd ..
|
|
|
|
%endif
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
%ifarch %{efi}
|
2013-02-15 17:18:37 +01:00
|
|
|
cd build-efi
|
2019-02-12 09:10:12 +01:00
|
|
|
%make_install
|
2019-10-18 12:18:53 +02:00
|
|
|
install -m 644 grub.efi %{buildroot}/%{_datadir}/%{name}/%{grubefiarch}/.
|
|
|
|
%ifarch x86_64
|
2022-08-11 12:30:46 +02:00
|
|
|
ln -srf %{buildroot}/%{_datadir}/%{name}/%{grubefiarch}/grub.efi %{buildroot}/%{_datadir}/%{name}/%{grubefiarch}/grub-tpm.efi
|
2019-10-18 12:18:53 +02:00
|
|
|
%endif
|
2013-02-19 17:44:15 +01:00
|
|
|
|
|
|
|
# Create grub.efi link to system efi directory
|
|
|
|
# This is for tools like kiwi not fiddling with the path
|
2019-01-23 12:53:47 +01:00
|
|
|
%define sysefibasedir %{_datadir}/efi
|
2021-04-23 05:44:52 +02:00
|
|
|
%define sysefidir %{sysefibasedir}/%{_target_cpu}
|
2019-02-12 09:10:12 +01:00
|
|
|
install -d %{buildroot}/%{sysefidir}
|
2019-02-14 16:51:15 +01:00
|
|
|
ln -sr %{buildroot}/%{_datadir}/%{name}/%{grubefiarch}/grub.efi %{buildroot}%{sysefidir}/grub.efi
|
2021-02-18 11:15:28 +01:00
|
|
|
%ifarch x86_64
|
|
|
|
# provide compatibility sym-link for previous shim-install and the like
|
|
|
|
install -d %{buildroot}/usr/lib64/efi
|
|
|
|
ln -srf %{buildroot}/%{_datadir}/%{name}/%{grubefiarch}/grub.efi %{buildroot}/usr/lib64/efi/grub.efi
|
|
|
|
cat <<-EoM >%{buildroot}/usr/lib64/efi/DEPRECATED
|
|
|
|
This directory and its contents was moved to %{_datadir}/efi/x86_64.
|
|
|
|
Individual symbolic links are provided for a smooth transition and
|
|
|
|
may vanish at any point in time. Please use the new location!
|
|
|
|
EoM
|
|
|
|
%endif
|
2013-02-19 17:44:15 +01:00
|
|
|
|
2018-12-21 09:21:48 +01:00
|
|
|
%ifarch x86_64 aarch64
|
2019-10-18 12:18:53 +02:00
|
|
|
export BRP_PESIGN_FILES="%{_datadir}/%{name}/%{grubefiarch}/grub.efi"
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 444 grub.der %{buildroot}/%{sysefidir}/
|
2013-03-28 12:00:02 +01:00
|
|
|
%endif
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
cd ..
|
|
|
|
%endif
|
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%if ! 0%{?only_efi:1}
|
2013-02-15 17:18:37 +01:00
|
|
|
cd build
|
2019-02-12 09:10:12 +01:00
|
|
|
%make_install
|
2022-01-12 08:31:19 +01:00
|
|
|
if [ "%{platform}" = "ieee1275" ]; then
|
|
|
|
export BRP_PESIGN_FILES="%{_datadir}/%{name}/%{grubarch}/grub.elf"
|
|
|
|
export BRP_PESIGN_GRUB_RESERVATION=%brp_pesign_reservation
|
|
|
|
install -m 444 grub.der %{buildroot}%{_datadir}/%{name}/%{grubarch}/
|
|
|
|
install -m 644 grub.elf %{buildroot}%{_datadir}/%{name}/%{grubarch}/
|
|
|
|
fi
|
2017-02-16 08:12:06 +01:00
|
|
|
cd ..
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2019-01-23 12:53:47 +01:00
|
|
|
if [ "%{platform}" = "emu" ]; then
|
|
|
|
# emu-lite is currently broken (and not needed), don't install!
|
2019-02-12 09:10:12 +01:00
|
|
|
rm -f %{buildroot}/%{_bindir}/%{name}-emu-lite
|
2019-01-23 12:53:47 +01:00
|
|
|
elif [ -d build-emu/grub-core ]; then
|
2017-02-16 08:12:06 +01:00
|
|
|
cd build-emu/grub-core
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 755 grub-emu %{buildroot}/%{_bindir}/%{name}-emu
|
2019-01-23 12:53:47 +01:00
|
|
|
if false; then
|
|
|
|
# this needs to go to '-emu'-package; until that is ready, don't install!
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 755 grub-emu-lite %{buildroot}/%{_bindir}/%{name}-emu-lite
|
2019-01-23 12:53:47 +01:00
|
|
|
else
|
2019-02-12 09:10:12 +01:00
|
|
|
rm -f %{buildroot}/%{_bindir}/%{name}-emu-lite
|
2019-01-23 12:53:47 +01:00
|
|
|
fi
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 644 grub-emu.1 %{buildroot}/%{_mandir}/man1/%{name}-emu.1
|
2017-02-16 08:12:06 +01:00
|
|
|
cd ../..
|
|
|
|
fi
|
|
|
|
|
2013-12-02 04:01:20 +01:00
|
|
|
# *.module files are installed with executable bits due to the way grub2 build
|
|
|
|
# system works. Clear executable bits to not confuse find-debuginfo.sh
|
2019-02-12 09:10:12 +01:00
|
|
|
find %{buildroot}/%{_datadir}/%{name} \
|
2013-12-02 04:01:20 +01:00
|
|
|
\( -name '*.module' -o -name '*.image' -o -name '*.exec' \) -print0 | \
|
|
|
|
xargs --no-run-if-empty -0 chmod a-x
|
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
# Script that makes part of grub.cfg persist across updates
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 755 %{SOURCE1} %{buildroot}/%{_sysconfdir}/grub.d/
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2012-09-23 21:04:15 +02:00
|
|
|
# Script to generate memtest86+ menu entry
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 755 %{SOURCE7} %{buildroot}/%{_sysconfdir}/grub.d/
|
2012-09-23 21:04:15 +02:00
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
# Ghost config file
|
2019-02-12 09:10:12 +01:00
|
|
|
install -d %{buildroot}/boot/%{name}
|
|
|
|
touch %{buildroot}/boot/%{name}/grub.cfg
|
2010-03-15 00:45:00 +01:00
|
|
|
|
|
|
|
# Remove devel files
|
2019-02-12 09:10:12 +01:00
|
|
|
rm %{buildroot}/%{_datadir}/%{name}/*/*.h
|
2012-11-13 09:53:25 +01:00
|
|
|
%if 0%{?suse_version} >= 1140
|
2019-02-12 09:10:12 +01:00
|
|
|
rm %{buildroot}/%{_datadir}/%{name}/*.h
|
2012-11-13 09:53:25 +01:00
|
|
|
%endif
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
# Defaults
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 644 -D %{SOURCE2} %{buildroot}/%{_sysconfdir}/default/grub
|
|
|
|
install -m 755 -D %{SOURCE6} %{buildroot}/%{_sbindir}/grub2-once
|
|
|
|
install -m 755 -D %{SOURCE12} %{buildroot}/%{_libdir}/snapper/plugins/grub
|
|
|
|
install -m 755 -D %{SOURCE14} %{buildroot}/%{_sysconfdir}/grub.d/80_suse_btrfs_snapshot
|
2015-04-13 19:58:16 +02:00
|
|
|
%if 0%{?has_systemd:1}
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 644 -D %{SOURCE15} %{buildroot}/%{_unitdir}/grub2-once.service
|
|
|
|
install -m 755 -D %{SOURCE17} %{buildroot}/%{_libdir}/systemd/system-sleep/grub2.sleep
|
2014-10-01 09:24:29 +02:00
|
|
|
%endif
|
2019-02-12 09:10:12 +01:00
|
|
|
install -m 755 -D %{SOURCE18} %{buildroot}/%{_sbindir}/grub2-check-default
|
2021-07-08 11:03:14 +02:00
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
install -m 755 -D %{SOURCE19} %{buildroot}/%{_libexecdir}/grub2-instdev-fixup.pl
|
|
|
|
%endif
|
2014-02-05 04:57:12 +01:00
|
|
|
|
2019-02-12 09:10:12 +01:00
|
|
|
R="%{buildroot}"
|
2015-04-13 19:58:16 +02:00
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
%else
|
|
|
|
rm -f $R%{_sysconfdir}/grub.d/20_memtest86+
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%ifarch ppc ppc64 ppc64le
|
2020-07-24 17:08:17 +02:00
|
|
|
rm -f $R%{_sysconfdir}/grub.d/95_textmode
|
2015-04-13 19:58:16 +02:00
|
|
|
%else
|
|
|
|
rm -f $R%{_sysconfdir}/grub.d/20_ppc_terminfo
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%ifarch s390x
|
|
|
|
mv $R%{_sysconfdir}/{grub.d,default}/zipl2grub.conf.in
|
|
|
|
chmod 600 $R%{_sysconfdir}/default/zipl2grub.conf.in
|
|
|
|
|
|
|
|
%define dracutlibdir %{_prefix}/lib/dracut
|
|
|
|
%define dracutgrubmoddir %{dracutlibdir}/modules.d/99grub2
|
|
|
|
install -m 755 -d $R%{dracutgrubmoddir}
|
|
|
|
for f in module-setup.sh grub2.sh; do
|
2019-01-23 12:53:47 +01:00
|
|
|
mv $R%{_datadir}/%{name}/%{grubarch}/dracut-$f $R%{dracutgrubmoddir}/$f
|
2015-04-13 19:58:16 +02:00
|
|
|
done
|
2019-05-20 08:03:38 +02:00
|
|
|
mv $R%{_datadir}/%{name}/%{grubarch}/dracut-zipl-refresh \
|
|
|
|
$R%{_datadir}/%{name}/zipl-refresh
|
2015-04-13 19:58:16 +02:00
|
|
|
rm -f $R%{_sysconfdir}/grub.d/30_os-prober
|
|
|
|
|
|
|
|
perl -ni -e '
|
|
|
|
sub END() {
|
|
|
|
print "\n# on s390x always:\nGRUB_DISABLE_OS_PROBER=true\n";
|
|
|
|
}
|
|
|
|
if ( s{^#?(GRUB_TERMINAL)=(console|gfxterm)}{$1=console} ) {
|
|
|
|
$_ .= "GRUB_GFXPAYLOAD_LINUX=text\n";
|
|
|
|
}
|
|
|
|
if ( m{^# The resolution used on graphical} ||
|
|
|
|
m{^# # note that you can use only modes} ||
|
|
|
|
m{^# you can see them in real GRUB} ||
|
|
|
|
m{^#?GRUB_GFXMODE=} ) {
|
|
|
|
next;
|
|
|
|
}
|
|
|
|
s{openSUSE}{SUSE Linux Enterprise Server} if (m{^GRUB_DISTRIBUTOR});
|
|
|
|
print;
|
2019-02-12 09:10:12 +01:00
|
|
|
' %{buildroot}/%{_sysconfdir}/default/grub
|
2015-04-13 19:58:16 +02:00
|
|
|
%else
|
|
|
|
%endif
|
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
# bsc#1205554 move the zfs modules into extras packages
|
|
|
|
# EXTRA_PATTERN='pattern1|pattern2|pattern3|...'
|
|
|
|
EXTRA_PATTERN="zfs"
|
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
find %{buildroot}/%{_datadir}/%{name}/%{grubxenarch}/ -type f | sed 's,%{buildroot},,' > %{grubxenarch}-all.lst
|
|
|
|
grep -v -E ${EXTRA_PATTERN} %{grubxenarch}-all.lst > %{grubxenarch}.lst
|
|
|
|
grep -E ${EXTRA_PATTERN} %{grubxenarch}-all.lst > %{grubxenarch}-extras.lst
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%ifarch %{efi}
|
|
|
|
find %{buildroot}/%{_datadir}/%{name}/%{grubefiarch}/ -name '*.mod' | sed 's,%{buildroot},,' > %{grubefiarch}-mod-all.lst
|
|
|
|
grep -v -E ${EXTRA_PATTERN} %{grubefiarch}-mod-all.lst > %{grubefiarch}-mod.lst
|
|
|
|
grep -E ${EXTRA_PATTERN} %{grubefiarch}-mod-all.lst > %{grubefiarch}-mod-extras.lst
|
|
|
|
%endif
|
|
|
|
|
|
|
|
find %{buildroot}/%{_datadir}/%{name}/%{grubarch}/ -name '*.mod' | sed 's,%{buildroot},,' > %{grubarch}-mod-all.lst
|
|
|
|
grep -v -E ${EXTRA_PATTERN} %{grubarch}-mod-all.lst > %{grubarch}-mod.lst
|
|
|
|
grep -E ${EXTRA_PATTERN} %{grubarch}-mod-all.lst > %{grubarch}-mod-extras.lst
|
|
|
|
|
2012-06-29 06:59:42 +02:00
|
|
|
%find_lang %{name}
|
2011-11-28 12:53:25 +01:00
|
|
|
%fdupes %buildroot%{_bindir}
|
2015-04-13 19:58:16 +02:00
|
|
|
%fdupes %buildroot%{_libdir}
|
2019-01-23 12:53:47 +01:00
|
|
|
%fdupes %buildroot%{_datadir}
|
2010-03-15 00:45:00 +01:00
|
|
|
|
2016-05-23 17:22:13 +02:00
|
|
|
%pre
|
|
|
|
%service_add_pre grub2-once.service
|
|
|
|
|
2010-03-15 00:45:00 +01:00
|
|
|
%post
|
2016-05-23 17:22:13 +02:00
|
|
|
%service_add_post grub2-once.service
|
2011-05-09 10:48:37 +02:00
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%if ! 0%{?only_efi:1}
|
2013-03-12 10:56:29 +01:00
|
|
|
|
|
|
|
%post %{grubarch}
|
2021-04-23 05:44:52 +02:00
|
|
|
%if 0%{?update_bootloader_check_type_reinit_post:1}
|
2017-01-13 15:51:18 +01:00
|
|
|
%update_bootloader_check_type_reinit_post grub2
|
|
|
|
%else
|
2012-09-23 21:04:15 +02:00
|
|
|
# To check by current loader settings
|
|
|
|
if [ -f %{_sysconfdir}/sysconfig/bootloader ]; then
|
|
|
|
. %{_sysconfdir}/sysconfig/bootloader
|
|
|
|
fi
|
|
|
|
|
|
|
|
# If the grub is the current loader, we'll handle the grub2 testing entry
|
|
|
|
if [ "x${LOADER_TYPE}" = "xgrub" ]; then
|
|
|
|
|
|
|
|
exec >/dev/null 2>&1
|
|
|
|
|
|
|
|
# check if entry for grub2's core.img exists in the config
|
|
|
|
# if yes, we will correct obsoleted path and update grub2 stuff and config to make it work
|
|
|
|
# if no, do nothing
|
|
|
|
if [ -f /boot/grub/menu.lst ]; then
|
|
|
|
|
|
|
|
# If grub config contains obsolete core.img path, remove and use the new one
|
|
|
|
if /usr/bin/grep -l "^\s*kernel\s*.*/boot/%{name}/core.img" /boot/grub/menu.lst; then
|
|
|
|
/sbin/update-bootloader --remove --image /boot/%{name}/core.img || true
|
|
|
|
/sbin/update-bootloader --add --image /boot/%{name}/i386-pc/core.img --name "GNU GRUB 2" || true
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Install grub2 stuff and config to make the grub2 testing entry to work with updated version
|
|
|
|
if /usr/bin/grep -l "^\s*kernel\s*.*/boot/%{name}/i386-pc/core.img" /boot/grub/menu.lst; then
|
|
|
|
# Determine the partition with /boot
|
2014-11-17 04:10:49 +01:00
|
|
|
BOOT_PARTITION=$(df -h /boot | sed -n '2s/[[:blank:]].*//p')
|
2012-09-23 21:04:15 +02:00
|
|
|
# Generate core.img, but don't let it be installed in boot sector
|
2014-01-06 04:50:43 +01:00
|
|
|
%{name}-install --no-bootsector $BOOT_PARTITION || true
|
2012-09-23 21:04:15 +02:00
|
|
|
# Create a working grub2 config, otherwise that entry is un-bootable
|
|
|
|
/usr/sbin/grub2-mkconfig -o /boot/%{name}/grub.cfg
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
elif [ "x${LOADER_TYPE}" = "xgrub2" ]; then
|
|
|
|
|
2013-09-12 17:29:56 +02:00
|
|
|
# It's enought to call update-bootloader to install grub2 and update it's config
|
|
|
|
# Use new --reinit, if not available use --refresh
|
|
|
|
# --reinit: install and update bootloader config
|
|
|
|
# --refresh: update bootloader config
|
|
|
|
/sbin/update-bootloader --reinit 2>&1 | grep -q 'Unknown option: reinit' &&
|
2012-09-23 21:04:15 +02:00
|
|
|
/sbin/update-bootloader --refresh || true
|
|
|
|
fi
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
|
|
|
|
2017-01-13 15:51:18 +01:00
|
|
|
%posttrans %{grubarch}
|
|
|
|
%{?update_bootloader_posttrans}
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
2011-11-28 12:53:25 +01:00
|
|
|
%ifarch %{efi}
|
2012-10-26 17:06:09 +02:00
|
|
|
|
2013-03-20 17:58:19 +01:00
|
|
|
%post %{grubefiarch}
|
2021-04-23 05:44:52 +02:00
|
|
|
%if 0%{?update_bootloader_check_type_reinit_post:1}
|
2017-01-13 15:51:18 +01:00
|
|
|
%update_bootloader_check_type_reinit_post grub2-efi
|
|
|
|
%else
|
2013-03-20 17:58:19 +01:00
|
|
|
# To check by current loader settings
|
|
|
|
if [ -f %{_sysconfdir}/sysconfig/bootloader ]; then
|
|
|
|
. %{_sysconfdir}/sysconfig/bootloader
|
2012-09-23 21:04:15 +02:00
|
|
|
fi
|
2012-10-26 17:06:09 +02:00
|
|
|
|
2013-03-20 17:58:19 +01:00
|
|
|
if [ "x${LOADER_TYPE}" = "xgrub2-efi" ]; then
|
2012-10-26 17:06:09 +02:00
|
|
|
|
2013-03-20 17:58:19 +01:00
|
|
|
if [ -d /boot/%{name}-efi ]; then
|
2013-03-12 10:56:29 +01:00
|
|
|
# Migrate settings to standard prefix /boot/grub2
|
|
|
|
for i in custom.cfg grubenv; do
|
|
|
|
[ -f /boot/%{name}-efi/$i ] && cp -a /boot/%{name}-efi/$i /boot/%{name} || :
|
|
|
|
done
|
2012-10-26 17:06:09 +02:00
|
|
|
|
|
|
|
fi
|
|
|
|
|
2013-09-12 17:29:56 +02:00
|
|
|
# It's enough to call update-bootloader to install grub2 and update it's config
|
|
|
|
# Use new --reinit, if not available use --refresh
|
|
|
|
# --reinit: install and update bootloader config
|
|
|
|
# --refresh: update bootloader config
|
|
|
|
/sbin/update-bootloader --reinit 2>&1 | grep -q 'Unknown option: reinit' &&
|
2013-03-12 10:56:29 +01:00
|
|
|
/sbin/update-bootloader --refresh || true
|
|
|
|
fi
|
|
|
|
|
2013-03-20 17:58:19 +01:00
|
|
|
if [ -d /boot/%{name}-efi ]; then
|
|
|
|
mv /boot/%{name}-efi /boot/%{name}-efi.rpmsave
|
|
|
|
fi
|
|
|
|
|
2012-10-26 17:06:09 +02:00
|
|
|
exit 0
|
2011-11-28 12:53:25 +01:00
|
|
|
%endif
|
2011-08-26 10:01:42 +02:00
|
|
|
|
2017-01-13 15:51:18 +01:00
|
|
|
%posttrans %{grubefiarch}
|
|
|
|
%{?update_bootloader_posttrans}
|
|
|
|
|
|
|
|
%endif
|
|
|
|
|
2010-02-18 15:10:48 +01:00
|
|
|
%preun
|
2016-05-23 17:22:13 +02:00
|
|
|
%service_del_preun grub2-once.service
|
2017-01-13 15:51:18 +01:00
|
|
|
# We did not add core.img to grub1 menu.lst in new update-bootloader macro as what
|
2019-01-10 10:57:18 +01:00
|
|
|
# the old %%post ever did, then the %%preun counterpart which removed the added core.img
|
|
|
|
# entry from old %%post can be skipped entirely if having new macro in use.
|
2017-01-13 15:51:18 +01:00
|
|
|
%if ! 0%{?update_bootloader_posttrans:1}%{?only_efi:1}
|
2020-03-18 14:48:10 +01:00
|
|
|
if [ $1 = 0 ]; then
|
2012-09-23 21:04:15 +02:00
|
|
|
# To check by current loader settings
|
|
|
|
if [ -f %{_sysconfdir}/sysconfig/bootloader ]; then
|
|
|
|
. %{_sysconfdir}/sysconfig/bootloader
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "x${LOADER_TYPE}" = "xgrub" ]; then
|
|
|
|
|
|
|
|
exec >/dev/null 2>&1
|
|
|
|
|
|
|
|
if [ -f /boot/grub/menu.lst ]; then
|
|
|
|
|
|
|
|
# Remove grub2 testing entry in menu.lst if has any
|
|
|
|
for i in /boot/%{name}/core.img /boot/%{name}/i386-pc/core.img; do
|
|
|
|
if /usr/bin/grep -l "^\s*kernel\s*.*$i" /boot/grub/menu.lst; then
|
|
|
|
/sbin/update-bootloader --remove --image "$i" || true
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Cleanup config, to not confuse some tools determining bootloader in use
|
|
|
|
rm -f /boot/%{name}/grub.cfg
|
|
|
|
|
|
|
|
# Cleanup installed files
|
|
|
|
# Unless grub2 provides grub2-uninstall, we don't remove any file because
|
|
|
|
# we have no idea what's been installed. (And a blind remove is dangerous
|
|
|
|
# to remove user's or other package's file accidently ..)
|
|
|
|
fi
|
2011-05-09 10:48:37 +02:00
|
|
|
fi
|
2020-03-18 14:48:10 +01:00
|
|
|
%endif
|
2011-05-09 10:48:37 +02:00
|
|
|
|
2016-05-23 17:22:13 +02:00
|
|
|
%postun
|
|
|
|
%service_del_postun grub2-once.service
|
|
|
|
|
2017-02-16 08:12:06 +01:00
|
|
|
%files -f %{name}.lang
|
2010-02-18 15:10:48 +01:00
|
|
|
%defattr(-,root,root,-)
|
2019-03-19 07:52:40 +01:00
|
|
|
%if 0%{?suse_version} < 1500
|
|
|
|
%doc COPYING
|
|
|
|
%else
|
2018-05-25 09:11:43 +02:00
|
|
|
%license COPYING
|
2019-03-19 07:52:40 +01:00
|
|
|
%endif
|
2021-09-03 07:47:20 +02:00
|
|
|
%doc AUTHORS
|
2018-05-25 09:11:43 +02:00
|
|
|
%doc NEWS README
|
2013-02-15 17:18:37 +01:00
|
|
|
%doc THANKS TODO ChangeLog
|
2014-01-16 04:44:50 +01:00
|
|
|
%doc docs/autoiso.cfg docs/osdetect.cfg
|
2015-04-13 19:58:16 +02:00
|
|
|
%ifarch s390x
|
|
|
|
%doc README.ibm3215
|
|
|
|
%endif
|
2012-06-29 06:59:42 +02:00
|
|
|
%dir /boot/%{name}
|
2021-12-27 07:21:59 +01:00
|
|
|
%ghost %attr(600, root, root) /boot/%{name}/grub.cfg
|
2011-05-09 10:48:37 +02:00
|
|
|
%{_sysconfdir}/bash_completion.d/grub
|
2012-03-29 13:57:50 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/default/grub
|
2010-02-18 15:10:48 +01:00
|
|
|
%dir %{_sysconfdir}/grub.d
|
|
|
|
%{_sysconfdir}/grub.d/README
|
2018-07-12 09:27:34 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/00_header
|
2022-09-19 08:10:23 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/05_crypttab
|
2018-07-12 09:27:34 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/10_linux
|
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/20_linux_xen
|
2021-07-08 11:03:14 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/30_uefi-firmware
|
2018-07-05 06:19:55 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/40_custom
|
2018-07-12 09:27:34 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/41_custom
|
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/90_persistent
|
2020-07-24 17:08:17 +02:00
|
|
|
%ifnarch ppc ppc64 ppc64le
|
2018-07-12 09:27:34 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/95_textmode
|
2020-07-24 17:08:17 +02:00
|
|
|
%endif
|
2019-01-10 10:57:18 +01:00
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/20_memtest86+
|
|
|
|
%endif
|
|
|
|
%ifarch ppc ppc64 ppc64le
|
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/20_ppc_terminfo
|
|
|
|
%endif
|
|
|
|
%ifarch s390x
|
|
|
|
%config(noreplace) %{_sysconfdir}/default/zipl2grub.conf.in
|
|
|
|
%{dracutlibdir}
|
|
|
|
%{_sbindir}/%{name}-zipl-setup
|
2019-05-20 08:03:38 +02:00
|
|
|
%{_datadir}/%{name}/zipl-refresh
|
2019-01-10 10:57:18 +01:00
|
|
|
%endif
|
2015-04-13 19:58:16 +02:00
|
|
|
%{_sbindir}/%{name}-install
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_sbindir}/%{name}-mkconfig
|
2012-08-31 09:28:14 +02:00
|
|
|
%{_sbindir}/%{name}-once
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_sbindir}/%{name}-probe
|
|
|
|
%{_sbindir}/%{name}-reboot
|
|
|
|
%{_sbindir}/%{name}-set-default
|
2018-02-01 05:09:06 +01:00
|
|
|
%{_sbindir}/%{name}-check-default
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_bindir}/%{name}-editenv
|
2014-01-06 04:50:43 +01:00
|
|
|
%{_bindir}/%{name}-file
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_bindir}/%{name}-fstest
|
|
|
|
%{_bindir}/%{name}-kbdcomp
|
|
|
|
%{_bindir}/%{name}-menulst2cfg
|
|
|
|
%{_bindir}/%{name}-mkfont
|
|
|
|
%{_bindir}/%{name}-mkimage
|
|
|
|
%{_bindir}/%{name}-mklayout
|
2013-06-18 19:11:34 +02:00
|
|
|
%{_bindir}/%{name}-mknetdir
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_bindir}/%{name}-mkpasswd-pbkdf2
|
|
|
|
%{_bindir}/%{name}-mkrelpath
|
|
|
|
%{_bindir}/%{name}-mkrescue
|
|
|
|
%{_bindir}/%{name}-mkstandalone
|
2013-06-18 19:11:34 +02:00
|
|
|
%{_bindir}/%{name}-render-label
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_bindir}/%{name}-script-check
|
2017-02-17 07:55:04 +01:00
|
|
|
%{_bindir}/%{name}-syslinux2cfg
|
2022-08-11 12:30:46 +02:00
|
|
|
%{_bindir}/%{name}-protect
|
2015-04-13 19:58:16 +02:00
|
|
|
%if 0%{?has_systemd:1}
|
|
|
|
%{_unitdir}/grub2-once.service
|
2014-04-02 12:35:03 +02:00
|
|
|
%endif
|
2012-06-29 06:59:42 +02:00
|
|
|
%dir %{_datadir}/%{name}
|
2014-01-16 04:44:50 +01:00
|
|
|
%dir %{_datadir}/%{name}/themes
|
2012-11-13 09:53:25 +01:00
|
|
|
%if 0%{?suse_version} >= 1140
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_datadir}/%{name}/*.pf2
|
2012-11-13 09:53:25 +01:00
|
|
|
%endif
|
2012-06-29 06:59:42 +02:00
|
|
|
%{_datadir}/%{name}/grub-mkconfig_lib
|
2011-05-09 10:48:37 +02:00
|
|
|
%{_infodir}/grub-dev.info*
|
|
|
|
%{_infodir}/%{name}.info*
|
2013-04-16 22:25:22 +02:00
|
|
|
%{_mandir}/man1/%{name}-editenv.1.*
|
2014-01-06 04:50:43 +01:00
|
|
|
%{_mandir}/man1/%{name}-file.1.*
|
2013-04-16 22:25:22 +02:00
|
|
|
%{_mandir}/man1/%{name}-fstest.1.*
|
|
|
|
%{_mandir}/man1/%{name}-kbdcomp.1.*
|
|
|
|
%{_mandir}/man1/%{name}-menulst2cfg.1.*
|
|
|
|
%{_mandir}/man1/%{name}-mkfont.1.*
|
|
|
|
%{_mandir}/man1/%{name}-mkimage.1.*
|
|
|
|
%{_mandir}/man1/%{name}-mklayout.1.*
|
2013-06-18 19:11:34 +02:00
|
|
|
%{_mandir}/man1/%{name}-mknetdir.1.*
|
2013-04-16 22:25:22 +02:00
|
|
|
%{_mandir}/man1/%{name}-mkpasswd-pbkdf2.1.*
|
|
|
|
%{_mandir}/man1/%{name}-mkrelpath.1.*
|
|
|
|
%{_mandir}/man1/%{name}-mkrescue.1.*
|
|
|
|
%{_mandir}/man1/%{name}-mkstandalone.1.*
|
2013-06-18 19:11:34 +02:00
|
|
|
%{_mandir}/man1/%{name}-render-label.1.*
|
2013-04-16 22:25:22 +02:00
|
|
|
%{_mandir}/man1/%{name}-script-check.1.*
|
2017-02-17 07:55:04 +01:00
|
|
|
%{_mandir}/man1/%{name}-syslinux2cfg.1.*
|
2015-04-13 19:58:16 +02:00
|
|
|
%{_mandir}/man8/%{name}-install.8.*
|
2013-04-16 22:25:22 +02:00
|
|
|
%{_mandir}/man8/%{name}-mkconfig.8.*
|
|
|
|
%{_mandir}/man8/%{name}-probe.8.*
|
|
|
|
%{_mandir}/man8/%{name}-reboot.8.*
|
|
|
|
%{_mandir}/man8/%{name}-set-default.8.*
|
2017-02-16 08:12:06 +01:00
|
|
|
%if %{emu}
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_bindir}/%{name}-emu
|
2014-01-27 04:17:41 +01:00
|
|
|
%{_mandir}/man1/%{name}-emu.1.*
|
2017-02-16 08:12:06 +01:00
|
|
|
%endif
|
|
|
|
%ifnarch s390x
|
2018-07-12 09:27:34 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/30_os-prober
|
2017-02-17 07:55:04 +01:00
|
|
|
%{_bindir}/%{name}-glue-efi
|
2015-04-13 19:58:16 +02:00
|
|
|
%{_bindir}/%{name}-mount
|
|
|
|
%{_sbindir}/%{name}-bios-setup
|
|
|
|
%{_sbindir}/%{name}-macbless
|
|
|
|
%{_sbindir}/%{name}-ofpathname
|
|
|
|
%{_sbindir}/%{name}-sparc64-setup
|
2017-02-17 07:55:04 +01:00
|
|
|
%{_mandir}/man1/%{name}-glue-efi.1.*
|
2015-04-13 19:58:16 +02:00
|
|
|
%{_mandir}/man1/%{name}-mount.1.*
|
|
|
|
%{_mandir}/man8/%{name}-bios-setup.8.*
|
2016-03-01 13:06:29 +01:00
|
|
|
%{_mandir}/man8/%{name}-macbless.8.*
|
2015-04-13 19:58:16 +02:00
|
|
|
%{_mandir}/man8/%{name}-ofpathname.8.*
|
|
|
|
%{_mandir}/man8/%{name}-sparc64-setup.8.*
|
2014-01-27 04:17:41 +01:00
|
|
|
%endif
|
2010-02-18 15:10:48 +01:00
|
|
|
|
2014-01-16 04:44:50 +01:00
|
|
|
%files branding-upstream
|
2015-04-13 19:58:16 +02:00
|
|
|
%defattr(-,root,root,-)
|
2014-01-16 04:44:50 +01:00
|
|
|
%{_datadir}/%{name}/themes/starfield
|
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%if ! 0%{?only_efi:1}
|
2013-02-15 17:18:37 +01:00
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%files %{grubarch} -f %{grubarch}-mod.lst
|
2012-11-28 10:34:03 +01:00
|
|
|
%defattr(-,root,root,-)
|
2019-01-23 12:53:47 +01:00
|
|
|
%dir %{_datadir}/%{name}/%{grubarch}
|
2014-02-05 04:57:12 +01:00
|
|
|
%ifarch ppc ppc64 ppc64le
|
2019-01-10 10:57:18 +01:00
|
|
|
# This is intentionally "grub.chrp" and not "%%{name}.chrp"
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/grub.chrp
|
2022-01-12 08:31:19 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/grub.elf
|
|
|
|
%{_datadir}/%{name}/%{grubarch}/grub.der
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/bootinfo.txt
|
2013-06-18 19:11:34 +02:00
|
|
|
%endif
|
2014-12-05 07:26:19 +01:00
|
|
|
%ifnarch ppc ppc64 ppc64le s390x %{arm}
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/*.image
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/*.img
|
|
|
|
%{_datadir}/%{name}/%{grubarch}/*.lst
|
2012-11-28 10:34:03 +01:00
|
|
|
%ifarch x86_64
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/efiemu*.o
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubarch}/kernel.exec
|
|
|
|
%{_datadir}/%{name}/%{grubarch}/modinfo.sh
|
2021-07-08 11:03:14 +02:00
|
|
|
%ifarch %{ix86} x86_64
|
|
|
|
%{_libexecdir}/%{name}-instdev-fixup.pl
|
|
|
|
%endif
|
2020-03-18 14:48:10 +01:00
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%files %{grubarch}-extras -f %{grubarch}-mod-extras.lst
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%dir %{_datadir}/%{name}/%{grubarch}
|
|
|
|
|
2020-03-18 14:48:10 +01:00
|
|
|
%files %{grubarch}-debug
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%{_datadir}/%{name}/%{grubarch}/gdb_grub
|
|
|
|
%{_datadir}/%{name}/%{grubarch}/gmodule.pl
|
|
|
|
%{_datadir}/%{name}/%{grubarch}/*.module
|
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%endif
|
2011-08-26 10:01:42 +02:00
|
|
|
|
2012-11-28 10:34:03 +01:00
|
|
|
%ifarch %{efi}
|
2013-02-15 17:18:37 +01:00
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%files %{grubefiarch} -f %{grubefiarch}-mod.lst
|
2012-11-28 10:34:03 +01:00
|
|
|
%defattr(-,root,root,-)
|
2019-01-23 12:53:47 +01:00
|
|
|
%dir %{_datadir}/%{name}/%{grubefiarch}
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/grub.efi
|
2019-10-18 12:18:53 +02:00
|
|
|
%ifarch x86_64
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/grub-tpm.efi
|
2019-10-18 12:18:53 +02:00
|
|
|
%endif
|
2019-01-23 12:53:47 +01:00
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/*.img
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/*.lst
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/kernel.exec
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/modinfo.sh
|
2019-01-10 10:57:18 +01:00
|
|
|
%dir %{sysefibasedir}
|
2013-02-19 17:44:15 +01:00
|
|
|
%dir %{sysefidir}
|
|
|
|
%{sysefidir}/grub.efi
|
2019-01-23 12:53:47 +01:00
|
|
|
%if 0%{?suse_version} < 1600
|
2021-02-18 11:15:28 +01:00
|
|
|
%ifarch x86_64
|
|
|
|
# provide compatibility sym-link for previous shim-install and kiwi
|
|
|
|
%dir /usr/lib64/efi
|
|
|
|
/usr/lib64/efi/DEPRECATED
|
|
|
|
/usr/lib64/efi/grub.efi
|
|
|
|
%endif
|
2019-01-10 10:57:18 +01:00
|
|
|
%endif
|
2013-03-28 12:00:02 +01:00
|
|
|
|
2018-12-21 09:21:48 +01:00
|
|
|
%ifarch x86_64 aarch64
|
2013-03-28 12:00:02 +01:00
|
|
|
%{sysefidir}/grub.der
|
|
|
|
%endif
|
2020-03-18 14:48:10 +01:00
|
|
|
|
2023-01-06 03:48:00 +01:00
|
|
|
%files %{grubefiarch}-extras -f %{grubefiarch}-mod-extras.lst
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%dir %{_datadir}/%{name}/%{grubefiarch}
|
|
|
|
|
2020-03-18 14:48:10 +01:00
|
|
|
%files %{grubefiarch}-debug
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/gdb_grub
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/gmodule.pl
|
|
|
|
%{_datadir}/%{name}/%{grubefiarch}/*.module
|
|
|
|
|
2011-08-26 10:01:42 +02:00
|
|
|
%endif
|
2013-01-08 03:50:55 +01:00
|
|
|
|
2014-02-08 11:52:59 +01:00
|
|
|
%files snapper-plugin
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%dir %{_libdir}/snapper
|
|
|
|
%dir %{_libdir}/snapper/plugins
|
2018-07-12 09:27:34 +02:00
|
|
|
%config(noreplace) %{_sysconfdir}/grub.d/80_suse_btrfs_snapshot
|
2014-02-08 11:52:59 +01:00
|
|
|
%{_libdir}/snapper/plugins/grub
|
|
|
|
|
2015-02-16 08:43:46 +01:00
|
|
|
%ifarch %{ix86} x86_64
|
2023-01-06 03:48:00 +01:00
|
|
|
%files %{grubxenarch} -f %{grubxenarch}.lst
|
2019-02-14 16:51:15 +01:00
|
|
|
%defattr(-,root,root,-)
|
2019-01-23 12:53:47 +01:00
|
|
|
%dir %{_datadir}/%{name}/%{grubxenarch}
|
2021-02-18 11:15:28 +01:00
|
|
|
# provide compatibility sym-link for VM definitions pointing to old location
|
|
|
|
%dir %{_libdir}/%{name}
|
|
|
|
%{_libdir}/%{name}/%{grubxenarch}
|
2023-01-06 03:48:00 +01:00
|
|
|
|
|
|
|
%files %{grubxenarch}-extras -f %{grubxenarch}-extras.lst
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%dir %{_datadir}/%{name}/%{grubxenarch}
|
2014-04-10 10:09:18 +02:00
|
|
|
%endif
|
|
|
|
|
2015-08-26 11:54:23 +02:00
|
|
|
%if 0%{?has_systemd:1}
|
|
|
|
%files systemd-sleep-plugin
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%dir %{_libdir}/systemd/system-sleep
|
|
|
|
%{_libdir}/systemd/system-sleep/grub2.sleep
|
|
|
|
%endif
|
|
|
|
|
2013-01-08 03:50:55 +01:00
|
|
|
%changelog
|