150 lines
3.2 KiB
Nix
150 lines
3.2 KiB
Nix
{ pkgs, lib, ... }@args:
|
|
let
|
|
nurpkgs = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") { inherit pkgs; };
|
|
in
|
|
{
|
|
home = {
|
|
username = "pim";
|
|
homeDirectory = "/home/pim";
|
|
stateVersion = "23.05";
|
|
|
|
packages = with pkgs; [
|
|
keepassxc
|
|
nil
|
|
moonlight-qt
|
|
vlc
|
|
nicotine-plus
|
|
logseq
|
|
];
|
|
};
|
|
|
|
services = {
|
|
nextcloud-client = {
|
|
enable = true;
|
|
startInBackground = true;
|
|
};
|
|
};
|
|
|
|
programs = {
|
|
home-manager.enable = true;
|
|
|
|
rofi = {
|
|
enable = true;
|
|
};
|
|
|
|
neovim = {
|
|
enable = true;
|
|
viAlias = true;
|
|
vimAlias = true;
|
|
vimdiffAlias = true;
|
|
defaultEditor = true;
|
|
plugins = with pkgs.vimPlugins; [
|
|
nvim-lspconfig
|
|
gruvbox-nvim
|
|
leap-nvim
|
|
telescope-nvim
|
|
vim-commentary
|
|
vim-sleuth
|
|
gitsigns-nvim
|
|
];
|
|
extraLuaConfig = builtins.readFile ./neovim.lua;
|
|
};
|
|
|
|
alacritty = {
|
|
enable = true;
|
|
settings = (import ./alacritty.nix);
|
|
};
|
|
|
|
firefox = {
|
|
enable = true;
|
|
profiles.default = {
|
|
id = 0;
|
|
isDefault = true;
|
|
settings = {
|
|
"browser.aboutConfig.showWarning" = false;
|
|
"browser.toolbars.bookmarks.visibility" = "always";
|
|
};
|
|
extensions = import ./firefox-addons (args // {inherit nurpkgs; });
|
|
};
|
|
};
|
|
|
|
bash = {
|
|
enable = true;
|
|
shellAliases = {
|
|
htop = "btop";
|
|
gp = "git push";
|
|
gco = "git checkout";
|
|
gd = "git diff";
|
|
gc = "git commit";
|
|
gpl = "git pull";
|
|
gb = "git branch";
|
|
ga = "git add";
|
|
gl = "git log";
|
|
gs = "git status";
|
|
};
|
|
};
|
|
|
|
direnv = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
|
|
git = {
|
|
enable = true;
|
|
userName = "Pim Kunis";
|
|
userEmail = "pim@kunis.nl";
|
|
extraConfig = {
|
|
core.editor = "nvim";
|
|
push.autoSetupRemote = true;
|
|
};
|
|
};
|
|
|
|
fzf = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
};
|
|
|
|
ssh = {
|
|
enable = true;
|
|
matchBlocks = {
|
|
"github.com" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "github.com";
|
|
user = "pizzapim";
|
|
identitiesOnly = true;
|
|
};
|
|
"lewis" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "lewis.hyp";
|
|
};
|
|
"atlas" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "atlas.hyp";
|
|
};
|
|
"jefke" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "jefke.hyp";
|
|
};
|
|
"hermes" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "hermes.dmz";
|
|
};
|
|
"maestro" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "maestro.dmz";
|
|
};
|
|
"bancomart" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "bancomart.dmz";
|
|
};
|
|
"handjecontantje" = lib.hm.dag.entryBefore [ "*" ] {
|
|
hostname = "handjecontantje.dmz";
|
|
};
|
|
"*" = {
|
|
user = "root";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
# Let home-manager manage the X session
|
|
xsession = {
|
|
enable = true;
|
|
};
|
|
|
|
# xdg.configFile."keepassxc/keepassxc.ini".text = pkgs.lib.generators.toINI {} (import ./keepassxc.nix);
|
|
}
|