home · contact · privacy
Fix.
authorChristian Heller <c.heller@plomlompom.de>
Sat, 26 Apr 2025 03:19:44 +0000 (05:19 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Sat, 26 Apr 2025 03:19:44 +0000 (05:19 +0200)
bookworm/scripts/lib/abort_if_command_unknown [new file with mode: 0644]
bookworm/scripts/lib/apt_get_edited
bookworm/scripts/lib/core_setup
testing/scripts/lib/abort_if_command_unknown [changed from file to symlink]
trixie/scripts/from_older_upgrade.sh

diff --git a/bookworm/scripts/lib/abort_if_command_unknown b/bookworm/scripts/lib/abort_if_command_unknown
new file mode 100644 (file)
index 0000000..81a3365
--- /dev/null
@@ -0,0 +1,7 @@
+. lib/abort
+
+abort_if_command_unknown() {
+    if ! which "$1" > /dev/null; then
+        abort "Expected command unavailable: ${1}."
+    fi
+}
index cddb15b5071e58b0e6ad41011c8d71c48b4b5ec1..97a216e02e6bf59166061a860f9d668c7918a20f 100644 (file)
@@ -1,70 +1,81 @@
+. lib/abort_if_command_unknown
 
 apt_get_edited() {
-    export DEBIAN_FRONTEND=noninteractive
-    _TO_IGNORE=\
+abort_if_command_unknown calc
+
+_TO_IGNORE=\
 '(Reading database ...
-Preparing to unpack 
+Preparing to unpack
 Unpacking '
-    _PREFIXES=\
-'9 5 Get:
-5 3 Get:
-8 7 Installing new version of config file
-6 4 Processing triggers for
-7 5 Purging configuration files for
-5 4 Removing obsolete conffile
-4 2 Removing
-5 5 Selecting previously unselected package
-5 3 Setting up
-11 8 dpkg: warning: unable to delete old directory'
 
-    _LAST_PREFIX=''
-    apt-get -y $1 2>&1 | while read _LINE; do
-        _DO_CONTINUE=
-        for _PLACEHOLDED in $(echo "${_TO_IGNORE}" | sed 's/  */#WHITESPACE_PLACEHOLDER#/g'); do
-            _WHITESPACED=$(echo "${_PLACEHOLDED}" | sed 's/#WHITESPACE_PLACEHOLDER#/ /g')
-            _LEN=$(echo -n "${_WHITESPACED}" | wc -c)
-            _TO_CMP=$(echo "${_LINE}" | cut -c "-${_LEN}")
-            if [ "${_TO_CMP}" = "${_WHITESPACED}" ]; then
-                _DO_CONTINUE=1
-               break
-            fi
-        done
-        if [ 1 = "${_DO_CONTINUE}" ]; then     
+_PREFIXES=\
+'9 5 0 Get:
+5 2-3 0 Get:
+6 2-4 0 Get:
+7 2-3 0 Get:
+4 2-3 0 Hit:
+8 7 0 Installing new version of config file
+6 4 0 Processing triggers for
+7 5 0 Purging configuration files for
+5 4 0 Removing obsolete conffile
+4 2 0 Removing
+5 5 1 Selecting previously unselected package
+5 3 0 Setting up
+11 8 1 dpkg: warning: unable to delete old directory'
+
+_LAST_PREFIX=''
+DEBIAN_FRONTEND=noninteractive apt-get -y $1 2>&1 | while read _LINE; do
+    _DO_CONTINUE=
+    for _PLACEHOLDED in $(echo "${_TO_IGNORE}" | sed 's/  */#WHITESPACE_PLACEHOLDER#/g'); do
+        _WHITESPACED=$(echo "${_PLACEHOLDED}" | sed 's/#WHITESPACE_PLACEHOLDER#/ /g')
+        _LEN=$(echo -n "${_WHITESPACED}" | wc -c)
+        _TO_CMP=$(echo "${_LINE}" | cut -c "-${_LEN}")
+        if [ "${_TO_CMP}" = "${_WHITESPACED}" ]; then
+            _DO_CONTINUE=1
+       break
+        fi
+    done
+    if [ 1 = "${_DO_CONTINUE}" ]; then 
+        continue
+    fi
+    _ITEM=''
+    for _PLACEHOLDED in $(echo "${_PREFIXES}" | sed 's/  */#WHITESPACE_PLACEHOLDER#/g'); do
+        _WHITESPACED=$(echo "${_PLACEHOLDED}" | sed 's/#WHITESPACE_PLACEHOLDER#/ /g')
+        _N_WORDS=$(echo "${_WHITESPACED}" | cut -d' ' -f1)
+        _TO_CMP=$(echo "${_LINE}" | wc -w)
+        if [ ! "${_N_WORDS}" -eq "${_TO_CMP}" ]; then
             continue
         fi
-        _ITEM=''
-        for _PLACEHOLDED in $(echo "${_PREFIXES}" | sed 's/  */#WHITESPACE_PLACEHOLDER#/g'); do
-            _WHITESPACED=$(echo "${_PLACEHOLDED}" | sed 's/#WHITESPACE_PLACEHOLDER#/ /g')
-            _N_WORDS=$(echo "${_WHITESPACED}" | cut -d' ' -f1)
-            _TO_CMP=$(echo "${_LINE}" | wc -w)
-            if [ ! "${_N_WORDS}" -eq "${_TO_CMP}" ]; then
-                continue
-            fi
-            _PREFIX=$(echo "${_WHITESPACED}" | cut -d' ' -f3-)
-            _LEN=$(echo -n "${_PREFIX}" | wc -c)
-            _TO_CMP=$(echo "${_LINE}" | cut -c "-${_LEN}")
-            if [ "${_TO_CMP}" != "${_PREFIX}" ]; then
-                continue
-            elif [ "${_LAST_PREFIX}" != "${_PREFIX}" ]; then
-                if [ ! -z "${_LAST_PREFIX}" ]; then 
-                    echo ''
-       fi
-       echo -n "\r· ${_PREFIX}"
-            fi 
-            _IDX_ITEM=$(echo "${_WHITESPACED}" | cut -d' ' -f2)
-            _ITEM=$(echo "${_LINE}" | cut -d' ' "-f${_IDX_ITEM}")
-            echo -n " ${_ITEM}"
-            _LAST_PREFIX="${_PREFIX}"
-            break
-        done
-        if [ -z "${_ITEM}" ]; then
-            if [ ! -z "${_LAST_PREFIX}" ]; then 
+        _PREFIX=$(echo "${_WHITESPACED}" | cut -d' ' -f4-)
+        _LEN_PREFIX=$(echo -n "${_PREFIX}" | wc -c)
+        _TO_CMP=$(echo "${_LINE}" | cut -c "-${_LEN_PREFIX}")
+        if [ "${_TO_CMP}" != "${_PREFIX}" ]; then
+            continue
+        elif [ "${_LAST_PREFIX}" != "${_PREFIX}" ]; then
+            if [ ! -z "${_LAST_PREFIX}" ]; then
                 echo ''
             fi
-            echo "\r# ${_LINE}"
-            _LAST_PREFIX=''
+            echo -n "\r· ${_PREFIX}"
+        fi
+        _IDX_ITEM=$(echo "${_WHITESPACED}" | cut -d' ' -f2)
+        _CUTOFF=$(echo "${_WHITESPACED}" | cut -d' ' -f3)
+        _ITEM=$(echo "${_LINE}" | cut -d' ' "-f${_IDX_ITEM}")
+        if [ "${_CUTOFF}" -gt 0 ]; then
+            _LEN_ITEM=$(echo -n "${_ITEM}" | wc -c)
+            _LEN_ITEM_CUT=$(calc "${_LEN_ITEM} - ${_CUTOFF} - 1" | tr -d '\t')
+            _ITEM=$(echo "${_ITEM}" | cut -c "-${_LEN_ITEM_CUT}")
         fi
+        echo -n " ${_ITEM}"
+        _LAST_PREFIX="${_PREFIX}"
+        break
     done
-    echo ''
+    if [ -z "${_ITEM}" ]; then
+        if [ ! -z "${_LAST_PREFIX}" ]; then
+            echo ''
+        fi
+        echo "\r# ${_LINE}"
+        _LAST_PREFIX=''
+    fi
+done
+echo ''
 }
-
index 71e1579ddd6e095ab75b98a6a14d1af5814aefc1..f14d4e7c38d0fdbac1593a50c57fdf789bebcd07 100644 (file)
@@ -30,9 +30,9 @@ core_setup() {
     # before purging, ensure tagged packages installed
     ensure_packages_of_tags ${_INSTALL_TAGS} 
     echo "Autoremove and purge …"
-    apt_get_edited autopurge
+    apt_get_edited '-q -q autopurge'
     echo "And now: dist-upgrade …"
-    apt_get_edited dist-upgrade 
+    apt_get_edited '-q -q dist-upgrade' 
 
     echo "Setting up user: ${USERNAME}"
     adduser --quiet --disabled-password --gecos "" "${USERNAME}"
deleted file mode 100644 (file)
index 81a3365d4cbfc21707d20510396fc3c738a7e8c2..0000000000000000000000000000000000000000
+++ /dev/null
@@ -1,7 +0,0 @@
-. lib/abort
-
-abort_if_command_unknown() {
-    if ! which "$1" > /dev/null; then
-        abort "Expected command unavailable: ${1}."
-    fi
-}
new file mode 120000 (symlink)
index 0000000000000000000000000000000000000000..5d77154b14d67f294535e4bff6cb31ae19213bb0
--- /dev/null
@@ -0,0 +1 @@
+../../../bookworm/scripts/lib/abort_if_command_unknown
\ No newline at end of file
index 41fe28c760831a666960526ccad39ecd6b02f7bb..6a90594f65920d9677a7a2ff7a04aa394673e661 100755 (executable)
@@ -11,28 +11,30 @@ PATH_COPY_TAG='../copy/all'
 # to reduce clutter …
 apt-get -y autoremove apt-listchanges > /dev/null
 
+apt-get -q -q -y install calc > /dev/null
+
 apt_update_to_full_upgrade() {
     echo '· Updating package database …'
-    apt_get_edited update
+    apt_get_edited '-q -q update'
 
-    echo '\n· Soft-upgrading …'
-    apt_get_edited '-q -o Dpkg::Options::=--force-confnew upgrade'
+    echo '· Soft-upgrading …'
+    apt_get_edited '-q -q -o Dpkg::Options::=--force-confnew upgrade'
 
-    echo '\n· Full-upgrading …'
-    apt_get_edited '-q -o Dpkg::Options::=--force-confnew full-upgrade'
+    echo '· Full-upgrading …'
+    apt_get_edited '-q -q -o Dpkg::Options::=--force-confnew full-upgrade'
 }
 
 PATH_CONF_MIN_DEPS="${PATH_COPY_TAG}${PATH_ETC_APT_CONF}/99_minimize_dependencies"
-echo "\n· Copying over ${PATH_CONF_MIN_DEPS} …"
+echo "· Copying over ${PATH_CONF_MIN_DEPS} …"
 cp "${PATH_CONF_MIN_DEPS}" "${PATH_ETC_APT_CONF}/"
 
 apt_update_to_full_upgrade
 
 PATH_CONF_SOURCES="${PATH_COPY_TAG}${PATH_ETC_APT}/sources.list"
-echo "\n· Copying over ${PATH_CONF_SOURCES} …"
+echo "· Copying over ${PATH_CONF_SOURCES} …"
 cp "${PATH_CONF_SOURCES}" "${PATH_ETC_APT}/"
 
 apt_update_to_full_upgrade
 
-echo '\n· Purging …'
-apt_get_edited  '-q autopurge'
+echo '· Purging …'
+apt_get_edited  '-q -q autopurge'