aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/systemd-units
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:32 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:32 +0100
commit2970b9dddc6b89705a6836fa0864fb841925ff6f (patch)
tree34b73db29f72950c8f62a1eccec57943d0be8f7a /systemd-units
parente00ad35dd4adcc21dd83ca063a2e306f8ae8b512 (diff)
downloaddotfiles-2970b9dddc6b89705a6836fa0864fb841925ff6f.tar.gz
dotfiles-2970b9dddc6b89705a6836fa0864fb841925ff6f.tar.bz2
dotfiles-2970b9dddc6b89705a6836fa0864fb841925ff6f.zip
refactor(meta): flatten groups; only break out optional/hw-specific
Drop the per-domain group fragmentation in meta/ and the parallel group-per-file structure in systemd-units/. meta/ (18 -> 6 groups): keep base, flatpak (magic), intel, nvidia, work, btc fold browser, bt, cpp, dev, extra, fonts, mail, media, nix, sound, wayland -> base (with `# --- section ---` comments preserving at-a-glance structure) drop fortran (niche; install ad-hoc when needed) systemd-units/: flatten to a single system.txt + user.txt; .ignore files move up one level; group concept and pairing rule removed. justfile: unit-list/unit-apply/unit-status no longer take a group argument. unit-add/unit-forget infer scope by probing `systemctl [--user] cat <unit>` (system wins on tie). Top-level add/forget dispatcher updated: any unit-suffixed arg routes to unit-* without requiring a leading GROUP. docs: .github/copilot-instructions.md and README.md updated to describe the new flat layout. Pairing rule and group-token grammar gone. Pure layout refactor - no package contents change.
Diffstat (limited to 'systemd-units')
-rw-r--r--systemd-units/system.ignore (renamed from systemd-units/system/.ignore)2
-rw-r--r--systemd-units/system.txt30
-rw-r--r--systemd-units/system/base.txt19
-rw-r--r--systemd-units/system/bt.txt4
-rw-r--r--systemd-units/system/btc.txt4
-rw-r--r--systemd-units/system/nix.txt3
-rw-r--r--systemd-units/user.ignore (renamed from systemd-units/user/.ignore)0
-rw-r--r--systemd-units/user.txt14
-rw-r--r--systemd-units/user/graphical.txt9
-rw-r--r--systemd-units/user/mail.txt2
10 files changed, 45 insertions, 42 deletions
diff --git a/systemd-units/system/.ignore b/systemd-units/system.ignore
index 32f2225..a3d0af6 100644
--- a/systemd-units/system/.ignore
+++ b/systemd-units/system.ignore
@@ -1,4 +1,4 @@
-# Systemd units to suppress from 'just services-drift' uncurated output.
+# Systemd units to suppress from `just unit-status` uncurated output.
# Typically distro defaults enabled by systemd presets that are neither
# worth curating nor worth disabling. One unit per line, # comments OK.
diff --git a/systemd-units/system.txt b/systemd-units/system.txt
new file mode 100644
index 0000000..5d1d936
--- /dev/null
+++ b/systemd-units/system.txt
@@ -0,0 +1,30 @@
+# System-scope systemd units to enable. One unit per line, # comments OK.
+# Enabled by `just unit-apply` via `sudo systemctl enable`.
+
+# --- core ---
+systemd-timesyncd.service
+systemd-resolved.service
+systemd-oomd.service
+reflector.timer
+paccache.timer
+acpid.service
+cpupower.service
+iwd.service
+nftables.service
+systemd-networkd.service
+systemd-networkd-wait-online.service
+tlp.service
+pcscd.socket
+smartd.service
+btrfs-scrub@-.timer
+fwupd-refresh.timer
+
+# --- bluetooth ---
+bluetooth.service
+
+# --- btc ---
+tor.service
+
+# --- nix (socket-activated builder daemon; the .service spawns on first
+# client connect, the .socket is what gets enabled) ---
+nix-daemon.socket
diff --git a/systemd-units/system/base.txt b/systemd-units/system/base.txt
deleted file mode 100644
index 1e3af9b..0000000
--- a/systemd-units/system/base.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-# Systemd units to enable when the 'base' meta group is installed.
-# One unit per line, # comments OK.
-
-systemd-timesyncd.service
-systemd-resolved.service
-systemd-oomd.service
-reflector.timer
-paccache.timer
-acpid.service
-cpupower.service
-iwd.service
-nftables.service
-systemd-networkd.service
-systemd-networkd-wait-online.service
-tlp.service
-pcscd.socket
-smartd.service
-btrfs-scrub@-.timer
-fwupd-refresh.timer
diff --git a/systemd-units/system/bt.txt b/systemd-units/system/bt.txt
deleted file mode 100644
index 985b8dc..0000000
--- a/systemd-units/system/bt.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-# Systemd units to enable when the 'bt' meta group is installed.
-# One unit per line, # comments OK.
-
-bluetooth.service
diff --git a/systemd-units/system/btc.txt b/systemd-units/system/btc.txt
deleted file mode 100644
index b30199c..0000000
--- a/systemd-units/system/btc.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-# Systemd units to enable when the 'btc' meta group is installed.
-# One unit per line, # comments OK.
-
-tor.service
diff --git a/systemd-units/system/nix.txt b/systemd-units/system/nix.txt
deleted file mode 100644
index de99aaa..0000000
--- a/systemd-units/system/nix.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-# Nix builder daemon — socket-activated, idle-friendly.
-# The .service spawns on first client connect; the .socket is what gets enabled.
-nix-daemon.socket
diff --git a/systemd-units/user/.ignore b/systemd-units/user.ignore
index 9f95ce0..9f95ce0 100644
--- a/systemd-units/user/.ignore
+++ b/systemd-units/user.ignore
diff --git a/systemd-units/user.txt b/systemd-units/user.txt
new file mode 100644
index 0000000..37e7e7a
--- /dev/null
+++ b/systemd-units/user.txt
@@ -0,0 +1,14 @@
+# User-scope systemd units to enable. One unit per line, # comments OK.
+# Enabled by `just unit-apply` via `systemctl --user enable`.
+
+# --- sway session (all WantedBy=sway-session.target; sway itself starts
+# sway-session.target on login) ---
+cliphist-image.service
+cliphist-text.service
+display-watcher.service
+signal.service
+swayidle.service
+waybar.service
+
+# --- mail (overridden via drop-ins in dot_config/systemd/user/) ---
+protonmail-bridge.service
diff --git a/systemd-units/user/graphical.txt b/systemd-units/user/graphical.txt
deleted file mode 100644
index af6cf4f..0000000
--- a/systemd-units/user/graphical.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-# User units that compose the sway graphical session.
-# All are WantedBy=sway-session.target so enabling them wires them into
-# the session; sway itself starts sway-session.target on login.
-cliphist-image.service
-cliphist-text.service
-display-watcher.service
-signal.service
-swayidle.service
-waybar.service
diff --git a/systemd-units/user/mail.txt b/systemd-units/user/mail.txt
deleted file mode 100644
index 1f7804c..0000000
--- a/systemd-units/user/mail.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-# User services we override via drop-ins in dot_config/systemd/user/.
-protonmail-bridge.service