Files
home-manager-dotfiles/hyprland-services.nix
T
2026-09-02 23:14:38 -04:00

61 lines
1.6 KiB
Nix

{ pkgs, inputs, ... }:
{
systemd.user.services = {
hyprlauncher = {
Unit = {
Description = "A launcher for the hypr ecosystem.";
After = [
"graphical-session.target"
"wayland-session@hyprland.desktop.target"
];
};
Service = {
ExecStart = "${pkgs.hyprlauncher}/bin/hyprlauncher -d";
Restart = "on-failure";
Slice = "app-graphical.slice";
};
Install = {
WantedBy = [
"graphical-session.target"
"wayland-session@hyprland.desktop.target"
];
};
};
gslapper = {
Unit = {
Description = "gSlapper Wallpaper Service";
After = [
"graphical-session.target"
"wayland-session@hyprland.desktop.target"
];
Wants = [
"graphical-session.target"
"wayland-session@hyprland.desktop.target"
];
};
Service = {
Type = "notify";
ExecStart = "${inputs.gslapper.packages.x86_64-linux.gslapper}/bin/gslapper --systemd --restore '*'";
ExecReload = "kill -HUP $MAINPID";
Restart = "on-failure";
RestartSec = "5";
TimeoutStopSec = "30";
Slice = "app-graphical.slice";
EnvironmentFile = "%h/.config/gslapper/environment";
Environment = "XDG_RUNTIME_DIR=%t";
MemoryMax = "512M";
CPUQuota = "50%";
NoNewPrivileges = "true";
PrivateTmp = "true";
};
Install = {
WantedBy = [
"graphical-session.target"
"wayland-session@hyprland.desktop.target"
];
};
};
};
}