This repository has been archived on 2023-10-08. You can view files and clone it, but cannot push or open issues or pull requests.
nixos-home/home.nix

149 lines
3.2 KiB
Nix
Raw Normal View History

2023-09-24 20:25:02 +00:00
{ pkgs, lib, ... }@args:
2023-09-24 13:50:50 +00:00
let
nurpkgs = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") { inherit pkgs; };
in
2023-09-24 12:57:48 +00:00
{
home = {
username = "pim";
homeDirectory = "/home/pim";
2023-09-24 13:50:50 +00:00
stateVersion = "23.05";
2023-09-24 12:57:48 +00:00
packages = with pkgs; [
keepassxc
nil
moonlight-qt
2023-09-29 20:54:59 +00:00
vlc
2023-09-24 12:57:48 +00:00
];
};
2023-09-24 19:09:47 +00:00
services = {
nextcloud-client = {
enable = true;
startInBackground = true;
};
};
2023-09-24 12:57:48 +00:00
programs = {
home-manager.enable = true;
2023-09-24 14:10:19 +00:00
2023-09-29 20:54:59 +00:00
rofi = {
enable = true;
};
2023-09-24 12:57:48 +00:00
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
2023-09-24 12:57:48 +00:00
];
extraLuaConfig = builtins.readFile ./neovim.lua;
};
2023-09-24 14:10:19 +00:00
2023-09-24 12:57:48 +00:00
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";
2023-09-24 12:57:48 +00:00
};
2023-09-24 13:50:50 +00:00
extensions = import ./firefox-addons (args // {inherit nurpkgs; });
2023-09-24 12:57:48 +00:00
};
};
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";
2023-09-24 13:04:17 +00:00
gs = "git status";
2023-09-24 12:57:48 +00:00
};
};
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;
};
2023-09-24 12:57:48 +00:00
};
2023-09-24 14:10:19 +00:00
fzf = {
enable = true;
enableBashIntegration = true;
};
2023-09-24 20:25:02 +00:00
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";
};
};
};
2023-09-24 12:57:48 +00:00
};
# Let home-manager manage the X session
xsession = {
enable = true;
};
# xdg.configFile."keepassxc/keepassxc.ini".text = pkgs.lib.generators.toINI {} (import ./keepassxc.nix);
}