blob: a068b9167bcfc6f0927eaffa99f4ae83eb1ff4a6 (
plain) (
blame)
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
|
# Default configuration settings for physical machines that I use.
{ lib, pkgs, depot, ... }:
let
pass-otp = pkgs.pass.withExtensions (e: [ e.pass-otp ]);
in
{
# Install all the default software.
environment.systemPackages =
# programs from the depot
(with depot; [
users.tazjin.screenLock
users.tazjin.emacs
third_party.agenix.cli
third_party.josh
]) ++
# programs from nixpkgs
(with pkgs; [
amber
bat
curl
ddcutil
direnv
dnsutils
electrum
emacsUnstable # emacsclient
exa
fd
file
gdb
gh
git
gnupg
gtk3 # for gtk-launch
htop
hyperfine
iftop
imagemagick
jq
lieer
man-pages
moreutils
mosh
msmtp
mullvad-vpn
networkmanagerapplet
nix-prefetch-github
nmap
notmuch
openssh
openssl
pass-otp
pavucontrol
pinentry
pinentry-emacs
pulseaudio # for pactl
pwgen
quasselClient
rink
ripgrep
rust-analyzer
rustup
screen
scrot
thunderbird
tig
tokei
tree
unzip
vlc
volumeicon
whois
xclip
xsecurelock
zoxide
]);
# Run services & configure programs for all machines.
services = {
mullvad-vpn.enable = true;
fwupd.enable = true;
};
# Disable the broken NetworkManager-wait-online.service
systemd.services.NetworkManager-wait-online.enable = lib.mkForce false;
programs = {
fish.enable = true;
mosh.enable = true;
ssh.startAgent = true;
};
}
|