{ inputs, lib, config, pkgs, system, ... }: { imports = [ ./email ./emacs ./git.nix ./gui.nix ./latex.nix ./ssh ./shell.nix ]; config = { home.packages = with pkgs; [ fd fx jq sd ugrep unzip gpclient openconnect fd ripgrep yazi tree gnumake texinfo ] ++ (lib.attrValues config.custom.shell.packages); services = { gpg-agent = { enable = true; # enableSshSupport = true; }; }; fonts.fontconfig.enable = true; programs = { home-manager.enable = true; neovim.enable = true; bash = { enable = true; enableVteIntegration = true; }; gpg = { enable = true; }; bat = { enable = true; extraPackages = [ (pkgs.symlinkJoin { name = "batman"; paths = [ pkgs.bat-extras.batman ]; postBuild = '' mkdir -p $out/share/bash-completion/completions echo 'complete -F _comp_cmd_man batman' > $out/share/bash-completion/completions/batman mkdir -p $out/share/fish/vendor_completions.d echo 'complete batman --wraps man' > $out/share/fish/vendor_completions.d/batman.fish mkdir -p $out/share/zsh/site-functions cat << EOF > $out/share/zsh/site-functions/_batman #compdef batman _man "$@" EOF ''; meta.mainProgram = "batman"; }) ]; }; fzf = { enable = true; enableBashIntegration = config.programs.bash.enable; enableFishIntegration = config.programs.fish.enable; }; }; # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion home.stateVersion = "25.05"; }; }