forked from pool/grub2
b05b350108
- snapper rollback support (fate#317062) * add btrfs_follow_default.patch * add suse_btrfs_grub2_install.sh * add 80_suse_btrfs_snapshot * refresh grub2-snapper-plugin.sh - add grub2-x86_64-xen subpackage (bnc#863821) - ieee1275: check for IBM pseries emulated machine (bnc#869964) - added patches: * grub2-ppc64-build-ppc64-32bit.patch - Build ppc64 as 32bit - added patches: * grub2-ppc64-build-ppc64-32bit.patch - Rename PowerPC patches so it will have architecture in it's name - added patches: * grub2-ppc64le-01-Add-Little-Endian-support-for-Power64-to-the-build.patch * grub2-ppc64le-02-Build-grub-as-O1-until-we-add-savegpr-and-restgpr-ro.patch * grub2-ppc64le-03-disable-creation-of-vsx-and-altivec-instructions.patch * grub2-ppc64le-04-powerpc64-LE-s-linker-knows-how-to-handle-the-undefi.patch * grub2-ppc64le-05-grub-install-can-now-recognize-and-install-a-LE-grub.patch * grub2-ppc64le-06-set-the-ABI-version-to-0x02-in-the-e_flag-of-the-PPC.patch * grub2-ppc64le-07-Add-IEEE1275_ADDR-helper.patch * grub2-ppc64le-08-Fix-some-more-warnings-when-casting.patch * grub2-ppc64le-09-Add-powerpc64-types.patch * grub2-ppc64le-10-powerpc64-is-not-necessarily-BigEndian-anymore.patch * grub2-ppc64le-11-Fix-warnings-when-building-powerpc-linux-loader-64bi.patch * grub2-ppc64le-12-GRUB_ELF_R_PPC_-processing-is-applicable-only-for-32.patch OBS-URL: https://build.opensuse.org/request/show/228323 OBS-URL: https://build.opensuse.org/package/show/Base:System/grub2?expand=0&rev=81
100 lines
3.3 KiB
Diff
100 lines
3.3 KiB
Diff
Index: grub-2.02~beta2/util/grub-mkconfig_lib.in
|
|
===================================================================
|
|
--- grub-2.02~beta2.orig/util/grub-mkconfig_lib.in
|
|
+++ grub-2.02~beta2/util/grub-mkconfig_lib.in
|
|
@@ -49,7 +49,12 @@ grub_warn ()
|
|
|
|
make_system_path_relative_to_its_root ()
|
|
{
|
|
+ if [ "x${SUSE_BTRFS_SNAPSHOT_BOOTING}" = "xtrue" ] &&
|
|
+ [ "x${GRUB_FS}" = "xbtrfs" ] ; then
|
|
+ readlink -f "$1"
|
|
+ else
|
|
"${grub_mkrelpath}" "$1"
|
|
+ fi
|
|
}
|
|
|
|
is_path_readable_by_grub ()
|
|
Index: grub-2.02~beta2/util/grub.d/00_header.in
|
|
===================================================================
|
|
--- grub-2.02~beta2.orig/util/grub.d/00_header.in
|
|
+++ grub-2.02~beta2/util/grub.d/00_header.in
|
|
@@ -27,6 +27,14 @@ export TEXTDOMAINDIR="@localedir@"
|
|
|
|
. "@datadir@/@PACKAGE@/grub-mkconfig_lib"
|
|
|
|
+if [ "x${SUSE_BTRFS_SNAPSHOT_BOOTING}" = "xtrue" ] &&
|
|
+ [ "x${GRUB_FS}" = "xbtrfs" ] ; then
|
|
+ cat <<EOF
|
|
+set btrfs_relative_path="y"
|
|
+export btrfs_relative_path
|
|
+EOF
|
|
+fi
|
|
+
|
|
# Do this as early as possible, since other commands might depend on it.
|
|
# (e.g. the `loadfont' command might need lvm or raid modules)
|
|
for i in ${GRUB_PRELOAD_MODULES} ; do
|
|
@@ -43,7 +51,9 @@ if [ "x${GRUB_DEFAULT_BUTTON}" = "xsaved
|
|
if [ "x${GRUB_TIMEOUT_BUTTON}" = "x" ] ; then GRUB_TIMEOUT_BUTTON="$GRUB_TIMEOUT" ; fi
|
|
|
|
cat << EOF
|
|
-if [ -s \$prefix/grubenv ]; then
|
|
+if [ -f \${config_directory}/grubenv ]; then
|
|
+ load_env -f \${config_directory}/grubenv
|
|
+elif [ -s \$prefix/grubenv ]; then
|
|
load_env
|
|
fi
|
|
EOF
|
|
Index: grub-2.02~beta2/util/grub-mkconfig.in
|
|
===================================================================
|
|
--- grub-2.02~beta2.orig/util/grub-mkconfig.in
|
|
+++ grub-2.02~beta2/util/grub-mkconfig.in
|
|
@@ -250,7 +250,8 @@ export GRUB_DEFAULT \
|
|
GRUB_OS_PROBER_SKIP_LIST \
|
|
GRUB_DISABLE_SUBMENU \
|
|
GRUB_CMDLINE_LINUX_RECOVERY \
|
|
- GRUB_USE_LINUXEFI
|
|
+ GRUB_USE_LINUXEFI \
|
|
+ SUSE_BTRFS_SNAPSHOT_BOOTING
|
|
|
|
if test "x${grub_cfg}" != "x"; then
|
|
rm -f "${grub_cfg}.new"
|
|
Index: grub-2.02~beta2/util/grub.d/10_linux.in
|
|
===================================================================
|
|
--- grub-2.02~beta2.orig/util/grub.d/10_linux.in
|
|
+++ grub-2.02~beta2/util/grub.d/10_linux.in
|
|
@@ -53,10 +53,14 @@ fi
|
|
|
|
case x"$GRUB_FS" in
|
|
xbtrfs)
|
|
+ if [ "x${SUSE_BTRFS_SNAPSHOT_BOOTING}" = "xtrue" ]; then
|
|
+ GRUB_CMDLINE_LINUX="${GRUB_CMDLINE_LINUX} \${extra_cmdline}"
|
|
+ else
|
|
rootsubvol="`make_system_path_relative_to_its_root /`"
|
|
rootsubvol="${rootsubvol#/}"
|
|
if [ "x${rootsubvol}" != x ]; then
|
|
GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}"
|
|
+ fi
|
|
fi;;
|
|
xzfs)
|
|
rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true`
|
|
Index: grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
|
===================================================================
|
|
--- grub-2.02~beta2.orig/util/grub.d/20_linux_xen.in
|
|
+++ grub-2.02~beta2/util/grub.d/20_linux_xen.in
|
|
@@ -67,10 +67,14 @@ fi
|
|
|
|
case x"$GRUB_FS" in
|
|
xbtrfs)
|
|
+ if [ "x${SUSE_BTRFS_SNAPSHOT_BOOTING}" = "xtrue" ]; then
|
|
+ GRUB_CMDLINE_LINUX="${GRUB_CMDLINE_LINUX} \${extra_cmdline}"
|
|
+ else
|
|
rootsubvol="`make_system_path_relative_to_its_root /`"
|
|
rootsubvol="${rootsubvol#/}"
|
|
if [ "x${rootsubvol}" != x ]; then
|
|
GRUB_CMDLINE_LINUX="rootflags=subvol=${rootsubvol} ${GRUB_CMDLINE_LINUX}"
|
|
+ fi
|
|
fi;;
|
|
xzfs)
|
|
rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 2>/dev/null || true`
|