refactor: use systemd services instead of start script

This is probably what I should've done from the beginning, but I didn't
really know how `systemd` worked when I started writing this config.
This commit is contained in:
Kiana Sheibani 2024-10-15 03:30:13 -04:00
parent 5f95f0ffba
commit af0e27630f
Signed by: toki
GPG key ID: 6CB106C25E86A9F7
4 changed files with 42 additions and 18 deletions

View file

@ -60,6 +60,25 @@
];
};
# Swaybg
systemd.user.services.swaybg = {
Install.WantedBy = [ "graphical-session.target" ];
Unit = {
Description = "Sway background manager";
After = [ "graphical-session-pre.target" ];
PartOf = [ "graphical-session.target" ];
ConditionEnvironment = "WAYLAND_DISPLAY";
};
Service = {
ExecStart = "${lib.getExe pkgs.swaybg} -o '*' -i ${../../assets/background.png} -m fill";
Restart = "always";
RestartSec = "5";
};
};
# Rofi
programs.rofi.enable = true;
@ -72,6 +91,27 @@
programs.eww.enable = true;
programs.eww.configDir = ./eww;
systemd.user.services.eww =
let eww = lib.getExe config.programs.eww.package;
in {
Install.WantedBy = [ "graphical-session.target" ];
Unit = {
Description = "GTK-based custom widgets";
Documentation = "https://github.com/elkowar/eww";
After = [ "graphical-session-pre.target" ];
PartOf = [ "graphical-session.target" ];
ConditionEnvironment = "WAYLAND_DISPLAY";
};
Service = {
ExecStart = "${eww} daemon --no-daemonize";
ExecStartPost = "${eww} open ${config.machine}_bar --screen 0";
Restart = "always";
RestartSec = "5";
};
};
# Mako
services.mako = {