aboutsummaryrefslogtreecommitdiffstats
path: root/install.sh
diff options
context:
space:
mode:
Diffstat (limited to 'install.sh')
-rwxr-xr-xinstall.sh11
1 files changed, 8 insertions, 3 deletions
diff --git a/install.sh b/install.sh
index 7b6ca28..95d3325 100755
--- a/install.sh
+++ b/install.sh
@@ -8,14 +8,19 @@ repo="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
target="$HOME/.config/rofi/udt"
# Everything this prints also becomes the install tab of quickshell's steps
-# window, from whichever caller: the usual one is the appearance panel, not a
-# terminal, so the hints are assumed wanted on screen. The script reruns
-# itself as a child so the output can be both shown live and kept whole.
+# window when there is something to do, from whichever caller: the usual one
+# is the appearance panel, not a terminal, so the hints are assumed wanted on
+# screen. The script reruns itself as a child so the output can be both shown
+# live and kept whole.
if [ -z "${UDT_INSTALL_CHILD:-}" ]; then
log="$(mktemp)"
trap 'rm -f "$log"' EXIT
rc=0
UDT_INSTALL_CHILD=1 "$repo/install.sh" "$@" 2>&1 | tee "$log" || rc=$?
+ # Only a failure or a command to run (a line indented two spaces) is
+ # something to do; otherwise the tab is cleared, so a login's wallpaper
+ # restore, which pokes the window, does not reopen a stale recap.
+ if [ "$rc" -eq 0 ] && ! grep -q '^ ' "$log"; then : > "$log"; fi
"$repo/bin/udt-steps" install < "$log"
exit "$rc"
fi