2023-11-10 10:33:41 +00:00
|
|
|
{ pkgs, lib, config, ... }: {
|
2023-10-08 14:57:57 +00:00
|
|
|
imports = [
|
|
|
|
./bash
|
|
|
|
./neovim
|
2023-10-19 07:34:06 +00:00
|
|
|
./firefox
|
2023-10-08 14:57:57 +00:00
|
|
|
./ssh
|
|
|
|
./syncthing
|
|
|
|
./keepassxc
|
|
|
|
./git
|
|
|
|
./direnv
|
|
|
|
./thunderbird
|
|
|
|
./fzf
|
2023-10-23 17:07:57 +00:00
|
|
|
./bat
|
2023-10-08 14:57:57 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
home = {
|
|
|
|
username = "pim";
|
|
|
|
homeDirectory = "/home/pim";
|
|
|
|
stateVersion = "23.05";
|
|
|
|
|
|
|
|
packages = with pkgs; [
|
2024-05-03 20:14:13 +00:00
|
|
|
unstable.moonlight-qt
|
|
|
|
unstable.vlc
|
|
|
|
unstable.nicotine-plus
|
|
|
|
unstable.logseq
|
|
|
|
unstable.signal-desktop
|
|
|
|
unstable.telegram-desktop
|
|
|
|
unstable.strawberry
|
|
|
|
unstable.gimp
|
|
|
|
unstable.libreoffice
|
2023-11-10 10:33:41 +00:00
|
|
|
(pkgs.nerdfonts.override { fonts = [ "Hack" ]; })
|
2023-10-26 13:46:47 +00:00
|
|
|
virt-manager
|
2023-11-04 17:38:37 +00:00
|
|
|
gnome.gnome-tweaks
|
2024-05-03 20:14:13 +00:00
|
|
|
unstable.impression
|
2023-12-14 20:39:56 +00:00
|
|
|
poppler_utils # For pdfunite
|
|
|
|
silicon
|
2024-05-03 20:14:13 +00:00
|
|
|
unstable.dbeaver
|
|
|
|
unstable.wireshark
|
2024-01-13 13:00:17 +00:00
|
|
|
units
|
2024-01-20 15:51:25 +00:00
|
|
|
btrfs-progs
|
|
|
|
exfat
|
2024-05-03 20:14:13 +00:00
|
|
|
unstable.qFlipper
|
2024-01-20 15:51:25 +00:00
|
|
|
f3
|
2024-05-03 20:14:13 +00:00
|
|
|
unstable.insomnia
|
|
|
|
unstable.vorta
|
2024-02-18 21:05:23 +00:00
|
|
|
jellyfin-media-player
|
2024-04-20 08:57:13 +00:00
|
|
|
jq
|
|
|
|
kubectl
|
|
|
|
file
|
|
|
|
yq
|
|
|
|
age
|
|
|
|
sops
|
|
|
|
nmap
|
2024-04-20 16:48:35 +00:00
|
|
|
unstable.devenv
|
2024-04-29 13:19:17 +00:00
|
|
|
unstable.attic-client
|
2024-05-05 16:07:40 +00:00
|
|
|
unstable.hexchat
|
2024-05-16 16:48:46 +00:00
|
|
|
sbctl
|
2023-10-08 14:57:57 +00:00
|
|
|
];
|
|
|
|
};
|
|
|
|
|
|
|
|
programs = {
|
|
|
|
home-manager.enable = true;
|
|
|
|
chromium.enable = true;
|
2023-11-03 11:15:59 +00:00
|
|
|
|
2023-11-04 16:11:05 +00:00
|
|
|
terminator = {
|
2023-11-03 11:15:59 +00:00
|
|
|
enable = true;
|
2023-11-04 16:11:05 +00:00
|
|
|
config = {
|
2023-11-04 17:42:19 +00:00
|
|
|
profiles.default = {
|
|
|
|
# Gruvbox theme: https://github.com/egel/terminator-gruvbox
|
|
|
|
background_color = "#282828";
|
|
|
|
cursor_color = "#7c6f64";
|
|
|
|
foreground_color = "#ebdbb2";
|
2023-11-10 10:33:41 +00:00
|
|
|
palette =
|
|
|
|
"#181818:#cc241d:#98971a:#d79921:#458588:#b16286:#689d6a:#a89984:#928374:#fb4934:#b8bb26:#fabd2f:#83a598:#d3869b:#8ec07c:#ebdbb2";
|
2023-11-04 17:42:19 +00:00
|
|
|
};
|
|
|
|
|
2023-11-04 16:11:05 +00:00
|
|
|
keybindings = {
|
|
|
|
zoom_in = "<Ctrl>plus";
|
|
|
|
zoom_out = "<Ctrl>minus";
|
|
|
|
new_tab = "<Ctrl><Shift>T";
|
|
|
|
cycle_next = "<Ctrl>Tab";
|
|
|
|
cycle_prev = "<Ctrl><Shift>Tab";
|
2023-11-05 17:14:11 +00:00
|
|
|
split_horiz = "<Alt>C";
|
|
|
|
split_vert = "<Alt>V";
|
2023-11-04 16:11:05 +00:00
|
|
|
|
|
|
|
go_left = "<Alt>H";
|
|
|
|
go_right = "<Alt>L";
|
|
|
|
go_up = "<Alt>K";
|
|
|
|
go_down = "<Alt>J";
|
|
|
|
|
|
|
|
copy = "<Ctrl><Shift>C";
|
|
|
|
paste = "<Ctrl><Shift>V";
|
|
|
|
|
|
|
|
layout_launcher = ""; # Default <Alt>L
|
|
|
|
};
|
|
|
|
};
|
2023-11-03 11:15:59 +00:00
|
|
|
};
|
2024-05-19 11:01:27 +00:00
|
|
|
|
|
|
|
# Currently, it is not possible to have Home Manager manage Liberwolf extensions.
|
|
|
|
# There is a draft PR which addresses this:
|
|
|
|
# https://github.com/nix-community/home-manager/pull/3339
|
|
|
|
# The extensions I currently use are:
|
|
|
|
# - ublock-origin (already installed by librewolf)
|
|
|
|
# - cookie-autodelete
|
|
|
|
# - clearurls
|
|
|
|
# - istilldontcareaboutcookies
|
|
|
|
# - keepassxc-browser
|
|
|
|
# - redirector
|
|
|
|
# - violentmonkey
|
|
|
|
# - boring-rss
|
|
|
|
# - kagi-search
|
|
|
|
# - refined-github
|
|
|
|
librewolf = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
"identity.fxaccounts.enabled" = true;
|
|
|
|
"privacy.clearOnShutdown.history" = false;
|
|
|
|
"privacy.clearOnShutdown.downloads" = false;
|
|
|
|
"browser.translations.automaticallyPopup" = false;
|
|
|
|
"browser.aboutConfig.showWarning" = false;
|
|
|
|
};
|
|
|
|
};
|
2023-10-08 14:57:57 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
# Let home-manager manage the X session
|
2023-11-10 10:33:41 +00:00
|
|
|
xsession = { enable = true; };
|
2023-10-08 14:57:57 +00:00
|
|
|
|
2023-11-25 13:15:07 +00:00
|
|
|
xdg = {
|
|
|
|
userDirs.enable = true;
|
|
|
|
configFile."home/postgresql_server.crt".source = ./postgresql_server.crt;
|
|
|
|
configFile."home/postgresql_client.crt".source = ./postgresql_client.crt;
|
|
|
|
};
|
2023-10-13 14:24:11 +00:00
|
|
|
|
2023-10-16 08:59:27 +00:00
|
|
|
homeage = {
|
2023-11-10 10:33:41 +00:00
|
|
|
identityPaths = [ "/home/pim/.ssh/age_ed25519" ];
|
2023-10-16 08:59:27 +00:00
|
|
|
installationType = "systemd";
|
2023-10-26 13:46:47 +00:00
|
|
|
|
|
|
|
file."common-pg-tfbackend" = {
|
|
|
|
source = ../secrets/common-pg-tfbackend.age;
|
2023-11-10 10:33:41 +00:00
|
|
|
symlinks = [ "${config.xdg.configHome}/home/common.pg.tfbackend" ];
|
2023-10-26 13:46:47 +00:00
|
|
|
};
|
2023-10-26 17:56:23 +00:00
|
|
|
|
|
|
|
file."ansible-vault-secret" = {
|
|
|
|
source = ../secrets/ansible-vault-secret.age;
|
2023-11-10 10:33:41 +00:00
|
|
|
symlinks = [ "${config.xdg.configHome}/home/ansible-vault-secret" ];
|
2023-10-26 17:56:23 +00:00
|
|
|
};
|
2023-10-26 18:11:59 +00:00
|
|
|
|
|
|
|
file."powerdns-api-key" = {
|
|
|
|
source = ../secrets/powerdns-api-key.json.age;
|
2023-11-10 10:33:41 +00:00
|
|
|
symlinks = [ "${config.xdg.configHome}/home/powerdns-api-key.json" ];
|
2023-10-26 18:11:59 +00:00
|
|
|
};
|
2023-11-25 13:15:07 +00:00
|
|
|
|
|
|
|
file."postgresql_client.key" = {
|
|
|
|
source = ../secrets/postgresql_client.key.age;
|
|
|
|
symlinks = [ "${config.xdg.configHome}/home/postgresql_client.key" ];
|
|
|
|
};
|
2023-10-16 08:59:27 +00:00
|
|
|
};
|
2023-10-23 17:44:56 +00:00
|
|
|
|
|
|
|
fonts.fontconfig.enable = true;
|
2023-11-01 15:02:49 +00:00
|
|
|
|
|
|
|
dconf.settings = with lib.hm.gvariant; {
|
|
|
|
"org/gnome/desktop/input-sources" = {
|
2023-11-10 10:33:41 +00:00
|
|
|
sources = [ (mkTuple [ "xkb" "us" ]) ];
|
|
|
|
xkb-options = [ "terminate:ctrl_alt_bksp" "caps:escape" ];
|
2023-11-01 15:02:49 +00:00
|
|
|
};
|
2023-11-04 17:38:37 +00:00
|
|
|
|
|
|
|
"org/gnome/desktop/interface" = {
|
|
|
|
monospace-font-name = "Hack Nerd Font Mono 10";
|
|
|
|
};
|
2023-12-29 10:02:34 +00:00
|
|
|
|
|
|
|
"org/gnome/desktop/sound" = {
|
|
|
|
allow-volume-above-100-percent = true;
|
|
|
|
};
|
2024-05-19 11:01:27 +00:00
|
|
|
|
|
|
|
"org.gnome.desktop.wm.preferences" = {
|
|
|
|
auto-raise = true;
|
|
|
|
};
|
2023-11-01 15:02:49 +00:00
|
|
|
};
|
2023-10-08 14:57:57 +00:00
|
|
|
}
|