{ inputs, pkgs, ... }: { imports = [ # DEs ../../modules/desktop-environments/hyprland.nix # Utilities + apps ../../modules/home-manager/darkman.nix ../../modules/home-manager/fish.nix # Home Manager modules inputs.ags.homeManagerModules.default ]; modules.hyprland = { enable = true; additionalPackages = with pkgs; [ hyprshot ]; plugins = with pkgs.hyprlandPlugins; [ hyprspace ]; additionalConfig.source = [ "~/.config/hypr/config/animations.conf" "~/.config/hypr/config/autostart.conf" "~/.config/hypr/config/binds.conf" "~/.config/hypr/config/io.conf" "~/.config/hypr/config/misc.conf" "~/.config/hypr/config/rules.conf" "~/.config/hypr/config/workspaces.conf" ]; additionalConfig = { "$terminal" = "alacritty"; "$fileManager" = "thunar"; "$browser" = "firefox-beta"; "$email" = "thunderbird"; "$shell" = "fish"; "$screenshot_dir" = "$HOME/images/screenshots"; }; }; modules.darkman = { enable = true; customLightModeScript = "$HOME/.config/hypr/scripts/random-wallpaper.sh"; customDarkModeScript = "$HOME/.config/hypr/scripts/random-wallpaper.sh"; }; modules.fish = { enable = true; enableStarship = true; functions = import ./fish-functions.nix; }; programs.pywal.enable = true; programs.ags = { enable = true; extraPackages = with inputs.ags.packages.${pkgs.system}; [ apps battery bluetooth greet hyprland mpris network notifd powerprofiles tray wireplumber ] ++ [ pkgs.dart-sass pkgs.fzf pkgs.icon-library ]; }; programs.obs-studio = { enable = true; plugins = with pkgs.obs-studio-plugins; [ obs-source-clone obs-pipewire-audio-capture #advanced-scene-switcher obs-tuna obs-move-transition waveform wlrobs ]; }; }