blob: 49e376c1ca9b3f8fb94a0f5032f1fc6b5a26005c (
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
|
{ config, lib, pkgs, ... }:
{
programs.zsh.enable = true;
programs.tmux.enable = true;
nixpkgs.config.packageOverrides = pkgs: {
libsignal-protocol-c = pkgs.callPackage ../pkgs/libsignal-c/default.nix { };
keycloak = pkgs.callPackage ../pkgs/keycloak/default.nix { };
};
# TODO: replace with programs.neovim.enable
nixpkgs.overlays = [
(final: prev: {
neovim = prev.neovim.override {
viAlias = true;
vimAlias = true;
};
})
];
environment.variables.EDITOR = "${pkgs.neovim}/bin/nvim";
environment.systemPackages = with pkgs; [
bat
bwm_ng
clang
coreutils
direnv
dnsutils
emacs
exa
fd
fzf
git
gitFull
gnupg
haskellPackages.hledger
hledger
htop
iotop
ledger
moreutils
mosh
most
neovim
nix-index
p7zip
pass
ripgrep
rustup
silver-searcher
sqlite
stow
unrar
unzip
whois
zoxide
(rWrapper.override {
packages = with rPackages; [
data_table
ggplot2
hms
viridis
lubridate
];
})
];
time.timeZone = "America/New_York";
services = {
postgresql = {
dataDir = "/var/db/postgresql";
package = pkgs.postgresql95;
};
openssh.passwordAuthentication = false;
};
nix = rec {
useSandbox = lib.mkDefault true;
maxJobs = lib.mkOverride 110 16;
buildCores = lib.mkDefault 0; # auto configure
gc.automatic = lib.mkDefault true;
trustedBinaryCaches = [
"https://cache.nixos.org"
];
binaryCaches = trustedBinaryCaches;
daemonNiceLevel = 10;
daemonIONiceLevel = 10;
package = pkgs.nixFlakes;
extraOptions = ''
experimental-features = nix-command flakes
'';
};
boot.cleanTmpDir = true;
nixpkgs.config.allowUnfree = true;
}
|