{ pkgs, ... }: let username = "rachel"; homeDir = "/home/${username}"; SAX2 = pkgs.fetchurl { name = "SAX2"; url = "https://abrudz.github.io/SAX2/SAX2.ttf"; sha256 = "sha256-DgvDWXO2fnKZNu9EvQOq8GNMTU3PUdp85+/0ZHdRXZc="; recursiveHash = true; downloadToTemp = true; postFetch = '' mkdir -p "$out/share/fonts/truetype" mv "$downloadedFile" "$out/share/fonts/truetype/SAX2.ttf" ''; }; in { home = { username = username; homeDirectory = homeDir; packages = with pkgs; [ neofetch pfetch unzip zip xz gzip bzip2 p7zip usbutils pciutils nettools nmap arp-scan acpi julia python3 ghc firefox sxiv zathura gnupg agda rofi discord dig xxd mpv zoom-us slack imagemagick ffmpeg sl cowsay lolcat fortune banner yt-dlp libreoffice protonmail-bridge pass protonvpn-cli protonvpn-gui thunderbird tidal-hifi signal-desktop transmission-gtk xclip clinfo glxinfo vulkan-tools obs-studio file gimp SAX2 twemoji-color-font bat steam steam-run ]; stateVersion = "23.05"; }; xdg.userDirs = { enable = true; createDirectories = true; desktop = "${homeDir}"; documents = "${homeDir}/doc"; download = "${homeDir}/dwn"; music = "${homeDir}/music"; pictures = "${homeDir}/img"; publicShare = "${homeDir}/srv"; templates = "${homeDir}/doc/templates"; videos = "${homeDir}/vid"; }; programs = { bash = { enable = true; enableCompletion = true; historyFile = "/dev/null"; sessionVariables = { PS1 ="\\033[1m\\u\\033[0m@\\033[1m\\h\\033[0m: \\w\nλ "; BROWSER = "firefox"; XINITRC = "${homeDir}/bin/xinitrc"; XAUTHORITY = "${homeDir}/.local/share/Xauthority"; PASH_KEYID = "3E4A909C8FEF6E3783699C79DFC26EF8EDAD6D71"; QT_AUTO_SCREEN_FACTOR = 1; EDITOR = "emacsclient"; PATH = "${homeDir}/bin:$PATH"; NIX_SHELL_PRESERVE_PROMPT=1; }; shellAliases = { x = "startx"; rm = "rm -i"; cal = "cal -m"; }; initExtra = '' source ~/.profile set -o vi [ "$IN_NIX_SHELL" ] && export PS1="''${PS1%λ }❄ " ''; }; emacs = { enable = true; package = pkgs.emacs-gtk; extraPackages = epkgs: with epkgs; with melpaStablePackages; [ magit nix-mode julia-repl julia-mode lean-mode proof-general pdf-tools dune tuareg idris-mode haskell-emacs-base multi-vterm dmenu markdown-preview-mode markdown-mode exwm org-superstar org-fragtog visual-fill writeroom-mode haskell-emacs treemacs-evil treemacs solarized-theme doom-modeline all-the-icons-dired page-break-lines all-the-icons dashboard org-evil zotero vterm undo-fu latex-math-preview haskell-mode evil-surround undo-tree evil-org evil evil-commentary evil-leader meow purescript-mode ]; }; git = { enable = true; userName = "Rachel Lambda Samuelsson"; userEmail = "depsterr@protonmail.com"; extraConfig = { init.defaultBranch = "master"; }; }; }; }