2017-09-19 10:34:43 +00:00
|
|
|
with import <stockholm/lib>;
|
|
|
|
{ config, lib, pkgs, ... }:
|
|
|
|
|
|
|
|
{
|
|
|
|
imports = [
|
|
|
|
<stockholm/lass>
|
|
|
|
<stockholm/lass/2configs/baseX.nix>
|
|
|
|
<stockholm/lass/2configs/browsers.nix>
|
|
|
|
<stockholm/lass/2configs/mouse.nix>
|
|
|
|
<stockholm/lass/2configs/pass.nix>
|
|
|
|
<stockholm/lass/2configs/retiolum.nix>
|
|
|
|
<stockholm/lass/2configs/otp-ssh.nix>
|
2017-11-12 12:54:15 +00:00
|
|
|
# TODO fix krebs.git.rules.[definition 2-entry 2].lass not defined
|
|
|
|
#<stockholm/lass/2configs/git.nix>
|
2017-10-05 13:50:45 +00:00
|
|
|
<stockholm/lass/2configs/dcso-vpn.nix>
|
2017-11-28 17:02:18 +00:00
|
|
|
<stockholm/lass/2configs/virtualbox.nix>
|
2017-11-29 15:22:10 +00:00
|
|
|
<stockholm/lass/2configs/dcso-dev.nix>
|
2017-12-03 21:29:40 +00:00
|
|
|
<stockholm/lass/2configs/steam.nix>
|
2018-02-13 16:13:55 +00:00
|
|
|
<stockholm/lass/2configs/rtl-sdr.nix>
|
2017-09-19 10:34:43 +00:00
|
|
|
{ # automatic hardware detection
|
|
|
|
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ];
|
|
|
|
boot.kernelModules = [ "kvm-intel" ];
|
|
|
|
|
2017-12-15 20:31:23 +00:00
|
|
|
fileSystems."/" = {
|
|
|
|
device = "/dev/pool/root";
|
|
|
|
fsType = "btrfs";
|
|
|
|
};
|
2017-09-19 10:34:43 +00:00
|
|
|
|
2017-12-15 20:31:23 +00:00
|
|
|
fileSystems."/boot" = {
|
|
|
|
device = "/dev/disk/by-uuid/1F60-17C6";
|
|
|
|
fsType = "vfat";
|
|
|
|
};
|
2017-09-19 10:34:43 +00:00
|
|
|
|
2017-12-15 20:31:23 +00:00
|
|
|
fileSystems."/home" = {
|
|
|
|
device = "/dev/pool/home";
|
|
|
|
fsType = "btrfs";
|
|
|
|
};
|
|
|
|
|
|
|
|
fileSystems."/tmp" = {
|
|
|
|
device = "tmpfs";
|
|
|
|
fsType = "tmpfs";
|
|
|
|
options = ["nosuid" "nodev" "noatime"];
|
|
|
|
};
|
2017-09-19 10:34:43 +00:00
|
|
|
|
|
|
|
nix.maxJobs = lib.mkDefault 8;
|
|
|
|
}
|
|
|
|
{ # crypto stuff
|
|
|
|
boot.initrd.luks = {
|
|
|
|
cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
|
|
|
|
devices = [{
|
|
|
|
name = "luksroot";
|
|
|
|
device = "/dev/nvme0n1p3";
|
|
|
|
}];
|
|
|
|
};
|
|
|
|
}
|
|
|
|
{
|
|
|
|
services.xserver.dpi = 200;
|
|
|
|
fonts.fontconfig.dpi = 200;
|
2017-10-09 11:02:14 +00:00
|
|
|
lass.fonts.regular = "xft:Hack-Regular:pixelsize=22,xft:Symbola";
|
|
|
|
lass.fonts.bold = "xft:Hack-Bold:pixelsize=22,xft:Symbola";
|
|
|
|
lass.fonts.italic = "xft:Hack-RegularOblique:pixelsize=22,xft:Symbol";
|
2017-09-19 10:34:43 +00:00
|
|
|
}
|
2017-09-30 17:09:46 +00:00
|
|
|
{ #TAPIR, AGATIS, sentral, a3 - foo
|
|
|
|
services.redis.enable = true;
|
|
|
|
}
|
|
|
|
{
|
|
|
|
krebs.fetchWallpaper = {
|
|
|
|
enable = true;
|
|
|
|
url = "http://i.imgur.com/0ktqxSg.png";
|
|
|
|
maxTime = 9001;
|
|
|
|
};
|
|
|
|
}
|
2017-12-03 21:29:40 +00:00
|
|
|
{
|
|
|
|
#urban terror port
|
|
|
|
krebs.iptables.tables.filter.INPUT.rules = [
|
|
|
|
{ predicate = "-p tcp --dport 27960"; target = "ACCEPT"; }
|
|
|
|
{ predicate = "-p udp --dport 27960"; target = "ACCEPT"; }
|
|
|
|
];
|
|
|
|
}
|
2017-09-19 10:34:43 +00:00
|
|
|
];
|
|
|
|
krebs.build.host = config.krebs.hosts.helios;
|
|
|
|
|
|
|
|
krebs.git.rules = [
|
|
|
|
{
|
|
|
|
user = [ config.krebs.users.lass-helios ];
|
|
|
|
repo = [ config.krebs.git.repos.stockholm ];
|
|
|
|
perm = with git; push "refs/heads/*" [ fast-forward non-fast-forward create delete merge ];
|
|
|
|
}
|
2017-11-12 11:59:30 +00:00
|
|
|
{
|
|
|
|
lass.umts = {
|
|
|
|
enable = true;
|
|
|
|
modem = "/dev/serial/by-id/usb-Lenovo_F5521gw_2C7D8D7C35FC7040-if09";
|
|
|
|
initstrings = ''
|
|
|
|
Init1 = AT+CFUN=1
|
|
|
|
Init2 = AT+CGDCONT=1,"IP","pinternet.interkom.de","",0,0
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
}
|
2017-09-19 10:34:43 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
# Use the systemd-boot EFI boot loader.
|
|
|
|
boot.loader.systemd-boot.enable = true;
|
|
|
|
boot.loader.efi.canTouchEfiVariables = true;
|
|
|
|
|
|
|
|
networking.wireless.enable = true;
|
|
|
|
hardware.enableRedistributableFirmware = true;
|
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
2017-09-30 17:10:12 +00:00
|
|
|
ag
|
2017-09-19 10:34:43 +00:00
|
|
|
vim
|
|
|
|
git
|
|
|
|
rsync
|
|
|
|
hashPassword
|
|
|
|
thunderbird
|
|
|
|
dpass
|
|
|
|
];
|
|
|
|
|
|
|
|
users.users = {
|
|
|
|
root.openssh.authorizedKeys.keys = [
|
|
|
|
config.krebs.users.lass-helios.pubkey
|
|
|
|
];
|
|
|
|
};
|
|
|
|
|
2017-09-19 13:17:09 +00:00
|
|
|
services.tlp.enable = true;
|
2017-10-05 03:04:01 +00:00
|
|
|
|
|
|
|
services.xserver.videoDrivers = [ "nvidia" ];
|
2017-10-09 10:03:57 +00:00
|
|
|
services.xserver.xrandrHeads = [
|
|
|
|
{ output = "DP-2"; primary = true; }
|
2017-11-12 11:59:45 +00:00
|
|
|
{ output = "DP-4"; monitorConfig = ''Option "Rotate" "left"''; }
|
|
|
|
{ output = "DP-0"; }
|
2017-10-09 10:03:57 +00:00
|
|
|
];
|
2017-10-05 03:04:31 +00:00
|
|
|
|
2017-11-12 11:59:45 +00:00
|
|
|
services.xserver.displayManager.sessionCommands = ''
|
2018-03-13 20:31:02 +00:00
|
|
|
${pkgs.xorg.xrandr}/bin/xrandr --output DP-6 --off --output DP-5 --off --output DP-4 --mode 2560x1440 --pos 3840x0 --rotate left --output DP-3 --off --output DP-2 --primary --mode 3840x2160 --scale 0.5x0.5 --pos 0x400 --rotate normal --output DP-1 --off --output DP-0 --mode 2560x1440 --pos 5280x1120 --rotate normal
|
2017-11-12 11:59:45 +00:00
|
|
|
'';
|
|
|
|
|
2017-11-02 22:26:19 +00:00
|
|
|
networking.hostName = lib.mkForce "BLN02NB0162";
|
|
|
|
|
2017-10-05 03:04:31 +00:00
|
|
|
security.pki.certificateFiles = [
|
2018-02-18 23:20:23 +00:00
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAROOTC1G1.pem"; sha256 = "14vz9c0fk6li0a26vx0s5ha6y3yivnshx9pjlh9vmnpkbph5a7rh"; })
|
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAROOTC2G1.pem"; sha256 = "0r1dd48a850cv7whk4g2maik550rd0vsrsl73r6x0ivzz7ap1xz5"; })
|
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAROOTC3G1.pem"; sha256 = "0b5cdchdkvllnr0kz35d8jrmrf9cjw0kd98mmvzr0x6nkc8hwpdy"; })
|
|
|
|
|
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCACOMPC2G1.pem"; sha256 = "0rn57zv1ry9vj4p2248mxmafmqqmdhbrfx1plszrxsphshbk2hfz"; })
|
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCACOMPC3G1.pem"; sha256 = "0w88qaqhwxzvdkx40kzj2gka1yi85ipppjdkxah4mscwfhlryrnk"; })
|
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAIDENC2G1.pem"; sha256 = "1z2qkyhgjvri13bvi06ynkb7mjmpcznmc9yw8chx1lnwc3cxa7kf"; })
|
|
|
|
(pkgs.fetchurl { url = "http://pki.dcso.de/ca/PEM/DCSOCAIDENC3G1.pem"; sha256 = "0smdjjvz95n652cb45yhzdb2lr83zg52najgbzf6lm3w71f8mv7f"; })
|
|
|
|
(pkgs.writeText "minio.cert" ''
|
|
|
|
-----BEGIN CERTIFICATE-----
|
|
|
|
MIIDFDCCAfygAwIBAgIQBEKYm9VmbR6T/XNLP2P5kDANBgkqhkiG9w0BAQsFADAS
|
|
|
|
MRAwDgYDVQQKEwdBY21lIENvMB4XDTE4MDIxNDEyNTk1OVoXDTE5MDIxNDEyNTk1
|
|
|
|
OVowEjEQMA4GA1UEChMHQWNtZSBDbzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
|
|
|
AQoCggEBAMmRGUTMDxOaoEZ3osG1ZpGj4enHl6ToWaoCXvRXvI6RB/99QOFlwLdL
|
|
|
|
8lGjIbXyovNkH686pVsfgCTOLRGzftWHmWgfmaSUv0TToBW8F9DN4ww9YgiLZjvV
|
|
|
|
YZunRyp1n0x9OrBXMs7xEBBa4q0AG1IvlRJTrd7CW519FlVq7T95LLB7P6t6K54C
|
|
|
|
ksG4kEzXLRPD/FMdU7LWbhWnQSOxPMCq8erTv3kW3A3Y9hSAKOFQKQHH/3O2HDrM
|
|
|
|
CbK5ldNklswg2rIHxx7kg1fteLD1lVCNPfCMfuwlLUaMeoRZ03HDof8wFlRz3pzw
|
|
|
|
hQRWPvfLfRvFCZ0LFNvfgAqXtmG/ywUCAwEAAaNmMGQwDgYDVR0PAQH/BAQDAgKk
|
|
|
|
MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA8GA1UdEwEB/wQFMAMBAf8wLAYDVR0RBCUw
|
|
|
|
I4IJbG9jYWxob3N0ggZoZWxpb3OCCGhlbGlvcy5yhwR/AAABMA0GCSqGSIb3DQEB
|
|
|
|
CwUAA4IBAQBzrPb3NmAn60awoJG3d4BystaotaFKsO3iAnP4Lfve1bhKRELIjJ30
|
|
|
|
hX/mRYkEVRbfwKRgkkLab4zpJ/abjb3DjFNo8E4QPNeCqS+8xxeBOf7x61Kg/0Ox
|
|
|
|
jRQ95fTATyItiChwNkoxYjVIwosqxBVsbe3KxwhkmKPQ6wH/nvr6URX/IGUz2qWY
|
|
|
|
EqHdjsop83u4Rjn3C0u46U0P+W4U5IFiLfcE3RzFFYh67ko5YEhkyXP+tBNSgrTM
|
|
|
|
zFisVoQZdXpMCWWxBVWulB4FvvTx3jKUPRZVOrfexBfY4TA/PyhXLoz7FeEK9n2a
|
|
|
|
qFkrxy+GrHBXfSRZgCaHQFdKorg2fwwa
|
|
|
|
-----END CERTIFICATE-----
|
|
|
|
'')
|
2017-10-05 03:04:31 +00:00
|
|
|
];
|
2017-10-19 16:42:09 +00:00
|
|
|
|
2017-11-02 22:26:19 +00:00
|
|
|
programs.adb.enable = true;
|
2018-02-12 09:41:19 +00:00
|
|
|
users.users.mainUser.extraGroups = [ "adbusers" "docker" ];
|
2017-11-02 22:26:19 +00:00
|
|
|
|
2017-11-12 12:00:03 +00:00
|
|
|
services.printing.drivers = [ pkgs.postscript-lexmark ];
|
|
|
|
|
2017-12-18 17:52:35 +00:00
|
|
|
services.logind.extraConfig = ''
|
|
|
|
HandleLidSwitch=ignore
|
|
|
|
'';
|
2018-02-12 09:41:19 +00:00
|
|
|
|
|
|
|
virtualisation.docker.enable = true;
|
2017-09-19 10:34:43 +00:00
|
|
|
}
|