Description: <short summary of the patch>
 TODO: Put a short summary on the line above and replace this paragraph
 with a longer explanation of this change. Complete the meta-information
 with other relevant fields (see below for details). To make it easier, the
 information below has been extracted from the changelog. Adjust it or drop
 it.
 .
 ruptime (1.8-2) unstable; urgency=medium
 .
   * Move aliased files from / to /usr (DEP17). (Closes: #1085053)
   * Bump standards version to 4.7.0.
   * d/control: drop dmidecode dependencies, move iptables to suggests.
Author: Alex Myczko <tar@debian.org>
Bug-Debian: https://bugs.debian.org/1085053

---
The information above should follow the Patch Tagging Guidelines, please
checkout https://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: (upstream|backport|vendor|other), (<patch-url>|commit:<commit-id>)
Bug: <upstream-bugtracker-url>
Bug-Debian: https://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: (no|not-needed|<patch-forwarded-url>)
Applied-Upstream: <version>, (<commit-url>|commit:<commid-id>)
Reviewed-By: <name and email of someone who approved/reviewed the patch>
Last-Update: 2024-10-15

--- ruptime-1.8.orig/ruptime
+++ ruptime-1.8/ruptime
@@ -44,7 +44,7 @@ fi
 
 if [ "${1}x" = "-vx" ]; then
     cat << INFO
-$0 version 1.6
+$0 version 1.8
 INFO
     exit 0
 fi
@@ -84,11 +84,12 @@ if [ "${1}x" = "-ux" ]; then
 	    u=$(printf "%-28s %s, %s\n" "$k" "`uname -srm`" "$s" | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
 	;;
 	ruptime)
-	    u=$(uptime|sed 's/ days\{0,1\},[[:blank:]]\{1,\}/+/; s/ averages\{0,1\}://; s/ min//;s/,//g'|awk -v h=$(eval "$HOSTNAMECMD") '{$1="";printf "%-28s %s %11s %2s %5s %s %6s %6s %6s\n", h, $2, $3, $4, $5, $6, $7, $8, $9}' | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
+	    u=$(uptime|sed 's/ days\{0,1\},[[:blank:]]\{1,\}/+/; s/ averages\{0,1\}://; s/ min//;s/,//g'|awk -v h=$(eval "$HOSTNAMECMD") '{$1="";printf "%-28s %s %12s %2s %5s %s %6s %6s %6s\n", h, $2, $3, $4, $5, $6, $7, $8, $9}' | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
 	;;
 	rsw)
-rsw=$(for a in dpkg rpm nix snap spack flatpak pip2 pip3 brew zypper; do
+rsw=$(for a in apk dpkg rpm nix snap spack flatpak pip2 pip3 brew zypper; do
     num=""
+    which $a &>/dev/null && if [ $a == "apk" ]; then num=$(apk info | wc -l); fi
     which $a &>/dev/null && if [ $a == "dpkg" ]; then num=$(dpkg -l |grep ^ii |wc -l); fi
     which $a &>/dev/null && if [ $a == "rpm" ]; then num=$(rpm -qa | wc -l); fi
     which $a &>/dev/null && if [ $a == "brew" ]; then num=$(brew list| wc -l); fi
@@ -100,10 +101,11 @@ rsw=$(for a in dpkg rpm nix snap spack f
     which $a &>/dev/null && if [ $a == "zypper" ]; then num=$(zypper search --installed-only | grep package$ | wc -l); fi
     if [ ${num}x != x ]; then echo -ne "$a $(echo $num) "; fi
 done)
+    	    if [ -d /Applications ]; then rsw="${rsw}Applications $(ls /Applications 2>/dev/null |wc -l|awk '{print $1}')"; fi
 	    u=$(printf "%-28s %s\n" "$k" "$rsw" | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
 	;;
 	rhw)
-	    biosdate=$(dmidecode -s bios-release-date 2>/dev/null | sed 's,/, ,g'|awk '{print $3"/"$1"/"$2}')
+	    biosdate=$(cat /sys/class/dmi/id/bios_date | sed 's,/, ,g'|awk '{print $3"/"$1"/"$2}')
             if [ -f /sys/firmware/devicetree/base/compatible ]; then biosdate=$(echo $(cat /sys/firmware/devicetree/base/compatible|tr -d '\0') | sed "s,.*bcm2835.*,2012/03/01,; s,.*bcm2835.*,2014/07/14,; s,.*bcm2836.*,2015/02/02,; s,.*bcm2837.*,2015/02/02,; s,.*bcm2711.*,2019/06/24,; s,.*rp2040.*,2021/11/02,; s,.*bcm2712.*,2023/10/23,; s,.*j314s.*t6000.*,2021/06/06,; s,.*j316s.*t6000.*,2021/06/06,; s,.*j314c.*t6001.*,2021/06/06,; s,.*j316c.*t6001.*,2021/06/06,; s,.*j375c.*t6001.*,2022/06/06,; s,.*j375d.*t6002.*,2022/06/06,; s,.*j414s.*t6020.*,2023/06/06,; s,.*j416s.*t6020.*,2023/06/06,; s,.*j474s.*t6020.*,2023/06/06,; s,.*j414c.*t6021.*,2023/06/06,; s,.*j416c.*t6021.*,2023/06/06,; s,.*j475c.*t6021.*,2023/06/06,; s,.*j180d.*t6022.*,2023/06/06,; s,.*j475d.*t6022.*,2023/06/06,; s,.*j274.*t8103.*,2020/06/06,; s,.*j293.*t8103.*,2020/06/06,; s,.*j313.*t8103.*,2020/06/06,; s,.*j456.*t8103.*,2021/06/06,; s,.*j457.*t8103.*,2021/06/06,; s,.*j413.*t8112.*,2022/06/06,; s,.*j415.*t8112.*,2023/06/06,; s,.*j473.*t8112.*,2023/06/06,; s,.*j493.*t8112.*,2022/06/06,;"); fi
             # if macOS see https://raw.githubusercontent.com/quacktacular/mac-device-id-to-model/main/models.txt
             if [ -d /sys/firmware/efi/ ]; then sys=UEFI; else sys=BIOS; fi
@@ -159,7 +161,7 @@ done)
             u=$(printf "%-28s %s\n" "$k" "users $liun screen/tmux $sotn CPU $cpu gore $r" | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
 	;;
 	rnet)
-            netdev=$(ip r |grep ^default |head -1|sed "s,.*dev ,,g" |awk '{print $1}')
+            netdev=$(ip r |grep ^default |head -1|sed "s,.*dev ,,g" |awk '{print $1}'|head -1)
             s=$(echo "$netdev   $(cat /sys/class/net/${netdev}/speed)Mb/s")
             iwconfig $(echo $s|awk '{print $1}') &>/dev/null; r=$?
             if [ "$r" = 0 ]; then
@@ -167,7 +169,7 @@ done)
                 s2=$(iwconfig $s 2>/dev/null|grep "Bit Rate" | sed "s,Bit Rate=,,;s, Mb,Mb,"|awk '{print $1}'); \
                 u=$(printf "%-28s %s %s %.0f\n" "$k" "$s" "$s2" "$l" | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
             else
-                netdev=$(ip r |grep ^default |head -1|sed "s,.*dev ,,g" |awk '{print $1}')
+                netdev=$(ip r |grep ^default |head -1|sed "s,.*dev ,,g" |awk '{print $1}'|head -1)
                 s=$(echo "$netdev   $(cat /sys/class/net/${netdev}/speed)Mb/s")
                 u=$(printf "%-28s %s\n" "$k" "$s" | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -)
             fi
--- ruptime-1.8.orig/ruptimed
+++ ruptime-1.8/ruptimed
@@ -30,12 +30,14 @@ fi
 
 f=$(getpeername)
 
-#echo $f |grep $ACL >/dev/null
-#if [ ! $? = 0 ]; then
-#    echo Not allowed
-#    echo "$f" >> $SPOOL/unauthorized
-#    exit 0
-#fi
+if [ ! ${ACL}x = x ]; then
+   echo $f |grep ${ACL}$ >/dev/null
+      if [ ! $? = 0 ]; then
+         #echo Not allowed
+         echo "$f" >> $SPOOL/unauthorized
+      exit 0
+   fi
+fi
 
 #echo STARTED > $SPOOL/.started
 
@@ -43,19 +45,19 @@ read CMD ARG
 h=$(echo $f| awk '{print $1}')
 if [ "${ARG}x" = "x" ]; then
     # only query command, deliver results asked for
-    if [ $CMD = "xz.ruptime" ]; then
+    if [ "$CMD" = "xz.ruptime" ]; then
 	(find $SPOOL/ -name "*.ruptime" -mmin +10 -exec cat {} \; |sed "s,up.*,down,g";
 	find $SPOOL/ -name "*.ruptime" -mmin -10 -exec cat {} \; |sort) | xz -c | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -
     fi
     for a in runame rload rnet rsw rboot rbench rhw rdisk rac rwho; do
-	if [ $CMD = "xz.$a" ]; then
+	if [ "$CMD" = "xz.$a" ]; then
 	    (find $SPOOL/ -name "*.$a" -exec cat {} \; |sort) | xz -c | openssl enc -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out -
 	fi
     done
 else
     # update/add entry
     for a in ruptime runame rload rnet rsw rboot rbench rhw rdisk rac rwho; do
-	if [ $CMD = "$a" ]; then
+	if [ "$CMD" = "$a" ]; then
 	    echo "$ARG" | openssl enc -d -A -a -aes-192-cbc -pbkdf2 -pass env:KEY -in - -out - > "$SPOOL/${h}.${CMD}"
 	fi
     done
