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:
parent
5f95f0ffba
commit
af0e27630f
|
@ -3,7 +3,7 @@
|
||||||
workspaces() {
|
workspaces() {
|
||||||
hyprctl workspaces -j | jaq -c 'map({key: .id | tostring, value: .windows}) | from_entries
|
hyprctl workspaces -j | jaq -c 'map({key: .id | tostring, value: .windows}) | from_entries
|
||||||
| . as $windows | [range(1;11) | {id: tostring, windows: $windows[tostring] // 0,
|
| . as $windows | [range(1;11) | {id: tostring, windows: $windows[tostring] // 0,
|
||||||
previous: $windows[.-1|tostring] // 0, next: $windows[.+1|tostring] // 0 }]'
|
previous: $windows[.-1|tostring] // 0, next: $windows[.+1|tostring] // 0}]'
|
||||||
}
|
}
|
||||||
|
|
||||||
workspaces
|
workspaces
|
||||||
|
|
|
@ -4,11 +4,6 @@ let
|
||||||
modifier = "SUPER";
|
modifier = "SUPER";
|
||||||
terminal = "alacritty";
|
terminal = "alacritty";
|
||||||
in {
|
in {
|
||||||
home.packages = with pkgs; [
|
|
||||||
swaybg
|
|
||||||
swayidle
|
|
||||||
];
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
|
@ -28,10 +23,6 @@ in {
|
||||||
"$terminal" = terminal;
|
"$terminal" = terminal;
|
||||||
"$menu" = "rofi -show drun";
|
"$menu" = "rofi -show drun";
|
||||||
|
|
||||||
exec-once = [
|
|
||||||
"background=${../../assets/background.png} platform=${config.platform} ${scripts}/autostart"
|
|
||||||
];
|
|
||||||
|
|
||||||
general = {
|
general = {
|
||||||
layout = "hy3";
|
layout = "hy3";
|
||||||
|
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Background
|
|
||||||
swaybg -o '*' -i "$background" -m fill &
|
|
||||||
|
|
||||||
# Status Bar
|
|
||||||
eww open "$platform"_bar --screen 0
|
|
|
@ -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
|
# Rofi
|
||||||
|
|
||||||
programs.rofi.enable = true;
|
programs.rofi.enable = true;
|
||||||
|
@ -72,6 +91,27 @@
|
||||||
programs.eww.enable = true;
|
programs.eww.enable = true;
|
||||||
programs.eww.configDir = ./eww;
|
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
|
# Mako
|
||||||
|
|
||||||
services.mako = {
|
services.mako = {
|
||||||
|
|
Loading…
Reference in a new issue