shellcheck fixes, including real bug master
authorIan Kelling <iank@fsf.org>
Sat, 27 Apr 2024 23:25:17 +0000 (19:25 -0400)
committerIan Kelling <iank@fsf.org>
Sat, 27 Apr 2024 23:25:17 +0000 (19:25 -0400)
src/identify-distros
src/package-manager-abstractions

index 4e461b014ea74113a183cd49e73f5aa1f55517a3..fa661721cfa3882dd9cd006e95688e334e7d1896 100644 (file)
@@ -36,19 +36,20 @@ distro-name() {
 }
 
 distro-name-compat() {
 }
 
 distro-name-compat() {
-  local x=$(distro-name)
+  local x
+  x=$(distro-name)
   case $x in
     trisquel)
       echo ubuntu
       ;;
     *)
   case $x in
     trisquel)
       echo ubuntu
       ;;
     *)
-      echo $x
+      printf "%s\n" "$x"
       ;;
   esac
 }
 
 distro-name-ver() {
       ;;
   esac
 }
 
 distro-name-ver() {
-  echo $(distro-name)$(debian-archive)
+  printf "%s\n" "$(distro-name)$(debian-archive)"
 }
 
 distro-num() {
 }
 
 distro-num() {
@@ -72,7 +73,8 @@ debian-archive() {
   # o = origin
   # c = component (licensing component)
   # l = label (Debian{,-Security,-Updates})
   # o = origin
   # c = component (licensing component)
   # l = label (Debian{,-Security,-Updates})
-  local d=$(distro-name)
+  local d
+  d=$(distro-name)
   # goto b for archive lines we are interested in, a for lines we arent
   # print priority + archive name. priority is in
   # the previous line from the archive line.
   # goto b for archive lines we are interested in, a for lines we arent
   # print priority + archive name. priority is in
   # the previous line from the archive line.
@@ -90,7 +92,7 @@ EOF
       shortest=$name
       continue
     fi
       shortest=$name
       continue
     fi
-    if [[ $pri != $highpri ]]; then
+    if [[ $pri != "$highpri" ]]; then
       break
     fi
     if (( ${#shortest} > ${#name} )); then
       break
     fi
     if (( ${#shortest} > ${#name} )); then
@@ -103,8 +105,10 @@ EOF
 # formatted for use in pfile() in package-manager-abstractions
 positive-origins() {
   isdeb || return 0
 # formatted for use in pfile() in package-manager-abstractions
 positive-origins() {
   isdeb || return 0
-  local archive expression pri name highpri shortest
-  local policy="${1:-$(apt-cache policy)}" || return $?
+  local archive expression pri name highpri shortest policy
+  # In theory we might want a policy subset, we could alter this to pass
+  # it in.
+  policy="(apt-cache policy)"
   # a = archive
   # n = codename
   # o = origin
   # a = archive
   # n = codename
   # o = origin
@@ -137,12 +141,14 @@ isdebian-stable() {
 
 debian-codename() {
   isdeb || return 0
 
 debian-codename() {
   isdeb || return 0
-  local policy="$(apt-cache policy)" || return $?
+  local policy
+  policy="$(apt-cache policy)"
   archive=$(debian-archive "$policy")
   archive=$(debian-archive "$policy")
-  echo "$policy" | sed -rn "s/^.*a=$archive,n=([a-z]+).*/\1/p;T;q" || [[ $? == 141 ]]
+  printf "%s\n" "$policy" | sed -rn "s/^.*a=$archive,n=([a-z]+).*/\1/p;T;q" || [[ $? == 141 ]]
 }
 debian-codename-compat() {
 }
 debian-codename-compat() {
-  local n=$(debian-codename)
+  local n
+  n=$(debian-codename)
   case $n in
     flidas)
       echo xenial
   case $n in
     flidas)
       echo xenial
index 81940bbbb319fd256a80c3c8963d7c49d648a6ec..aa14875a093bfee508bd2dca1fa85012cfdc9c85 100644 (file)
@@ -42,6 +42,7 @@ if command -v yum &> /dev/null; then
     local s; [[ $EUID != 0 ]] && s=sudo
     $s yum autoremove "$@"
   }
     local s; [[ $EUID != 0 ]] && s=sudo
     $s yum autoremove "$@"
   }
+  # shellcheck disable=SC2120
   pup() { # upgrade
     local s; [[ $EUID != 0 ]] && s=sudo
     $s yum -y distro-sync full "$@"
   pup() { # upgrade
     local s; [[ $EUID != 0 ]] && s=sudo
     $s yum -y distro-sync full "$@"
@@ -113,7 +114,7 @@ elif command -v apt-get &>/dev/null; then
         fi
       fi
     done
         fi
       fi
     done
-    if (( cachtime > limittime )); then
+    if (( cachetime > limittime )); then
       $s apt-get update
     fi
   }
       $s apt-get update
     fi
   }
@@ -190,6 +191,7 @@ EOF
     # seems slightly redundant, but it removes more stuff sometimes.
     $s apt-get -y autoremove
   }
     # seems slightly redundant, but it removes more stuff sometimes.
     $s apt-get -y autoremove
   }
+  # shellcheck disable=SC2120
   pup() { # upgrade
     plock-wait
     pupdate
   pup() { # upgrade
     plock-wait
     pupdate
@@ -266,14 +268,15 @@ elif command -v pacman &>/dev/null; then
   aurex() {
     p="$1"
     aur='https://aur.archlinux.org'
   aurex() {
     p="$1"
     aur='https://aur.archlinux.org'
-    curl -s $aur/$(curl -s "$aur/rpc.php?type=info&arg=$p" \
-                     | jq -r .results.URLPath) | tar xz
+    curl -s $aur/"$(curl -s "$aur/rpc.php?type=info&arg=$p" \
+                     | jq -r .results.URLPath)" | tar xz
     cd "$p"
 
   }
   pmirror() {
     local s; [[ $EUID != 0 ]] && s=sudo
     cd "$p"
 
   }
   pmirror() {
     local s; [[ $EUID != 0 ]] && s=sudo
-    local x=$(mktemp)
+    local x
+    x=$(mktemp)
     curl -s "https://www.archlinux.org/mirrorlist/\
 ?country=US&protocol=https&ip_version=4&ip_version=6&use_mirror_status=on" \
       | sed -r 's/^[ #]*(Server *=)/\1/' > $x
     curl -s "https://www.archlinux.org/mirrorlist/\
 ?country=US&protocol=https&ip_version=4&ip_version=6&use_mirror_status=on" \
       | sed -r 's/^[ #]*(Server *=)/\1/' > $x
@@ -282,6 +285,7 @@ elif command -v pacman &>/dev/null; then
       rm $x
     fi
   }
       rm $x
     fi
   }
+  # shellcheck disable=SC2120
   pup() { # upgrade
     local s; [[ $EUID != 0 ]] && s=sudo
     # file_time + 24 hours > current_time
   pup() { # upgrade
     local s; [[ $EUID != 0 ]] && s=sudo
     # file_time + 24 hours > current_time