blob: 9cea847a5137d0378ad8f803829c49ccabca6447 (
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
|
{ pkgs, ... }:
let
busybox_utils = pkgs.stdenv.mkDerivation {
name = "strings";
unpackPhase = "true";
installPhase = ''
mkdir -p $out/bin
cp ${pkgs.busybox}/bin/strings $out/bin/strings
cp ${pkgs.busybox}/bin/telnet $out/bin/telnet
'';
};
in
{
imports = [
../base.nix
../pl.nix
../../modules/larbs.nix
../../modules/internet.nix
../../modules/dockd.nix
../../modules/trackpad.nix
../../modules/agetty.nix
];
boot.plymouth.enable = true;
networking = {
hostName = "x220";
networkmanager = {
enable = true;
wifi.backend = "iwd";
};
};
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
# Basic tools
groff file ssh-ident busybox_utils
# XORG perfs
dunst xclip
xwallpaper xdotool
# UI apps
zathura brave sxiv pulsemixer
lynx lf arandr wpa_supplicant_gui
system-config-printer libreoffice
vscodium abook
# Audio/Video
mpd mpc_cli mpv ffmpeg youtube-dl
# CLIs
lm_sensors
gitAndTools.gh docker-compose xsel
bc libnotify
pamixer maim killall
quickserve ueberzug chafa
# Thinkpad utils
nur.repos.pn.dockd acpi tpacpi-bat
wineStaging
];
fonts.fonts = with pkgs; [
roboto-slab
];
programs.gnupg = {
agent = {
enable = true;
enableSSHSupport = true;
pinentryFlavor = "gnome3";
};
};
programs.browserpass.enable = true;
programs.dockd.enable = true;
virtualisation.docker.enable = true;
systemd.services.docker.enable = false;
services.udev.packages = [ pkgs.libu2f-host ];
services.pcscd.enable = true;
services.agetty = {
defaultUser = "pn";
};
services.printing = {
enable = true;
drivers = [ pkgs.epson_201207w ];
};
hardware.sane.enable = true;
services.cron.enable = true;
# services.fcron.enable = true;
services.acpid.enable = true;
# Battery
services.tlp.enable = true;
services.xserver.wacom = {
enable = true;
};
users.users.pn.extraGroups = [ "docker" "scanner" "lp" ];
security.pam.u2f = {
enable = true;
cue = true;
interactive = true;
#control = "required";
#control = "requisite";
};
}
|