{ config, pkgs, ... }: { imports = [ ]; home-manager.users.sijmen = { nixpkgs.config.allowUnfree = true; home = { stateVersion = config.system.stateVersion; packages = with pkgs; [ aerc bacon discord fd gimp inkscape mpv pika-backup python3 silver-searcher spotify sublime-merge tdesktop tig transmission-gtk unzip virt-manager vscode-fhs w3m wget wl-clipboard gnome.gnome-tweaks gnomeExtensions.openweather ]; sessionVariables = { MOZ_ENABLE_WAYLAND = 1; NIXOS_OZONE_WL = 1; QT_QPA_PLATFORM = "wayland"; SDL_VIDEODRIVER = "wayland"; EDITOR = "nvim"; }; shellAliases = { ".." = "cd .."; "..." = "cd ../.."; config = "vim /etc/nixos/configuration.nix"; hmconf = "vim /etc/nixos/home-manager.nix"; switch = "sudo nixos-rebuild switch"; nr = "nix run --impure"; }; }; programs.git = { enable = true; lfs.enable = true; userName = "Sijmen"; userEmail = "me@sijman.nl"; extraConfig = { fetch.prune = true; init.defaultBranch = "main"; push.autoSetupRemote = true; safe.directory = [ "/etc/nixos" ]; }; }; programs.firefox = { enable = true; package = pkgs.wrapFirefox pkgs.firefox-unwrapped { forceWayland = true; }; }; programs.neovim = { enable = true; vimAlias = true; extraConfig = '' luafile /etc/nixos/common/nvim.lua ''; extraPackages = with pkgs; [ gcc rnix-lsp nodePackages.pyright ]; plugins = with pkgs.vimPlugins; [ bufferline-nvim galaxyline-nvim indentLine neorg nvim-colorizer-lua nvim-compe nvim-lspconfig nvim-tree-lua nvim-treesitter nvim-web-devicons pears-nvim plenary-nvim rust-tools-nvim Spacegray-vim vim-closetag vim-nix ]; }; programs.alot.enable = true; programs.gpg.enable = true; programs.home-manager.enable = true; programs.mbsync.enable = true; programs.password-store.enable = true; programs.bash = { enable = true; initExtra = '' source ${pkgs.fetchurl { url = "https://raw.githubusercontent.com/rupa/z/v1.11/z.sh"; sha256 = "f24e0791ba10f6a8301461da3fc50333eee2e009a19e5d0e9f3661f0d0446767"; }} ''; }; programs.notmuch = { enable = true; hooks = { preNew = "mbsync --all"; }; }; services.keybase.enable = true; accounts.email.accounts.Personal = { primary = true; address = "me@sijmenschoon.nl"; aliases = [ "me@sijman.nl" "me@vijf.life" "info@sijmenschoon.nl" ]; realName = "Sijmen Schoon"; userName = "me@sijmenschoon.nl"; passwordCommand = "pass show email/personal"; imap.host = "imap.soverin.net"; smtp.host = "smtp.soverin.net"; folders.inbox = "INBOX"; mbsync = { enable = true; create = "maildir"; }; notmuch.enable = true; }; imports = [ ./dconf.nix ]; }; }