new wallpaperthingie
This commit is contained in:
+34
-45
@@ -210,6 +210,8 @@ outputs =
|
|||||||
|
|
||||||
home-manager.extraSpecialArgs = { inherit user inputs flakeRoot; };
|
home-manager.extraSpecialArgs = { inherit user inputs flakeRoot; };
|
||||||
}
|
}
|
||||||
|
# wallpaperstuff
|
||||||
|
./generated/out_of_tree/core/rotating_wallpaper.nix
|
||||||
];
|
];
|
||||||
specialArgs = { inherit user inputs flakeRoot; };
|
specialArgs = { inherit user inputs flakeRoot; };
|
||||||
}
|
}
|
||||||
@@ -671,6 +673,38 @@ You'll notice the color values in multiple places outside this as well.
|
|||||||
}
|
}
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
|
** =generated/out-of-tree/core/rotating_wallpaper.nix=
|
||||||
|
rotating_wallpaper.nix installs wpaperd and deploys your wallpaper files from the repo (./assets/hyprland/wallpaperstuff/) into ~/Droidnix/wallpaperstuff/.
|
||||||
|
You can edit assets/hyprland/wallpaperstuff/wallpaper.toml to change settings
|
||||||
|
Finally, it creates a systemd user service (wpaperd.service) that automatically starts wpaperd at login and keeps it running, using your override config so wallpapers rotate according to your settings.
|
||||||
|
#+BEGIN_SRC nix :tangle generated/out-of-tree/core/rotating_wallpaper.nix :noweb tangle :mkdirp yes :eval never-html
|
||||||
|
{ config, pkgs, lib, flakeRoot, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
# Pad naar de wallpaper config in de flake
|
||||||
|
wallpaperConf = "${flakeRoot}/assets/hyprland/wallpaperstuff/wallpaper.conf";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# Installeer wpaperd voor de gebruiker
|
||||||
|
home.packages = [ pkgs.wpaperd ];
|
||||||
|
|
||||||
|
# Plaats de wallpaper.conf automatisch in $HOME/.config/wpaperd
|
||||||
|
home.file.".config/wpaperd/wallpaper.conf".source = wallpaperConf;
|
||||||
|
|
||||||
|
# Systemd user service
|
||||||
|
systemd.user.services.wpaperd = {
|
||||||
|
description = "wpaperd wallpaper daemon";
|
||||||
|
wantedBy = [ "default.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.wpaperd}/bin/wpaperd --config ${config.home.homeDirectory}/.config/wpaperd/wallpaper.conf";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
* Now we reach the top of the hierarchy which will call all other imports
|
* Now we reach the top of the hierarchy which will call all other imports
|
||||||
|
|
||||||
@@ -775,51 +809,6 @@ This is top file of this level which contains just an import statement for all r
|
|||||||
}
|
}
|
||||||
#+END_SRC
|
#+END_SRC
|
||||||
|
|
||||||
** =generated/hyprland/decorations/rotating_wallpaper.nix=
|
|
||||||
rotating_wallpaper.nix installs wpaperd and deploys your wallpaper files from the repo (./assets/hyprland/wallpaperstuff/) into ~/Droidnix/wallpaperstuff/.
|
|
||||||
You can edit assets/hyprland/wallpaperstuff/wallpaper.toml to change settings
|
|
||||||
Finally, it creates a systemd user service (wpaperd.service) that automatically starts wpaperd at login and keeps it running, using your override config so wallpapers rotate according to your settings.
|
|
||||||
#+BEGIN_SRC nix :tangle generated/hyprland/decorations/rotating_wallpaper.nix :noweb tangle :mkdirp yes :eval never-html
|
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
flakeRoot,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
let
|
|
||||||
wallpaperSource = "${flakeRoot}/assets/hyprland/wallpaperstuff";
|
|
||||||
wallpaperTarget = "$HOME/.config/wpaperd";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
# Install wpaperd system-wide
|
|
||||||
environment.systemPackages = with pkgs; [ wpaperd ];
|
|
||||||
|
|
||||||
# User systemd service (runs on login)
|
|
||||||
systemd.user.services.wpaperd = {
|
|
||||||
description = "wpaperd wallpaper daemon";
|
|
||||||
after = [ "default.target" ];
|
|
||||||
|
|
||||||
serviceConfig = {
|
|
||||||
Type = "simple";
|
|
||||||
# Copy config first, then run wpaperd
|
|
||||||
ExecStartPre = ''
|
|
||||||
mkdir -p "${wallpaperTarget}"
|
|
||||||
cp -rT "${wallpaperSource}" "${wallpaperTarget}"
|
|
||||||
rsync -av --no-group --no-owner "${wallpaperSource}/" "$HOME/Droidnix/"
|
|
||||||
'';
|
|
||||||
ExecStart = "${pkgs.wpaperd}/bin/wpaperd --config ${wallpaperTarget}/wallpaper.toml";
|
|
||||||
Restart = "on-failure";
|
|
||||||
RestartSec = 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
wantedBy = [ "default.target" ];
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
#+END_SRC
|
|
||||||
|
|
||||||
** =generated/hyprland/notifications/top.nix=
|
** =generated/hyprland/notifications/top.nix=
|
||||||
This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder
|
This is top file of this level which contains just an import statement for all relevant files and/or the subfolder in this folder
|
||||||
#+BEGIN_SRC nix :tangle generated/hyprland/notifications/top.nix :noweb tangle :mkdirp yes :eval never-html
|
#+BEGIN_SRC nix :tangle generated/hyprland/notifications/top.nix :noweb tangle :mkdirp yes :eval never-html
|
||||||
|
|||||||
@@ -66,6 +66,8 @@ outputs =
|
|||||||
|
|
||||||
home-manager.extraSpecialArgs = { inherit user inputs flakeRoot; };
|
home-manager.extraSpecialArgs = { inherit user inputs flakeRoot; };
|
||||||
}
|
}
|
||||||
|
# wallpaperstuff
|
||||||
|
./generated/out_of_tree/core/rotating_wallpaper.nix
|
||||||
];
|
];
|
||||||
specialArgs = { inherit user inputs flakeRoot; };
|
specialArgs = { inherit user inputs flakeRoot; };
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
{ config, pkgs, lib, flakeRoot, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
# Pad naar de wallpaper config in de flake
|
||||||
|
wallpaperConf = "${flakeRoot}/assets/hyprland/wallpaperstuff/wallpaper.conf";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# Installeer wpaperd voor de gebruiker
|
||||||
|
home.packages = [ pkgs.wpaperd ];
|
||||||
|
|
||||||
|
# Plaats de wallpaper.conf automatisch in $HOME/.config/wpaperd
|
||||||
|
home.file.".config/wpaperd/wallpaper.conf".source = wallpaperConf;
|
||||||
|
|
||||||
|
# Systemd user service
|
||||||
|
systemd.user.services.wpaperd = {
|
||||||
|
description = "wpaperd wallpaper daemon";
|
||||||
|
wantedBy = [ "default.target" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
ExecStart = "${pkgs.wpaperd}/bin/wpaperd --config ${config.home.homeDirectory}/.config/wpaperd/wallpaper.conf";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = 1;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user