aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--dot_config/swayr/config.toml9
-rw-r--r--dot_config/systemd/user/swayrd.service15
-rw-r--r--meta/base.txt5
-rw-r--r--systemd-units/user.txt1
4 files changed, 30 insertions, 0 deletions
diff --git a/dot_config/swayr/config.toml b/dot_config/swayr/config.toml
new file mode 100644
index 0000000..13ee226
--- /dev/null
+++ b/dot_config/swayr/config.toml
@@ -0,0 +1,9 @@
+# swayr daemon config. The daemon (swayrd) runs as a systemd user
+# service tied to sway-session.target. The only feature we use is
+# auto-tile: on every new window, swayrd issues splith or splitv on
+# the focused container based on its width-vs-height. Everything else
+# (menu launcher, format strings, …) is unused — swayr is *not* bound
+# to any keybinds here.
+
+[layout]
+auto_tile = true
diff --git a/dot_config/systemd/user/swayrd.service b/dot_config/systemd/user/swayrd.service
new file mode 100644
index 0000000..82e4164
--- /dev/null
+++ b/dot_config/systemd/user/swayrd.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=swayr daemon (auto-tile + window-switcher IPC client)
+Documentation=https://sr.ht/~tsdh/swayr/
+PartOf=graphical-session.target
+After=graphical-session.target
+ConditionEnvironment=SWAYSOCK
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/swayrd
+Restart=on-failure
+RestartSec=2s
+
+[Install]
+WantedBy=sway-session.target
diff --git a/meta/base.txt b/meta/base.txt
index 3c94a18..0d834e5 100644
--- a/meta/base.txt
+++ b/meta/base.txt
@@ -145,6 +145,11 @@ woff2-font-awesome
# --- wayland session ---
# Compositor
sway
+# Auto-tile daemon: splits new containers along the focused window's
+# longest side via sway IPC. Configured in ~/.config/swayr/config.toml
+# ([layout].auto_tile = true). Daemon runs as swayrd.service under
+# sway-session.target.
+swayr
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
qt5-wayland
diff --git a/systemd-units/user.txt b/systemd-units/user.txt
index bc16c0e..8badf82 100644
--- a/systemd-units/user.txt
+++ b/systemd-units/user.txt
@@ -10,6 +10,7 @@ inhibridge.service
pass-secret-service.service
signal.service
swayidle.service
+swayrd.service
waybar.service
wob.service