{ inputs, self, ... }: { flake.nixosModules.graphics = { pkgs, config, lib, ... }: { config = lib.mkIf ((config.components.shells == "noctalia")||(builtins.elem "noctalia" config.components.shells)) { environment.systemPackages = with pkgs; [ inputs.noctalia.packages.${system}.default ]; programs.noctalia.enable = true; home-manager.users.grey = lib.mkIf (config.features.nixos.home-manager.enable) ({ lib, config, ... }: { home.activation = { symlinkNoctaliaState = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript { target = ".local/state/noctalia/settings.toml"; source = "dotfiles/${config.info.hostName}/noctalia/settings.toml"; }); symlinkNoctaliaStatePlugins = lib.hm.dag.entryAfter ["writeBoundary"] (config.helpers.mkSymlinkActivationScript { target = ".local/state/noctalia/plugins"; source = "dotfiles/${config.info.hostName}/noctalia/plugins"; isDir = true; }); }; xdg.configFile."noctalia/settings.toml".source = "${self}/dotfiles/${config.info.hostName}/noctalia/settings.toml"; xdg.configFile."noctalia/plugins".source = "${self}/dotfiles/${config.info.hostName}/noctalia/plugins"; }); }; }; }