mirror of
				https://github.com/tiyn/dotfiles.git
				synced 2025-10-30 12:01:16 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| # Script to easily manage a do not disturb mode for dunst
 | |
| 
 | |
| case "$1" in
 | |
|   start)
 | |
|     # notify-send -u low "dunst" "Do not disturb started"
 | |
|     dunstctl history-clear
 | |
|     dunstctl rule dnd_low enable
 | |
|     dunstctl rule dnd_normal enable
 | |
|     dunstctl rule sound_normal disable
 | |
|     touch ~/.local/state/dnd_mode.lock
 | |
|     pkill -RTMIN+4 $STATUSBAR
 | |
|     paplay ~/.local/bin/etc/sxhkd/dnd/notifications_disabled.mp3 ;;
 | |
|   stop)
 | |
|     # notify-send -u low "dunst" "Do not disturb stopped"
 | |
|     dunstctl rule dnd_low disable
 | |
|     dunstctl rule dnd_normal disable
 | |
|     dunstctl rule sound_normal enable
 | |
|     hist_size=$(dunstctl history | jq '.data[0] | length')
 | |
|     for i in `seq $hist_size`; do
 | |
|       dunstctl history-pop
 | |
|     done
 | |
|     rm ~/.local/state/dnd_mode.lock
 | |
|     pkill -RTMIN+4 $STATUSBAR
 | |
|     paplay ~/.local/bin/etc/sxhkd/dnd/notifications_enabled.mp3 ;;
 | |
|   toggle)
 | |
|     if [ -f ~/.local/state/dnd_mode.lock ]; then
 | |
|       dnd stop
 | |
|     else
 | |
|       dnd start
 | |
|     fi ;;
 | |
|   *) cat << EOF
 | |
| dnd: dunst interface to manage a do-not-disturb-mode.
 | |
| 
 | |
| Allowed options:
 | |
|   start         Enable do-not-disturb-mode
 | |
|   stop          Disable do-not-disturb-mode
 | |
|   toggle        Toggle sound
 | |
| 
 | |
| EOF
 | |
| esac
 |