blob: 5c5d6012298aa3370f851b960f2bab1e992f1b5e (
plain)
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
|
args@{ config
, lib
, pkgs
, ...
}: {
imports = [
./neovim.nix
./shell.nix
(import <nix-index-database/home-manager-module.nix>
(args // { databases = import <nix-index-database/packages.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";
ABDUCO_SOCKET_DIR = "${state}/abduco";
SOLARGRAPH_CACHE = "${cache}/solargraph";
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; [
batman
];
config = {
theme = "ansi";
style = "header-filename,header-filesize,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
nuspell
] ++ (with pkgs.hunspellDicts; [
en-gb-large
de-de
]) ++ (
if !stdenv.isDarwin
then [
file
lsof
unar
zip
]
else [
]
);
}
|