From 3f81fd7097ec931ebf6d862622e6d81834483dbb Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Thu, 28 Jan 2021 00:37:32 +0000 Subject: sys-boot/os-prober : shamelessly take all the patches from openSUSE Factory to make it work --- .../os-prober-linux-distro-parse-os-release.patch | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 sys-boot/os-prober/files/os-prober-linux-distro-parse-os-release.patch (limited to 'sys-boot/os-prober/files/os-prober-linux-distro-parse-os-release.patch') diff --git a/sys-boot/os-prober/files/os-prober-linux-distro-parse-os-release.patch b/sys-boot/os-prober/files/os-prober-linux-distro-parse-os-release.patch new file mode 100644 index 00000000..2aa2b316 --- /dev/null +++ b/sys-boot/os-prober/files/os-prober-linux-distro-parse-os-release.patch @@ -0,0 +1,24 @@ +Index: os-prober/os-probes/mounted/common/90linux-distro +=================================================================== +--- os-prober.orig/os-probes/mounted/common/90linux-distro ++++ os-prober/os-probes/mounted/common/90linux-distro +@@ -10,7 +10,18 @@ type="$3" + uuid="$4" + subvol="$5" + +-if [ -e "$dir/etc/os-release" ]; then ++if [ -L "$dir/etc/os-release" ]; then ++ RELPATH=$(readlink -f "$dir/etc/os-release") ++ if readlink "$dir/etc/os-release" | grep -q '^/'; then ++ RELPATH="$dir$RELPATH" ++ fi ++ if [ -f "$RELPATH" ]; then ++ short="$(grep ^NAME= "$RELPATH" | sed 's/^[^=]*=//; s/^['\''"]\(.*\)['\''"]$/\1/; s/\\\(.\)/\1/g; s/[[:space:]].*//')" ++ long="$(grep ^PRETTY_NAME= "$RELPATH" | sed 's/^[^=]*=//; s/^['\''"]\(.*\)['\''"]$/\1/; s/\\\(.\)/\1/g')" ++ else ++ exit 1 ++ fi ++elif [ -e "$dir/etc/os-release" ]; then + short="$(grep ^NAME= "$dir/etc/os-release" | sed 's/^[^=]*=//; s/^['\''"]\(.*\)['\''"]$/\1/; s/\\\(.\)/\1/g; s/[[:space:]].*//')" + long="$(grep ^PRETTY_NAME= "$dir/etc/os-release" | sed 's/^[^=]*=//; s/^['\''"]\(.*\)['\''"]$/\1/; s/\\\(.\)/\1/g')" + elif [ -e "$dir/etc/debian_version" ]; then -- cgit v1.2.3