{ pkgs, pkgs-unstable, lib, host, user, inputs, ... }: { imports = [ ./home-modules/auto-mount.nix ./home-modules/bash.nix ./home-modules/bitwarden.nix ./home-modules/calendar.nix ./home-modules/chatterino.nix ./home-modules/color-pallete.nix ./home-modules/direnv.nix ./home-modules/discord.nix ./home-modules/email.nix ./home-modules/firefox.nix ./home-modules/fish.nix # ./home-modules/foot.nix ./home-modules/games.nix ./home-modules/gestures.nix ./home-modules/ghostty.nix ./home-modules/gimp.nix ./home-modules/git.nix ./home-modules/gpg.nix ./home-modules/gtk.nix ./home-modules/helix.nix ./home-modules/hyprland-autoname-workspaces.nix ./home-modules/hyprland.nix ./home-modules/kitty.nix ./home-modules/latex.nix ./home-modules/mako.nix # ./home-modules/matrix.nix # ./home-modules/nm.nix ./home-modules/nh.nix ./home-modules/nixd.nix ./home-modules/nvidia.nix ./home-modules/nxgs.nix # ./home-modules/nx-gcal-event.nix ./home-modules/obs.nix ./home-modules/office.nix ./home-modules/ollama.nix ./home-modules/pandoc.nix ./home-modules/pnx.nix ./home-modules/programming/c.nix ./home-modules/programming/gleam.nix ./home-modules/programming/go.nix ./home-modules/programming/java.nix ./home-modules/programming/js.nix ./home-modules/programming/python.nix ./home-modules/qt.nix ./home-modules/rofi.nix ./home-modules/scanning.nix ./home-modules/sent.nix ./home-modules/sops.nix ./home-modules/ssh.nix ./home-modules/starship.nix ./home-modules/tts.nix ./home-modules/vale.nix ./home-modules/virt-manager.nix ./home-modules/vscode.nix ./home-modules/wallpaper-to-colors.nix ./home-modules/waybar.nix ./home-modules/wlogout.nix ./home-modules/yazi.nix ./home-modules/zathura.nix ./home-modules/zoxide.nix ] ++ (if (host == "NxACE") then [ ./home-modules/nx2site.nix ./home-modules/nx2site-backup.nix ] else []); home.username = user; home.homeDirectory = "/home/${user}"; home.stateVersion = pkgs.version; home.packages = with pkgs; [ bat brightnessctl browsh chromium cmake dig du-dust exiftool eza ffmpeg figlet fontpreview fzf glib glow gnumake gsettings-desktop-schemas imagemagick imv jq lolcat lynx mediainfo mpv neofetch pavucontrol pdfgrep piper-tts pipes playerctl pv qbittorrent reflex ripgrep screen speedtest-go spicetify-cli sssnake swww systemctl-tui tldr unstable.firefox unstable.spotify w3m wev wl-clipboard xclip xfce.thunar xournal yt-dlp inputs.zen-browser.packages."${system}".default ]) ++ (if host != "NxACE" then (with pkgs; [ signal-desktop obsidian zoom-us inkscape ]) else (with pkgs-unstable; [ ])); xdg = { enable = true; configHome = "${hyper.home}.config"; cacheHome = "${hyper.home}.cache"; dataHome = "${hyper.home}.local/share"; stateHome = "${hyper.home}.local/state"; mimeApps = { enable = true; defaultApplications = let browser = "firefox.desktop"; in { "default-web-browser" = [ browser ]; "text/html" = [ browser ]; "text/htm" = [ browser ]; "x-scheme-handler/http" = [ browser ]; "x-scheme-handler/https" = [ browser ]; "x-scheme-handler/about" = [ browser ]; "x-scheme-handler/unknown" = [ browser ]; "x-scheme-handler/mailto" = "thunderbird.desktop"; "image/png" = "imv.desktop"; "image/jpg" = "imv.desktop"; "image/jpeg" = "imv.desktop"; "image/webp" = "imv.desktop"; "image/gif" = "imv.desktop"; "application/pdf" = "zathura.desktop"; "inode/directory" = "thunar.desktop"; }; }; }; # Wayland, X, etc. support for session vars # systemd.user.sessionVariables = home.sessionVariables; # Let Home Manager install and manage itself. programs.home-manager.enable = true; }