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, ... }:
let
depot = import ../../../../.. { };
in
with lib;
{
boot = {
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;
tmp.cleanOnBoot = true;
};
networking.useDHCP = false;
networking.networkmanager.enable = true;
systemd.services.NetworkManager-wait-online.enable = lib.mkForce false;
systemd.services.systemd-networkd-wait-online.enable = lib.mkForce false;
i18n = {
defaultLocale = "en_US.UTF-8";
};
time.timeZone = lib.mkDefault "America/New_York";
environment.systemPackages = with pkgs; [
wget
vim
zsh
git
w3m
libnotify
file
lm_sensors
dnsutils
htop
man-pages
man-pages-posix
];
documentation.dev.enable = true;
documentation.man.generateCaches = true;
services.openssh = {
enable = true;
settings = { X11Forwarding = true; };
};
users.users.grfn.openssh.authorizedKeys.keys =
[ depot.users.aspen.keys.main ];
programs.ssh.startAgent = true;
networking.firewall.enable = mkDefault false;
users.mutableUsers = true;
programs.zsh.enable = true;
environment.pathsToLink = [ "/share/zsh" ];
users.users.grfn = {
isNormalUser = true;
initialPassword = "password";
extraGroups = [
"wheel"
"networkmanager"
"audio"
];
shell = pkgs.zsh;
};
nix = {
settings.trusted-users = [ "grfn" ];
distributedBuilds = true;
gc = {
automatic = true;
dates = mkDefault "weekly";
options = "--delete-older-than 30d";
};
};
services.udev.packages = with pkgs; [
yubikey-personalization
];
services.pcscd.enable = true;
services.udev.extraRules = ''
# UDEV rules for Teensy USB devices
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", MODE:="0666"
'';
}
|