nix/home-manager.nix

146 lines
2.9 KiB
Nix

{ config, pkgs, ... }:
{
home-manager.users.sijmen = {
nixpkgs.config.allowUnfree = true;
home = {
stateVersion = config.system.stateVersion;
packages = with pkgs; [
aerc
discord
mpv
pika-backup
python3
spotify
sublime-merge
tdesktop
transmission-gtk
unzip
vscode-fhs
w3m
wget
wl-clipboard
tig
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/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
Spacegray-vim
vim-closetag
vim-nix
];
};
programs.home-manager.enable = true;
programs.bash.enable = true;
programs.password-store.enable = true;
programs.mbsync.enable = true;
programs.alot.enable = true;
programs.notmuch = {
enable = true;
hooks = {
preNew = "mbsync --all";
};
};
programs.gpg.enable = true;
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 ];
};
}