user/settings/base.nix (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 | { config
, lib
, pkgs
, ...
}: {
imports = [
./neovim.nix
./shell.nix
];
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
manual = {
html.enable = true;
};
home.preferXdgDirectories = true;
home.sessionVariables =
let
conf = config.xdg.configHome;
data = config.xdg.dataHome;
cache = config.xdg.cacheHome;
state = config.xdg.stateHome;
in
{
EMAIL = "alan@alanpearce.eu";
MANPAGER = "bat -l man -p";
ABDUCO_SOCKET_DIR = "${state}/abduco";
GNUPGHOME = "${data}/gnupg";
SOLARGRAPH_CACHE = "${cache}/solargraph";
ASPELL_CONF = "per-conf ${conf}/aspell/aspell.conf; personal ${conf}/aspell/en.pws; repl ${conf}/aspell/en.prepl; dict-dir ${config.home.profileDirectory}/lib/aspell";
ELECTRUMDIR = "${data}/electrum";
DOCKER_CONFIG = "${conf}/docker";
npm_config_userconfig = "${conf}/npm/config";
PASSWORD_STORE_HOME = "${data}/password-store";
WGETRC = pkgs.writeText "wgetrc" ''
hsts-file = ${cache}/wget-hsts
'';
SQLITE_HISTORY = "${data}/sqlite_history";
};
xdg = {
enable = true;
cacheHome =
if pkgs.stdenv.isDarwin
then "${config.home.homeDirectory}/Library/Caches/XDG"
else "${config.home.homeDirectory}/.cache";
configHome = "${config.home.homeDirectory}/.config";
dataHome = "${config.home.homeDirectory}/.local/share";
stateHome =
if pkgs.stdenv.isDarwin
then "${config.home.homeDirectory}/Library/Caches/TemporaryItems/State"
else "${config.home.homeDirectory}/.local/state";
};
home.shellAliases = {
make = "remake";
};
programs.htop = {
enable = true;
settings = {
header_margin = 0;
tree_view = 1;
hide_kernel_threads = 1;
hide_userland_threads = 1;
};
};
programs.bat = {
enable = true;
extraPackages = with pkgs.bat-extras; [
batdiff
batman
batgrep
batpipe
];
config = {
theme = "ansi";
style = "header-filename,header-filesize,grid,rule";
};
};
programs.nix-index-database.comma.enable = true;
programs.ripgrep = {
enable = true;
package = pkgs.ripgrep.override { withPCRE2 = true; };
arguments = [
"--smart-case"
];
};
home.packages = with pkgs;
[
pv
fd
bfs
sd
knot-dns
dateutils
moreutils
mtr
gping
tree
remake
abduco
dvtm
walk
(aspellWithDicts (d: [ d.en d.en-computers d.en-science d.de ]))
]
++ (
if !stdenv.isDarwin
then [
file
lsof
unar
zip
]
else [
]
);
}
|