{ config, pkgs, lib, ... }: let cfg = config.features.gui.desktops.niri.parts.waypaper; aes = config.aesthetics; in { options.features.gui.desktops.niri.parts.waypaper.enable = lib.mkEnableOption "waypaper"; config = lib.mkIf cfg.enable { home.packages = with pkgs; [ waypaper ]; home.file."waypaper-config" = { target = ".config/waypaper/config.ini"; source = lib.generators.toINI {} { folder = aes.wallpapersDir; wallpaper = aes.wallpaper; zen_mode = true; subfolders = true; swww_transition_type = "wipe"; swww_transition_step = 63; swww_transition_angle = 0; swww_transition_duration = 2; swww_transition_fps = 60; }; }; }; }