summarylogtreecommitdiffstats
path: root/os-prober-make-btrfsprogs-optional.patch
diff options
context:
space:
mode:
Diffstat (limited to 'os-prober-make-btrfsprogs-optional.patch')
-rw-r--r--os-prober-make-btrfsprogs-optional.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/os-prober-make-btrfsprogs-optional.patch b/os-prober-make-btrfsprogs-optional.patch
new file mode 100644
index 000000000000..057edc29e780
--- /dev/null
+++ b/os-prober-make-btrfsprogs-optional.patch
@@ -0,0 +1,31 @@
+ndex: os-prober-1.76/os-probes/common/50mounted-tests
+===================================================================
+--- os-prober-1.76.orig/os-probes/common/50mounted-tests
++++ os-prober-1.76/os-probes/common/50mounted-tests
+@@ -151,11 +151,20 @@ if [ "$types" = btrfs ]; then
+ rmdir "$tmpmnt" || true
+ exit 1
+ fi
+- # besides regular subvols, get ro and snapshot so thet can be excluded
+- subvols=$(btrfs subvolume list -a "$tmpmnt" | cut -d ' ' -f 9 | sed -e s!^\<FS_TREE\>/!!)
+- rosubvols=$(btrfs subvolume list -r -a "$tmpmnt" | cut -d ' ' -f 9 | sed -e s!^\<FS_TREE\>/!!)
+- sssubvols=$(btrfs subvolume list -s -a "$tmpmnt" | cut -d ' ' -f 14 | sed -e s!^\<FS_TREE\>/!!)
+- defaultvol=$(btrfs subvolume get-default "$tmpmnt" | cut -d ' ' -f 9)
++
++ if type btrfs >/dev/null 2>&1; then
++ # besides regular subvols, get ro and snapshot so thet can be excluded
++ subvols=$(btrfs subvolume list -a "$tmpmnt" | cut -d ' ' -f 9 | sed -e s!^\<FS_TREE\>/!!)
++ rosubvols=$(btrfs subvolume list -r -a "$tmpmnt" | cut -d ' ' -f 9 | sed -e s!^\<FS_TREE\>/!!)
++ sssubvols=$(btrfs subvolume list -s -a "$tmpmnt" | cut -d ' ' -f 14 | sed -e s!^\<FS_TREE\>/!!)
++ defaultvol=$(btrfs subvolume get-default "$tmpmnt" | cut -d ' ' -f 9)
++ else
++ subvols=""
++ rosubvols=""
++ sssubvols=""
++ defaultvol=""
++ fi
++
+ if ! umount "$tmpmnt"; then
+ warn "failed to umount btrfs volume on $tmpmnt"
+ rmdir "$tmpmnt" || true
+