{ pkgs, inputs, ... }: { imports = [ inputs.nixvim.homeManagerModules.nixvim ]; # Home Manager needs a bit of information about you and the # paths it should manage. home = { username = "martin"; homeDirectory = "/home/martin"; # You can update Home Manager without changing this value. See # the Home Manager release notes for a list of state version # changes in each release. stateVersion = "24.11"; }; programs = { git = { enable = true; userName = "Martin Berg Alstad"; userEmail = "git@martials.no"; }; # Let Home Manager install and manage itself. home-manager.enable = true; kitty.enable = true; nixvim = { enable = true; clipboard.providers.wl-copy.enable = true; colorschemes.catppuccin = { enable = true; settings.flavour = "mocha"; }; opts = { number = true; # Show line numbers relativenumber = true; # Show relative line numbers shiftwidth = 2; # Tab width should be 2 }; plugins = { bufferline.enable = true; conform-nvim = { enable = true; # TODO use nix fmt on save settings = {}; }; lsp = { enable = true; servers = { nixd.enable = true; }; }; lualine.enable = true; luasnip.enable = true; cmp = { enable = true; autoEnableSources = true; settings = { sources = [ { name = "nvim-lsp"; } { name = "path"; } { name = "buffer"; } ]; }; }; treesitter.enable = true; web-devicons.enable = true; }; }; }; services = { gpg-agent = { enable = true; pinentryPackage = pkgs.pinentry-curses; }; }; }