Harald Hoyer 9d5d75
From a7d8fc280c172ab023ce6170c33c323fb7c87adf Mon Sep 17 00:00:00 2001
Harald Hoyer 9d5d75
From: Frederick Grose <fgrose@sugarlabs.org>
Harald Hoyer 9d5d75
Date: Mon, 3 Sep 2018 17:01:53 -0400
Harald Hoyer 9d5d75
Subject: [PATCH] dmsquash-live: Avoid grep and sed in this module.
Harald Hoyer 9d5d75
Harald Hoyer 9d5d75
strstr and variable string manipulations suffice.
Harald Hoyer 9d5d75
---
Harald Hoyer 9d5d75
 modules.d/90dmsquash-live/dmsquash-generator.sh  | 4 ++--
Harald Hoyer 9d5d75
 modules.d/90dmsquash-live/dmsquash-live-root.sh  | 6 +++---
Harald Hoyer 9d5d75
 modules.d/90dmsquash-live/module-setup.sh        | 2 +-
Harald Hoyer 9d5d75
 modules.d/90dmsquash-live/parse-dmsquash-live.sh | 4 ++--
Harald Hoyer 9d5d75
 4 files changed, 8 insertions(+), 8 deletions(-)
Harald Hoyer 9d5d75
Harald Hoyer 9d5d75
diff --git a/modules.d/90dmsquash-live/dmsquash-generator.sh b/modules.d/90dmsquash-live/dmsquash-generator.sh
Harald Hoyer 9d5d75
index 1129ddff..f57b1fc5 100755
Harald Hoyer 9d5d75
--- a/modules.d/90dmsquash-live/dmsquash-generator.sh
Harald Hoyer 9d5d75
+++ b/modules.d/90dmsquash-live/dmsquash-generator.sh
Harald Hoyer 9d5d75
@@ -18,12 +18,12 @@ fi
Harald Hoyer 9d5d75
 case "$liveroot" in
Harald Hoyer 9d5d75
     live:LABEL=*|LABEL=*) \
Harald Hoyer 9d5d75
         root="${root#live:}"
Harald Hoyer 9d5d75
-        root="$(echo $root | sed 's,/,\\x2f,g')"
Harald Hoyer 9d5d75
+        root="${root//\//\\x2f}"
Harald Hoyer 9d5d75
         root="live:/dev/disk/by-label/${root#LABEL=}"
Harald Hoyer 9d5d75
         rootok=1 ;;
Harald Hoyer 9d5d75
     live:CDLABEL=*|CDLABEL=*) \
Harald Hoyer 9d5d75
         root="${root#live:}"
Harald Hoyer 9d5d75
-        root="$(echo $root | sed 's,/,\\x2f,g')"
Harald Hoyer 9d5d75
+        root="${root//\//\\x2f}"
Harald Hoyer 9d5d75
         root="live:/dev/disk/by-label/${root#CDLABEL=}"
Harald Hoyer 9d5d75
         rootok=1 ;;
Harald Hoyer 9d5d75
     live:UUID=*|UUID=*) \
Harald Hoyer 9d5d75
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
Harald Hoyer 9d5d75
index 0f3d8f89..330ba3e9 100755
Harald Hoyer 9d5d75
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
Harald Hoyer 9d5d75
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
Harald Hoyer 9d5d75
@@ -109,15 +109,15 @@ do_live_overlay() {
Harald Hoyer 9d5d75
 
Harald Hoyer 9d5d75
     if [ -z "$overlay" ]; then
Harald Hoyer 9d5d75
         pathspec="/${live_dir}/overlay-$l-$u"
Harald Hoyer 9d5d75
-    elif ( echo $overlay | grep -q ":" ); then
Harald Hoyer 9d5d75
+    elif strstr $overlay ":"; then
Harald Hoyer 9d5d75
         # pathspec specified, extract
Harald Hoyer 9d5d75
-        pathspec=$( echo $overlay | sed -e 's/^.*://' )
Harald Hoyer 9d5d75
+        pathspec=${overlay##*:}
Harald Hoyer 9d5d75
     fi
Harald Hoyer 9d5d75
 
Harald Hoyer 9d5d75
     if [ -z "$pathspec" -o "$pathspec" = "auto" ]; then
Harald Hoyer 9d5d75
         pathspec="/${live_dir}/overlay-$l-$u"
Harald Hoyer 9d5d75
     fi
Harald Hoyer 9d5d75
-    devspec=$( echo $overlay | sed -e 's/:.*$//' )
Harald Hoyer 9d5d75
+    devspec=${overlay%%:*}
Harald Hoyer 9d5d75
 
Harald Hoyer 9d5d75
     # need to know where to look for the overlay
Harald Hoyer 9d5d75
     if [ -z "$setup" -a -n "$devspec" -a -n "$pathspec" -a -n "$overlay" ]; then
Harald Hoyer 9d5d75
diff --git a/modules.d/90dmsquash-live/module-setup.sh b/modules.d/90dmsquash-live/module-setup.sh
Harald Hoyer 9d5d75
index 48418a06..f251258f 100755
Harald Hoyer 9d5d75
--- a/modules.d/90dmsquash-live/module-setup.sh
Harald Hoyer 9d5d75
+++ b/modules.d/90dmsquash-live/module-setup.sh
Harald Hoyer 9d5d75
@@ -22,7 +22,7 @@ installkernel() {
Harald Hoyer 9d5d75
 
Harald Hoyer 9d5d75
 # called by dracut
Harald Hoyer 9d5d75
 install() {
Harald Hoyer 9d5d75
-    inst_multiple umount dmsetup blkid dd losetup grep blockdev find
Harald Hoyer 9d5d75
+    inst_multiple umount dmsetup blkid dd losetup blockdev find
Harald Hoyer 9d5d75
     inst_multiple -o checkisomd5
Harald Hoyer 9d5d75
     inst_hook cmdline 30 "$moddir/parse-dmsquash-live.sh"
Harald Hoyer 9d5d75
     inst_hook cmdline 31 "$moddir/parse-iso-scan.sh"
Harald Hoyer 9d5d75
diff --git a/modules.d/90dmsquash-live/parse-dmsquash-live.sh b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
Harald Hoyer 9d5d75
index 0eedf1f6..4d46a360 100755
Harald Hoyer 9d5d75
--- a/modules.d/90dmsquash-live/parse-dmsquash-live.sh
Harald Hoyer 9d5d75
+++ b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
Harald Hoyer 9d5d75
@@ -20,12 +20,12 @@ modprobe -q loop
Harald Hoyer 9d5d75
 case "$liveroot" in
Harald Hoyer 9d5d75
     live:LABEL=*|LABEL=*) \
Harald Hoyer 9d5d75
         root="${root#live:}"
Harald Hoyer 9d5d75
-        root="$(echo $root | sed 's,/,\\x2f,g')"
Harald Hoyer 9d5d75
+        root="${root//\//\\x2f}"
Harald Hoyer 9d5d75
         root="live:/dev/disk/by-label/${root#LABEL=}"
Harald Hoyer 9d5d75
         rootok=1 ;;
Harald Hoyer 9d5d75
     live:CDLABEL=*|CDLABEL=*) \
Harald Hoyer 9d5d75
         root="${root#live:}"
Harald Hoyer 9d5d75
-        root="$(echo $root | sed 's,/,\\x2f,g')"
Harald Hoyer 9d5d75
+        root="${root//\//\\x2f}"
Harald Hoyer 9d5d75
         root="live:/dev/disk/by-label/${root#CDLABEL=}"
Harald Hoyer 9d5d75
         rootok=1 ;;
Harald Hoyer 9d5d75
     live:UUID=*|UUID=*) \
Harald Hoyer 9d5d75