blob: f06878467cde51045f1200b22fce9dd8c9ce57e9 (
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
|
{ config, pkgs, ... }: {
boot = {
initrd.kernelModules = [ "zfs" ];
kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
loader.grub.device = "/dev/sda";
supportedFilesystems = [ "zfs" ];
zfs.devNodes = "/dev/disk/by-label";
};
documentation.dev.enable = true;
documentation.man.enable = true;
environment.systemPackages = with pkgs; [
acl
ansible
autoconf
automake
bash
bc
bind
binutils
bpftools
bzip2
cmake
colordiff
conntrack-tools
coreutils
cpio
curl
diffutils
dig
dmenu
enscript
ethtool
evince
expect
feh
file
findutils
fio
fortune
fping
gcc
gcr
geeqie
ghostscript
#gimp-with-plugins
gimp
git
gnugrep
gnupatch
gnused
gnutar
google-chrome
gv
gzip
helm
i3
i3status
imagemagick
inkscape
inxi
iotop
ipcalc
iperf
iproute2
iputils
jq
less
libreoffice
lshw
lsof
lvm2
mariadb
mutt
nano
netcat-openbsd
nettools
nix-index
nmap
oath-toolkit
openldap
openssl
openstackclient
patchelf
(pass.withExtensions (ext: with ext; [pass-otp]))
pass
pavucontrol
pciutils
perl
pkg-config
polkit_gnome
poppler_utils
procps
psmisc
pv
pwgen
python3
qpwgraph
qrencode
recode
rsync
sqlite
st
stoken
strace
sysstat
tcpdump
traceroute
tree
unixtools.xxd
unrar
unzip
util-linux
vim
virtualenv
wdiff
weechat
wget
wireshark
whois
xclip
xdotool
xorg.xdpyinfo
xsnow
xz
zip
zstd
];
imports = [
./hardware-configuration.nix
../common/core
../common/optional/pipewire.nix
../common/optional/services/openssh.nix
../common/optional/services/xorg.nix
../common/optional/zfs.nix
../common/users/nipsy
../common/users/root
];
networking = {
hostId = "2d990f74";
hostName = "richese";
nftables.enable = true;
};
programs.atop.enable = true;
programs.firefox.enable = true;
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
programs.iftop.enable = true;
programs.mtr.enable = true;
programs.tmux.enable = true;
programs.zsh.enable = true;
security.polkit = {
enable = true;
extraConfig = ''
polkit.addRule(function(action, subject) {
if (
subject.isInGroup("users")
&& (
action.id == "org.freedesktop.login1.reboot" ||
action.id == "org.freedesktop.login1.reboot-multiple-sessions" ||
action.id == "org.freedesktop.login1.power-off" ||
action.id == "org.freedesktop.login1.power-off-multiple-sessions"
)
)
{
return polkit.Result.YES;
}
})
'';
};
systemd = {
user.services.polkit-gnome-authentication-agent-1 = {
description = "polkit-gnome-authentication-agent-1";
wantedBy = [ "graphical-session.target" ];
wants = [ "graphical-session.target" ];
after = [ "graphical-session.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
Restart = "on-failure";
RestartSec = 1;
TimeoutStopSec = 10;
};
};
};
system.stateVersion = "23.11";
virtualisation.virtualbox.guest.enable = true;
# no longer in unstable apparently
#virtualisation.virtualbox.guest.x11 = true;
}
|