forked from pool/os-prober
Accepting request 440355 from Base:System
1 OBS-URL: https://build.opensuse.org/request/show/440355 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/os-prober?expand=0&rev=39
This commit is contained in:
commit
6d878811a1
@ -2,124 +2,19 @@ Index: os-prober-1.70/os-probes/mounted/common/90linux-distro
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- os-prober-1.70.orig/os-probes/mounted/common/90linux-distro
|
--- os-prober-1.70.orig/os-probes/mounted/common/90linux-distro
|
||||||
+++ os-prober-1.70/os-probes/mounted/common/90linux-distro
|
+++ os-prober-1.70/os-probes/mounted/common/90linux-distro
|
||||||
@@ -10,6 +10,113 @@ type="$3"
|
@@ -10,135 +10,121 @@ type="$3"
|
||||||
uuid="$4"
|
uuid="$4"
|
||||||
subvol="$5"
|
subvol="$5"
|
||||||
|
|
||||||
+if [ -e "$dir/etc/debian_version" ]; then
|
-# This test is inaccurate, but given separate / and /boot partitions and the
|
||||||
+ short="Debian"
|
-# fact that only some architectures have ld-linux.so, I can't see anything
|
||||||
+ long="$(printf "Debian GNU/Linux (%s)\n" "$(cat "$dir/etc/debian_version")")"
|
-# better. Make sure this test has a high number so that more accurate tests
|
||||||
+# RPM derived distributions may also have a redhat-release or
|
-# can come first.
|
||||||
+# mandrake-release, so check their files first.
|
-# Unless volumes to checked are already mounted, they will be mounted using
|
||||||
+elif [ -e "$dir/etc/altlinux-release" ]; then
|
-# GRUB's own filesystems through FUSE. Since these ATM doesn't support
|
||||||
+ short="ALTLinux"
|
-# symlinks we need to also check in $dir/usr/lib* for distributions that
|
||||||
+ long="$(cat "$dir/etc/altlinux-release")"
|
-# moved /lib* to /usr and only left symlinks behind.
|
||||||
+elif [ -e "$dir/etc/magic-release" ]; then
|
-# TODO: look for ld-linux.so on arches that have it
|
||||||
+ short="Magic"
|
|
||||||
+ long="$(cat "$dir/etc/magic-release")"
|
|
||||||
+elif [ -e "$dir/etc/blackPanther-release" ]; then
|
|
||||||
+ short="blackPanther"
|
|
||||||
+ long="$(cat "$dir/etc/blackPanther-release")"
|
|
||||||
+elif [ -e "$dir/etc/ark-release" ]; then
|
|
||||||
+ short="Ark"
|
|
||||||
+ long="$(cat "$dir/etc/ark-release")"
|
|
||||||
+elif [ -e "$dir/etc/arch-release" ]; then
|
|
||||||
+ short="Arch"
|
|
||||||
+ long="$(cat "$dir/etc/arch-release")"
|
|
||||||
+elif [ -e "$dir/etc/asplinux-release" ]; then
|
|
||||||
+ short="ASPLinux"
|
|
||||||
+ long="$(cat "$dir/etc/asplinux-release")"
|
|
||||||
+elif [ -e "$dir/etc/lvr-release" ]; then
|
|
||||||
+ short="LvR"
|
|
||||||
+ long="$(cat "$dir/etc/lvr-release")"
|
|
||||||
+elif [ -e "$dir/etc/caos-release" ]; then
|
|
||||||
+ short="cAos"
|
|
||||||
+ long="$(cat "$dir/etc/caos-release")"
|
|
||||||
+elif [ -e "$dir/etc/aurox-release" ]; then
|
|
||||||
+ short="Aurox"
|
|
||||||
+ long="$(cat "$dir/etc/aurox-release")"
|
|
||||||
+elif [ -e "$dir/etc/engarde-release" ]; then
|
|
||||||
+ short="EnGarde"
|
|
||||||
+ long="$(cat "$dir/etc/engarde-release")"
|
|
||||||
+elif [ -e "$dir/etc/vine-release" ]; then
|
|
||||||
+ short="Vine"
|
|
||||||
+ long="$(cat "$dir/etc/vine-release")"
|
|
||||||
+elif [ -e "$dir/etc/whitebox-release" ]; then
|
|
||||||
+ short="WhiteBox"
|
|
||||||
+ long="$(cat "$dir/etc/whitebox-release")"
|
|
||||||
+elif [ -e "$dir/etc/pld-release" ]; then
|
|
||||||
+ short="PLD"
|
|
||||||
+ long="$(cat "$dir/etc/pld-release")"
|
|
||||||
+elif [ -e "$dir/etc/startcom-release" ]; then
|
|
||||||
+ short="StartCom"
|
|
||||||
+ long="$(cat "$dir/etc/startcom-release")"
|
|
||||||
+elif [ -e "$dir/etc/trustix-release" ]; then
|
|
||||||
+ short="Trustix"
|
|
||||||
+ long="$(cat "$dir/etc/trustix-release")"
|
|
||||||
+elif [ -e "$dir/etc/openna-release" ]; then
|
|
||||||
+ short="OpenNA"
|
|
||||||
+ long="$(cat "$dir/etc/openna-release")"
|
|
||||||
+elif [ -e "$dir/etc/conectiva-release" ]; then
|
|
||||||
+ short="Conectiva"
|
|
||||||
+ long="$(cat "$dir/etc/conectiva-release")"
|
|
||||||
+elif [ -e "$dir/etc/mandrake-release" ]; then
|
|
||||||
+ short="Mandrake"
|
|
||||||
+ long="$(cat "$dir/etc/mandrake-release")"
|
|
||||||
+elif [ -e "$dir/etc/fedora-release" ]; then
|
|
||||||
+ short="Fedora"
|
|
||||||
+ long="$(cat "$dir/etc/fedora-release")"
|
|
||||||
+elif [ -e "$dir/etc/redhat-release" ]; then
|
|
||||||
+ short="RedHat"
|
|
||||||
+ long="$(cat "$dir/etc/redhat-release")"
|
|
||||||
+elif [ -e "$dir/etc/SuSE-release" ]; then
|
|
||||||
+ short="SUSE"
|
|
||||||
+ long="$(head -n 1 "$dir/etc/SuSE-release")"
|
|
||||||
+elif [ -e "$dir/etc/gentoo-release" ]; then
|
|
||||||
+ short="Gentoo"
|
|
||||||
+ long="$(cat "$dir/etc/gentoo-release")"
|
|
||||||
+elif [ -e "$dir/etc/cobalt-release" ]; then
|
|
||||||
+ short="Cobalt"
|
|
||||||
+ long="$(cat "$dir/etc/cobalt-release")"
|
|
||||||
+elif [ -e "$dir/etc/yellowdog-release" ]; then
|
|
||||||
+ short="YellowDog"
|
|
||||||
+ long="$(cat "$dir/etc/yellowdog-release")"
|
|
||||||
+elif [ -e "$dir/etc/turbolinux-release" ]; then
|
|
||||||
+ short="Turbolinux"
|
|
||||||
+ long="$(cat "$dir/etc/turbolinux-release")"
|
|
||||||
+elif [ -e "$dir/etc/pardus-release" ]; then
|
|
||||||
+ short="Pardus"
|
|
||||||
+ long="$(cat "$dir/etc/pardus-release")"
|
|
||||||
+elif [ -e "$dir/etc/kanotix-version" ]; then
|
|
||||||
+ short="Kanotix"
|
|
||||||
+ long="$(cat "$dir/etc/kanotix-version")"
|
|
||||||
+elif [ -e "$dir/etc/slackware-version" ]; then
|
|
||||||
+ short="Slackware"
|
|
||||||
+ long="$(printf "Slackware Linux (%s)\n" "$(cat "$dir/etc/slackware-version")")"
|
|
||||||
+elif [ -e "$dir/sbin/pkgtool" ]; then
|
|
||||||
+ short="Slackware"
|
|
||||||
+ long="Slackware Linux"
|
|
||||||
+elif grep -qs OpenLinux "$dir/etc/issue"; then
|
|
||||||
+ short="Caldera"
|
|
||||||
+ long="Caldera OpenLinux"
|
|
||||||
+elif [ -e "$dir/etc/frugalware-release" ]; then
|
|
||||||
+ short="Frugalware Linux"
|
|
||||||
+ long="$(cat "$dir/etc/frugalware-release")"
|
|
||||||
+elif [ -e "$dir/etc/kdemar-release" ]; then
|
|
||||||
+ short="K-DEMar"
|
|
||||||
+ long="$(printf "K-DEMar GNU/Linux (%s)\n" "$(cat "$dir/etc/kdemar-release")")"
|
|
||||||
+elif [ -e "$dir/etc/lfs-release" ]; then
|
|
||||||
+ short="LFS"
|
|
||||||
+ long="$(printf "Linux From Scratch (%s)\n" "$(cat "$dir/etc/lfs-release")")"
|
|
||||||
+elif [ -e "$dir/etc/meego-release" ]; then
|
|
||||||
+ short="MeeGo"
|
|
||||||
+ long="$(head -1 "$dir/etc/meego-release")"
|
|
||||||
# This test is inaccurate, but given separate / and /boot partitions and the
|
|
||||||
# fact that only some architectures have ld-linux.so, I can't see anything
|
|
||||||
# better. Make sure this test has a high number so that more accurate tests
|
|
||||||
@@ -19,126 +126,17 @@ subvol="$5"
|
|
||||||
# symlinks we need to also check in $dir/usr/lib* for distributions that
|
|
||||||
# moved /lib* to /usr and only left symlinks behind.
|
|
||||||
# TODO: look for ld-linux.so on arches that have it
|
|
||||||
-if (ls "$dir"/lib*/ld*.so* || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
|
-if (ls "$dir"/lib*/ld*.so* || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
|
||||||
- if [ -e "$dir/etc/debian_version" ]; then
|
- if [ -e "$dir/etc/debian_version" ]; then
|
||||||
- short="Debian"
|
- short="Debian"
|
||||||
@ -240,9 +135,113 @@ Index: os-prober-1.70/os-probes/mounted/common/90linux-distro
|
|||||||
- result "$partition:$long:$label:linux"
|
- result "$partition:$long:$label:linux"
|
||||||
- fi
|
- fi
|
||||||
- exit 0
|
- exit 0
|
||||||
+elif (ls "$dir"/lib*/ld*.so* || ls "$dir"/usr/lib*/ld*.so*) >/dev/null 2>/dev/null; then
|
+if [ -e "$dir/etc/debian_version" ]; then
|
||||||
+ short="Linux"
|
+ short="Debian"
|
||||||
+ long="unknown Linux distribution"
|
+ long="$(printf "Debian GNU/Linux (%s)\n" "$(cat "$dir/etc/debian_version")")"
|
||||||
|
+# RPM derived distributions may also have a redhat-release or
|
||||||
|
+# mandrake-release, so check their files first.
|
||||||
|
+elif [ -e "$dir/etc/altlinux-release" ]; then
|
||||||
|
+ short="ALTLinux"
|
||||||
|
+ long="$(cat "$dir/etc/altlinux-release")"
|
||||||
|
+elif [ -e "$dir/etc/magic-release" ]; then
|
||||||
|
+ short="Magic"
|
||||||
|
+ long="$(cat "$dir/etc/magic-release")"
|
||||||
|
+elif [ -e "$dir/etc/blackPanther-release" ]; then
|
||||||
|
+ short="blackPanther"
|
||||||
|
+ long="$(cat "$dir/etc/blackPanther-release")"
|
||||||
|
+elif [ -e "$dir/etc/ark-release" ]; then
|
||||||
|
+ short="Ark"
|
||||||
|
+ long="$(cat "$dir/etc/ark-release")"
|
||||||
|
+elif [ -e "$dir/etc/arch-release" ]; then
|
||||||
|
+ short="Arch"
|
||||||
|
+ long="$(cat "$dir/etc/arch-release")"
|
||||||
|
+elif [ -e "$dir/etc/asplinux-release" ]; then
|
||||||
|
+ short="ASPLinux"
|
||||||
|
+ long="$(cat "$dir/etc/asplinux-release")"
|
||||||
|
+elif [ -e "$dir/etc/lvr-release" ]; then
|
||||||
|
+ short="LvR"
|
||||||
|
+ long="$(cat "$dir/etc/lvr-release")"
|
||||||
|
+elif [ -e "$dir/etc/caos-release" ]; then
|
||||||
|
+ short="cAos"
|
||||||
|
+ long="$(cat "$dir/etc/caos-release")"
|
||||||
|
+elif [ -e "$dir/etc/aurox-release" ]; then
|
||||||
|
+ short="Aurox"
|
||||||
|
+ long="$(cat "$dir/etc/aurox-release")"
|
||||||
|
+elif [ -e "$dir/etc/engarde-release" ]; then
|
||||||
|
+ short="EnGarde"
|
||||||
|
+ long="$(cat "$dir/etc/engarde-release")"
|
||||||
|
+elif [ -e "$dir/etc/vine-release" ]; then
|
||||||
|
+ short="Vine"
|
||||||
|
+ long="$(cat "$dir/etc/vine-release")"
|
||||||
|
+elif [ -e "$dir/etc/whitebox-release" ]; then
|
||||||
|
+ short="WhiteBox"
|
||||||
|
+ long="$(cat "$dir/etc/whitebox-release")"
|
||||||
|
+elif [ -e "$dir/etc/pld-release" ]; then
|
||||||
|
+ short="PLD"
|
||||||
|
+ long="$(cat "$dir/etc/pld-release")"
|
||||||
|
+elif [ -e "$dir/etc/startcom-release" ]; then
|
||||||
|
+ short="StartCom"
|
||||||
|
+ long="$(cat "$dir/etc/startcom-release")"
|
||||||
|
+elif [ -e "$dir/etc/trustix-release" ]; then
|
||||||
|
+ short="Trustix"
|
||||||
|
+ long="$(cat "$dir/etc/trustix-release")"
|
||||||
|
+elif [ -e "$dir/etc/openna-release" ]; then
|
||||||
|
+ short="OpenNA"
|
||||||
|
+ long="$(cat "$dir/etc/openna-release")"
|
||||||
|
+elif [ -e "$dir/etc/conectiva-release" ]; then
|
||||||
|
+ short="Conectiva"
|
||||||
|
+ long="$(cat "$dir/etc/conectiva-release")"
|
||||||
|
+elif [ -e "$dir/etc/mandrake-release" ]; then
|
||||||
|
+ short="Mandrake"
|
||||||
|
+ long="$(cat "$dir/etc/mandrake-release")"
|
||||||
|
+elif [ -e "$dir/etc/fedora-release" ]; then
|
||||||
|
+ short="Fedora"
|
||||||
|
+ long="$(cat "$dir/etc/fedora-release")"
|
||||||
|
+elif [ -e "$dir/etc/redhat-release" ]; then
|
||||||
|
+ short="RedHat"
|
||||||
|
+ long="$(cat "$dir/etc/redhat-release")"
|
||||||
|
+elif [ -e "$dir/etc/SuSE-release" ]; then
|
||||||
|
+ short="SUSE"
|
||||||
|
+ long="$(head -n 1 "$dir/etc/SuSE-release")"
|
||||||
|
+elif [ -e "$dir/etc/gentoo-release" ]; then
|
||||||
|
+ short="Gentoo"
|
||||||
|
+ long="$(cat "$dir/etc/gentoo-release")"
|
||||||
|
+elif [ -e "$dir/etc/cobalt-release" ]; then
|
||||||
|
+ short="Cobalt"
|
||||||
|
+ long="$(cat "$dir/etc/cobalt-release")"
|
||||||
|
+elif [ -e "$dir/etc/yellowdog-release" ]; then
|
||||||
|
+ short="YellowDog"
|
||||||
|
+ long="$(cat "$dir/etc/yellowdog-release")"
|
||||||
|
+elif [ -e "$dir/etc/turbolinux-release" ]; then
|
||||||
|
+ short="Turbolinux"
|
||||||
|
+ long="$(cat "$dir/etc/turbolinux-release")"
|
||||||
|
+elif [ -e "$dir/etc/pardus-release" ]; then
|
||||||
|
+ short="Pardus"
|
||||||
|
+ long="$(cat "$dir/etc/pardus-release")"
|
||||||
|
+elif [ -e "$dir/etc/kanotix-version" ]; then
|
||||||
|
+ short="Kanotix"
|
||||||
|
+ long="$(cat "$dir/etc/kanotix-version")"
|
||||||
|
+elif [ -e "$dir/etc/slackware-version" ]; then
|
||||||
|
+ short="Slackware"
|
||||||
|
+ long="$(printf "Slackware Linux (%s)\n" "$(cat "$dir/etc/slackware-version")")"
|
||||||
|
+elif [ -e "$dir/sbin/pkgtool" ]; then
|
||||||
|
+ short="Slackware"
|
||||||
|
+ long="Slackware Linux"
|
||||||
|
+elif grep -qs OpenLinux "$dir/etc/issue"; then
|
||||||
|
+ short="Caldera"
|
||||||
|
+ long="Caldera OpenLinux"
|
||||||
|
+elif [ -e "$dir/etc/frugalware-release" ]; then
|
||||||
|
+ short="Frugalware Linux"
|
||||||
|
+ long="$(cat "$dir/etc/frugalware-release")"
|
||||||
|
+elif [ -e "$dir/etc/kdemar-release" ]; then
|
||||||
|
+ short="K-DEMar"
|
||||||
|
+ long="$(printf "K-DEMar GNU/Linux (%s)\n" "$(cat "$dir/etc/kdemar-release")")"
|
||||||
|
+elif [ -e "$dir/etc/lfs-release" ]; then
|
||||||
|
+ short="LFS"
|
||||||
|
+ long="$(printf "Linux From Scratch (%s)\n" "$(cat "$dir/etc/lfs-release")")"
|
||||||
|
+elif [ -e "$dir/etc/meego-release" ]; then
|
||||||
|
+ short="MeeGo"
|
||||||
|
+ long="$(head -1 "$dir/etc/meego-release")"
|
||||||
else
|
else
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -20,6 +20,6 @@ Index: os-prober-1.70/os-probes/mounted/common/90linux-distro
|
|||||||
+elif [ -e "$dir/etc/os-release" ]; then
|
+elif [ -e "$dir/etc/os-release" ]; then
|
||||||
+ short=$(sed -n "/^NAME=/{s@\"\(.*\)\"@\1@;t 1;s@'\(.*\)'@\1@;: 1;s@^[^=]\+=@@;p;b}" $dir/etc/os-release)
|
+ short=$(sed -n "/^NAME=/{s@\"\(.*\)\"@\1@;t 1;s@'\(.*\)'@\1@;: 1;s@^[^=]\+=@@;p;b}" $dir/etc/os-release)
|
||||||
+ long="$short $(sed -n "/^VERSION=/{s@\"\(.*\)\"@\1@;t 1;s@'\(.*\)'@\1@;: 1;s@^[^=]\+=@@;p;b}" $dir/etc/os-release)"
|
+ long="$short $(sed -n "/^VERSION=/{s@\"\(.*\)\"@\1@;t 1;s@'\(.*\)'@\1@;: 1;s@^[^=]\+=@@;p;b}" $dir/etc/os-release)"
|
||||||
# This test is inaccurate, but given separate / and /boot partitions and the
|
else
|
||||||
# fact that only some architectures have ld-linux.so, I can't see anything
|
exit 1
|
||||||
# better. Make sure this test has a high number so that more accurate tests
|
fi
|
||||||
|
@ -1,3 +1,13 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 15 09:03:26 UTC 2016 - mchang@suse.com
|
||||||
|
|
||||||
|
- The wildcard test for ld.so is inaccurate, slow and sometimes hangs a
|
||||||
|
long time with grub2-mount. Disable it becuase it does quite opposite
|
||||||
|
it was intended to do, that is having an inital quick filter for non
|
||||||
|
linux partition to speed things up. (bsc#1008444)
|
||||||
|
* modified os-prober-linux-distro-avoid-expensive-ld-file-test.patch
|
||||||
|
* refresh os-prober-linux-distro-parse-os-release.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Oct 4 08:28:26 UTC 2016 - mchang@suse.com
|
Tue Oct 4 08:28:26 UTC 2016 - mchang@suse.com
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user