{ pkgs, ... }: { fonts.fonts = [ pkgs.emacs-all-the-icons-fonts ]; users.users.tristand = { isNormalUser = true; description = "Tristan Druyen"; extraGroups = ["networkmanager" "wheel" "libvirtd"]; shell = pkgs.fish; home = "/home/tristand"; }; home-manager.users.tristand = {pkgs, ...}: { nix = { settings.experimental-features = ["nix-command" "flakes"]; }; dconf.settings = { "org/virt-manager/virt-manager/connections" = { autoconnect = ["qemu:///system"]; uris = ["qemu:///system"]; }; }; programs.alacritty = { enable = true; settings = { window.opacity = 0.88; window.dimensions = { lines = 40; columns = 150; }; }; }; services.emacs = { enable = true; defaultEditor = true; package = pkgs.emacs-unstable-pgtk; }; programs.fish.enable = true; programs.git = { enable = true; userName = "Tristan Druyen"; userEmail = "tristan@vault81.de"; aliases = { ci = "commit"; co = "checkout"; s = "status"; }; }; home.packages = with pkgs; [ alejandra atool alacritty aspell aspellDicts.en aspellDicts.en-computers aspellDicts.en-science aspellDicts.de bitwarden binutils brave btop direnv emacs-unstable-pgtk firefox jellyfin-media-player neofetch nodejs_20 kate rcm rustup rust-motd (ripgrep.override {withPCRE2 = true;}) gnutls fd imagemagick pinentry_emacs python311Full zstd rnix-lsp texlive.combined.scheme-medium signal-desktop statix tailscale tokei thunderbird zellij ]; home.sessionVariables = { BROWSER = "firefox"; TERMINAL = "alacritty"; }; home.stateVersion = "23.05"; }; }