From 6f32887a0ea07ea8d5a792c525ff66284cfac5e6 Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Sun, 20 Dec 2020 20:56:53 +0530 Subject: Fixes autostart and x init stuff --- packages/dwm/autostart.sh | 104 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100755 packages/dwm/autostart.sh (limited to 'packages/dwm/autostart.sh') diff --git a/packages/dwm/autostart.sh b/packages/dwm/autostart.sh new file mode 100755 index 0000000..78a54c8 --- /dev/null +++ b/packages/dwm/autostart.sh @@ -0,0 +1,104 @@ +# source ~/.zshrc; + +##### Helpers {{{ +action="$1"; + +# Is logout command (Cleanup) +is_kill() { [[ "$action" == "kill" ]]; } + +# Focus on a tag/ws +focus_tag() { [[ ! -z "$1" ]] && dwmc view $(($1 - 1)); sleep 0.2; } + +# Only run when there are no windows on the screen +on_startup() { is_kill || [[ "$(wmctrl -l | wc -l)" = "0" ]] && $@ & } + +# Run only once. If an instance is already running, noop +once() { + local name=$1; shift; + if (is_kill); then + killall "$name"; + else + pgrep $name || $@ & + fi; +} + +# Kill previous instance and run again +run() { + local name=$1; shift; + [[ ! -z "$name" ]] && killall -9 $name && sleep 0.05; + is_kill || $@ & +} +# }}} + + +##### Autostart {{{ + echo "[Autostart]: Running daemons"; + + # Wallpaper + run "" ~/.fehbg; + + # Key daemon + run "shotkey" shotkey; + + # Dwm blocks status text + run "dwmblocks" dwmblocks; + + # Notification daemon + run "dunst" dunst -config ~/.config/dunst/dunstrc; + + # Compositor + run "picom" picom --experimental-backends --config ~/.config/compton.conf; + + # Cron jobs + run "crond" crond -n -f ~/.config/crontab/crontab; + + # Battery watcher + run "" ~/scripts/battery-watch.sh start; + + # Disk automount + once "udiskie" ~/.bin/with_zsh udiskie; + + # Clipboard history + once "clipmenud" clipmenud; + + # Network manager applet + once "nm-applet" nm-applet; + + # Syncthing + run "syncthing" syncthing -logflags=0 -no-browser 2>&1 >/dev/null; + + # Torrent daemon + #once "btpd" btpd -d "$HOME/.config/btpd"; + once "transmission" transmission-daemon --download-dir ~/Downloads/dl; + + # Music daemon + once "mpd" mpd ~/.config/mpd/mpd.conf --stdout --no-daemon; + + # Hide mouse pointer + once "unclutter" unclutter; +# }}} + + +##### Initialized applications {{{ +echo "[Autostart]: Checking applications"; +#on_startup sensible-browser; + +applications() { + #sleep 0.5; + + #focus_tag 9; + #on_startup :today; + #on_startup :tasks; + + #focus_tag 6; + #on_startup sensible-browser; + + #focus_tag 1; +} + +applications & + +# }}} + + +disown; -- cgit v1.3.1