{ config, pkgs, ... }: let p = import ./parameters.nix; in { home = { username = p.personal.username; homeDirectory = "/home/${p.personal.username}"; shell.enableShellIntegration = true; packages = with pkgs; [ agenix-cli devenv # Fast, Declarative, Reproducible, and Composable Developer Environments dive # Docker image explorer just # Command runner (modern make alternative) nerd-fonts.fira-code nerd-fonts.overpass nodejs repgrep # Interactive ripgrep # # You can also create simple shell scripts directly inside your # # configuration. For example, this adds a command 'my-hello' to your # # environment: # (writeShellScriptBin "my-hello" '' # echo "Hello, ${config.home.username}!" # '') ]; shellAliases = { hm = "home-manager"; hms = "home-manager switch"; hmb = "home-manager build"; g = "git"; ".." = "cd ../"; "..." = "cd ../.."; ls = "eza"; j = "just"; }; }; programs = { direnv.enable = true; fzf.enable = true; home-manager.enable = true; htop.enable = true; lazygit.enable = true; zellij.enable = true; zoxide.enable = true; bash = { enable = true; shellOptions = [ "histappend" "extglob" "globstar" "checkjobs" ]; }; delta = { enable = true; enableGitIntegration = true; }; eza = { enable = true; colors = "auto"; extraOptions = [ "--group-directories-first" "--header" ]; git = true; icons = "auto"; }; git = { enable = true; settings = { init.defaultBranch = "master"; user = with p.personal; { name = commonName; email = email; }; fetch.pruneTags = true; pull.rebase = false; }; signing = { format = "ssh"; key = "~/.ssh/id_ed25519.pub"; signByDefault = true; }; }; starship = { enable = true; settings = { add_newline = true; nix_shell.disabled = false; container.disabled = true; }; }; uv = { enable = true; settings = { python-downloads = "never"; python-preference = "only-system"; }; }; ssh = { enable = true; enableDefaultConfig = false; matchBlocks = { "colmena.home" = { hostname = "colmena.home.pasetto.me"; }; "colmena-ts" = { hostname = "192.168.1.22"; }; "*" = { user = "pazpi"; identityFile = "~/.ssh/id_ed25519"; }; }; }; }; }