#!/bin/bash set -euo pipefail if command -v dnf > /dev/null; then DNFCMD="dnf" fi if command -v jq > /dev/null; then JQCMD="jq" fi if [ -z "${DNFCMD+x}" ] || [ -z "${JQCMD+x}" ]; then echo "{\"tooltip\": \"requires 'jq' and 'dnf'\", \"text\": \"\"}" exit 1 fi set -u if ! output="$($DNFCMD needs-restarting -r)"; then icon="" else icon="" fi # this is a literal expression for `jq` # shellcheck disable=SC2016 $JQCMD --unbuffered -n -c '{tooltip: $ARGS.positional[0], text: $ARGS.positional[1]}' --args "$output" "$icon"