mirror of
https://github.imc.re/void-land/hyprland-void-dots
synced 2025-04-26 18:53:43 +02:00
55 lines
1.2 KiB
Bash
Executable file
55 lines
1.2 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
dunst_dir="$HOME/.config/dunst"
|
|
inotify_events="-e close_write,move,create"
|
|
send_notification=false
|
|
|
|
case $1 in
|
|
d) send_notification=true ;;
|
|
h)
|
|
echo "d : dev mode show notif after reset"
|
|
exit 0
|
|
;;
|
|
*) ;;
|
|
esac
|
|
|
|
if [[ ! -d "$dunst_dir" ]]; then
|
|
echo "Error: Configuration directory or files missing!"
|
|
exit 1
|
|
fi
|
|
|
|
pkill dunst
|
|
sleep 1
|
|
|
|
while true; do
|
|
logger -i "$0: Starting dunst in the background..."
|
|
dunst &
|
|
dunst_pid=$!
|
|
|
|
if $send_notification; then
|
|
notify-send "Dunst Restarted" "Dunst has been restarted."
|
|
fi
|
|
|
|
logger -i "$0: Started dunst PID=$dunst_pid. Waiting for modifications in $dunst_dir..."
|
|
inotifywait $inotify_events "$dunst_dir" 2>&1 | logger -i
|
|
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Error: inotifywait failed!"
|
|
exit 1
|
|
fi
|
|
|
|
logger -i "$0: Configuration files in $dunst_dir modified. Killing dunst process..."
|
|
pkill dunst 2>&1 | logger -i
|
|
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Error: Killing dunst failed!"
|
|
exit 1
|
|
fi
|
|
|
|
wait $dunst_pid
|
|
if [[ $? -ne 0 ]]; then
|
|
echo "Warning: dunst process exited unexpectedly!"
|
|
fi
|
|
|
|
logger -i "$0: killall dunst returned $?. Waiting for the next modifications..."
|
|
done
|