diff --git a/flake.nix b/flake.nix index 4011e4f..a97a62e 100644 --- a/flake.nix +++ b/flake.nix @@ -9,18 +9,24 @@ url = "github:nix-community/stylix"; inputs.nixpkgs.follows = "nixpkgs"; }; + gslapper = { + url = "github:Nomadcxx/gSlapper"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = - { + inputs@{ nixpkgs, home-manager, stylix, + gslapper, ... }: { homeConfigurations."eriq12" = home-manager.lib.homeManagerConfiguration { pkgs = nixpkgs.legacyPackages.x86_64-linux; + extraSpecialArgs = { inherit inputs; }; modules = [ stylix.homeModules.stylix ./home.nix diff --git a/home.nix b/home.nix index 1a93887..41e8cb3 100644 --- a/home.nix +++ b/home.nix @@ -97,7 +97,6 @@ dark = "Papirus-Dark"; light = "Papirus-Light"; }; - targets.hyprpaper.enable = false; }; # Services diff --git a/hyprland-services.nix b/hyprland-services.nix index b211880..3e71a17 100644 --- a/hyprland-services.nix +++ b/hyprland-services.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, inputs, ... }: { systemd.user.services = { @@ -22,18 +22,32 @@ ]; }; }; - hyprpaper = { + gslapper = { Unit = { - Description = "A simple background program for the hypr ecosystem."; + Description = "gSlapper Wallpaper Service"; After = [ "graphical-session.target" "wayland-session@hyprland.desktop.target" ]; + Wants = [ + "graphical-session.target" + "wayland-session@hyprland.desktop.target" + ]; }; Service = { - ExecStart = "${pkgs.hyprpaper}/bin/hyprpaper"; + 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 = [