aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/dot_config/systemd/user/display-watcher.service
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-04-21 01:25:01 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-04-21 01:25:01 +0100
commit030848c18553283683507b78f569d457afae5319 (patch)
treed306925f5b6a2f5463508656ff731ad849ed7229 /dot_config/systemd/user/display-watcher.service
parentc1343b0e0cf1df3bd04e8ad824af4ff96369080c (diff)
downloaddotfiles-030848c18553283683507b78f569d457afae5319.tar.gz
dotfiles-030848c18553283683507b78f569d457afae5319.tar.bz2
dotfiles-030848c18553283683507b78f569d457afae5319.zip
sway: manage mako, poweralertd, display-watcher via systemd user units
Replace sway exec launches with a sway-session.target that BindsTo graphical-session.target and Wants mako, poweralertd, and a new display-watcher.service. Services now get restart-on-failure, journal integration, and clean shutdown when sway exits.
Diffstat (limited to 'dot_config/systemd/user/display-watcher.service')
-rw-r--r--dot_config/systemd/user/display-watcher.service14
1 files changed, 14 insertions, 0 deletions
diff --git a/dot_config/systemd/user/display-watcher.service b/dot_config/systemd/user/display-watcher.service
new file mode 100644
index 0000000..6ab3e40
--- /dev/null
+++ b/dot_config/systemd/user/display-watcher.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Auto-toggle sway display layout on external plug/unplug
+PartOf=graphical-session.target
+After=graphical-session.target
+ConditionEnvironment=SWAYSOCK
+
+[Service]
+Type=simple
+ExecStart=%h/.config/sway/display-watcher.sh
+Restart=on-failure
+RestartSec=2s
+
+[Install]
+WantedBy=sway-session.target