{ inputs, pkgs, ... }: { imports = [ # DE + style ../../modules/desktop-environments/hyprland.nix ../../modules/home-manager/apple-style.nix ../../modules/home-manager/stylix.nix # Utilities + apps ../../modules/home-manager/darkman.nix ../../modules/home-manager/fish.nix ../../modules/home-manager/ags.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"; "$email" = "thunderbird"; "$shell" = "fish"; "$screenshot_dir" = "$HOME/images/screenshots"; }; }; modules.stylix = { enable = true; lightWallpaper = ./wallpapers/light.jpg; darkWallpaper = ./wallpapers/dark.jpg; }; stylix.targets.firefox.profileNames = ["default"]; modules.ags = { enable = true; full = true; }; modules.darkman.enable = true; modules.apple-style.enable = true; modules.fish = { enable = true; enableStarship = true; functions = import ./fish-functions.nix; }; 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 ]; }; programs.vscode = { enable = true; package = pkgs.vscodium; profiles.default.extensions = with pkgs.vscode-extensions; [ rust-lang.rust-analyzer bbenoist.nix ]; }; }