{ pkgs, config, ... }: { # Programs that are used in the settings file home.packages = with pkgs; [ bitwarden-cli copier git gnused nix-output-monitor nvd ]; programs.xonsh = { enable = true; sessionVariables = { # This is for pushing builds to my local S3 cache AWS_SHARED_CREDENTIALS_FILE = "/run/agenix/cache-credentials"; CLICOLOR = 1; EDITOR = "nvim"; # vte_new_tab_cwd causes new Terminal tabs to open in the # same CWD as the current tab LESS_TERMCAP_mb = "\\033[01;31m"; # begin blinking LESS_TERMCAP_md = "\\033[01;31m"; # begin bold LESS_TERMCAP_me = "\\033[0m"; # end mode LESS_TERMCAP_so = "\\033[01;44;36m"; # begin standout-mode (bottom of screen) LESS_TERMCAP_se = "\\033[0m"; # end standout-mode LESS_TERMCAP_us = "\\033[00;36m"; # begin underline LESS_TERMCAP_ue = "\\033[0m"; # end underline LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN = "1"; LSCOLORS = "ExGxBxDxCxEgEdxbxgxcxd"; MAVEN_OPTS = " -Dmaven.wagon.http.ssl.insecure=true"; OS_CLOUD = "default"; PROMPT = "{vte_new_tab_cwd}{env_name}{BOLD_GREEN}{user}@{hostname}{BOLD_BLUE} {short_cwd}{branch_color}{curr_branch: {}}{RESET} {BOLD_BLUE}{prompt_end}{RESET} "; SWORD_PATH = "${config.home.homeDirectory}/.sword/"; TIMEFORMAT = "%3Uu %3Ss %3lR %P%%"; # Tells vox where to find virtualenvs VIRTUALENV_HOME = "${config.home.homeDirectory}/venv/"; XONSH_COLOR_STYLE = "default"; GOPATH = "${config.home.homeDirectory}/src/go"; GOBIN = "${config.home.homeDirectory}/src/bin"; }; aliases = { # Python related ones ac = "vox activate"; d = "vox deactivate"; s = "nix run \".#runserver\""; # Nix related ones deploy = "nixos-rebuild switch --use-remote-sudo --use-substitutes --target-host"; gl-nging = "sudo nixos-container run gitlab -- systemctl restart nginx"; nb = "nix build -L"; nixdu = "sudo nix-store --gc --print-roots | egrep -v r\"^(/nix/var|/run/\\w+-system|\\{memory|/proc)\""; nixtest = "nixpkgs-review rev HEAD"; nixup = "nix flake lock --update-input"; nixcopy = "nix copy --to \"s3://binary-cache/?profile=default&endpoint=nas.home%3A9000&scheme=http\""; stable = "nix flake lock --update-input nixstable --update-input hm --update-input nixvimstable"; unstable = "nix flake lock --update-input nixunstable --update-input hmunstable --update-input nixvimunstable --update-input nurpkgs --update-input vsext --update-input wsl"; updateScript = "nix-shell maintainers/scripts/update.nix --argstr package"; # General gh-personal = "$GH_CONFIG_DIR=\"${config.home.homeDirectory}/.config/gh/personal\" gh"; ls = "ls --color"; ll = "ls -l --color"; z = "zeditor ."; # Tailscale related ones tsup = "sudo tailscale up"; tspub = "sudo tailscale up --exit-node=linode"; tshome = "sudo tailscale up --exit-node=2maccabees"; tsclear = "sudo tailscale up --exit-node=''"; # Vagrant related vdown = "vagrant destroy"; vhalt = "vagrant halt"; vos = "vagrant up --provision --provider openstack"; vprov = "vagrant provision"; vup = "vagrant up --provision --provider libvirt"; vssh = "vagrant ssh"; }; configHeader = builtins.readFile ./xonsh_header.xsh; configFooter = (builtins.readFile ./xonsh_footer.xsh) + (builtins.concatStringsSep "\n" [ "with open('${pkgs.stdenv.cc}/nix-support/dynamic-linker', 'r') as fp:" " $NIX_LD = fp.read().strip()" ]); }; }