1
Files
dotfiles/hosts/default/home/default.nix
2025-10-16 21:20:30 +05:30

100 lines
2.4 KiB
Nix

{
config,
pkgs,
...
}:
{
imports = [
./aws.nix
./benchmarking.nix
./browsers.nix
./gaming.nix
./git.nix
./golang.nix
./graphics.nix
./helix.nix
./nixlang.nix
./notetaking.nix
./python.nix
./rust.nix
./shell.nix
./video-editing.nix
./media-playback.nix
./mpv.nix
];
xdg.enable = true;
home = {
sessionVariables = {
# these mfs pollute my home directory
# some unfixable offenders include .mozilla, .librewolf
# .adb and .ghidra
CUDA_CACHE_PATH = "${config.xdg.cacheHome}/nv";
NH_FLAKE = "${config.xdg.userDirs.publicShare}/dotfiles";
GDBHISTFILE = "${config.xdg.dataHome}/gdb/history";
GNUPGHOME = "${config.xdg.dataHome}/gnupg";
GOPATH = "${config.xdg.userDirs.publicShare}/go";
GOBIN = "${config.home.sessionVariables.GOPATH}/bin";
JUPYTER_PLATFORM_DIRS = "1";
_JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${config.xdg.configHome}/java";
JULIAUP_DEPOT_PATH = "${config.xdg.dataHome}/julia";
CARGO_HOME = "${config.xdg.dataHome}/cargo";
PSQL_HISTORY = "${config.xdg.stateHome}/psql_history";
PYTHON_HISTORY = "${config.xdg.stateHome}/python_history";
SQLITE_HISTORY="${config.xdg.stateHome}/sqlite_history";
};
sessionPath = [
config.home.sessionVariables.GOBIN
"${config.home.homeDirectory}/.cargo/bin"
];
stateVersion = "24.05";
packages = with pkgs; [
tesseract
signal-desktop-bin
rusty-man
(pkgs.writeShellScriptBin "lecture" ''
mpv --speed=1.5 --start=00:00:14 --cache-pause-wait=14 --script-opts='skipsilence-enabled=yes,skipsilence-threshold_db=-18' --vf=sub,lavfi="negate" $(wl-paste)
'')
];
};
programs = {
direnv = {
enable = true;
nix-direnv.enable = true;
};
zoxide = {
enable = true;
enableFishIntegration = true;
};
kitty = {
enable = true;
settings = {
confirm_os_window_close = 0;
enable_audio_bell = false;
window_padding_width = "6 10";
cursor_shape = "block";
cursor_trail = 1;
cursor_trail_decay = "0.1 0.3";
cursor_trail_start_threshold = 0;
shell_integration = "no-cursor";
font_size = 13.0;
tab_bar_margin_height = "8.0 0.0";
tab_bar_style = "powerline";
tab_powerline_style = "slanted";
};
};
};
}