{ pkgs, ... }: { environment = { shells = [ "${pkgs.fish}/bin/fish" "${pkgs.bash}/bin/bash" ]; systemPackages = with pkgs; [ fishPlugins.hydro ]; }; users.extraUsers.payas = { shell = "${pkgs.fish}/bin/fish"; }; programs.fish = { enable = true; vendor = { completions.enable = true; config.enable = true; }; interactiveShellInit = '' set -U fish_greeting function ndiff -d "NixOS diff" command nix store diff-closures /nix/var/nix/profiles/system-$argv[1]-link /nix/var/nix/profiles/system-$argv[2]-link end # Add doom-emacs to path set -gx PATH ~/.config/emacs/bin/ $PATH # Enable Atuin integration atuin init --disable-up-arrow fish | source ''; shellAbbrs = { "mkbook" = "wget --recursive --level=5 --convert-links --page-requisites --wait=1 --random-wait --timestamping --no-parent"; "cdnix" = "cd /etc/nixos/"; "nfu" = "nix flake update"; "snfu" = "sudo nix flake update"; "nrb" = "sudo nixos-rebuild boot -v"; "nrs" = "sudo nixos-rebuild switch -v"; "nrso" = "sudo nixos-rebuild switch -v --offline"; "nes" = "sudo nix-env --profile /nix/var/nix/profiles/system"; "nesl" = "sudo nix-env --profile /nix/var/nix/profiles/system --list-generations"; "nesd" = "sudo nix-env --profile /nix/var/nix/profiles/system --delete-generations"; "ness" = "sudo nix-env --profile /nix/var/nix/profiles/system --switch-generation"; "nesr" = "sudo nix-env --profile /nix/var/nix/profiles/system --rollback"; "ngc" = "sudo rm /nix/var/nix/gcroots/auto/*"; "ngl" = "nix registry list"; "ngpn" = "nix registry pin nixpkgs"; "ngrn" = "nix registry remove nixpkgs"; "nsr" = "nix-store --query --referrers"; "nsra" = "nix-store --query --referrers-closure"; "nss" = "ls -la /nix/store/ | rg"; "rmlock" = "rm /home/payas/.git/index.lock"; "ht" = "htop"; "gcl" = "git cl"; "gd" = "git diff"; "gl" = "git last"; "gpr" = "git pull --rebase origin master"; "gst" = "git status"; "gsh" = "git stash"; "gco" = "git checkout"; "l" = "ls -alh"; "ll" = "ls -l"; "ls" = "ls --color=tty"; "spc" = "df -t ext4 -t fuseblk -t ntfs -t vfat -t fat32 -t fat -h"; "rgi" = "rg -i"; "rgn" = "rg --no-ignore"; "rgni" = "rg --no-ignore -i"; "fdn" = "fd --no-ignore"; "ipa" = "ip -br -c a"; "soulseek" = "/run/current-system/sw/bin/SoulseekQt"; "dup" = "doom upgrade"; "dsy" = "doom sync"; "bebop" = "ssh payas@bebop"; "titan" = "ssh payas@titan"; "lapetus" = "ssh payas@lapetus"; "rhea" = "ssh payas@rhea"; "bbrb" = "sudo nixos-rebuild boot --flake .#bebop -v --target-host root@bebop"; "bbrs" = "sudo nixos-rebuild switch --flake .#bebop -v --target-host root@bebop"; "bkp" = "emacs --script ~/org/elisp-fu/bkp.el"; "mid" = "mu index"; }; }; }