2015-07-16 15:52:17 +02:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
|
2016-10-20 20:54:38 +02:00
|
|
|
with import <stockholm/lib>;
|
2015-07-16 15:52:17 +02:00
|
|
|
{
|
|
|
|
imports = [
|
2016-02-15 16:27:11 +01:00
|
|
|
../.
|
2016-08-24 00:03:38 +02:00
|
|
|
../2configs/retiolum.nix
|
2016-06-25 18:38:30 +02:00
|
|
|
../2configs/hw/tp-x220.nix
|
2015-10-19 13:57:42 +02:00
|
|
|
../2configs/baseX.nix
|
2016-04-12 15:17:42 +02:00
|
|
|
../2configs/exim-retiolum.nix
|
2015-07-28 22:20:59 +02:00
|
|
|
../2configs/programs.nix
|
|
|
|
../2configs/bitcoin.nix
|
|
|
|
../2configs/browsers.nix
|
|
|
|
../2configs/games.nix
|
|
|
|
../2configs/pass.nix
|
|
|
|
../2configs/elster.nix
|
|
|
|
../2configs/steam.nix
|
|
|
|
../2configs/wine.nix
|
2015-10-04 14:20:12 +02:00
|
|
|
../2configs/git.nix
|
2015-10-08 12:05:32 +02:00
|
|
|
../2configs/skype.nix
|
2015-12-12 18:22:09 +01:00
|
|
|
../2configs/libvirt.nix
|
|
|
|
../2configs/fetchWallpaper.nix
|
2016-10-12 12:15:57 +02:00
|
|
|
#../2configs/c-base.nix
|
2016-04-19 13:23:49 +02:00
|
|
|
../2configs/mail.nix
|
2016-04-20 16:45:15 +02:00
|
|
|
../2configs/krebs-pass.nix
|
2016-06-26 17:55:21 +02:00
|
|
|
../2configs/repo-sync.nix
|
2016-12-12 21:42:43 +01:00
|
|
|
../2configs/ircd.nix
|
2015-11-13 01:12:07 +01:00
|
|
|
{
|
|
|
|
#risk of rain port
|
|
|
|
krebs.iptables.tables.filter.INPUT.rules = [
|
|
|
|
{ predicate = "-p tcp --dport 11100"; target = "ACCEPT"; }
|
|
|
|
];
|
|
|
|
}
|
2016-04-13 16:29:13 +02:00
|
|
|
#{
|
|
|
|
# services.mysql = {
|
|
|
|
# enable = true;
|
|
|
|
# package = pkgs.mariadb;
|
|
|
|
# rootPassword = "<secrets>/mysql_rootPassword";
|
|
|
|
# };
|
|
|
|
#}
|
|
|
|
#{
|
|
|
|
# services.elasticsearch = {
|
|
|
|
# enable = true;
|
|
|
|
# plugins = [
|
|
|
|
# # pkgs.elasticsearchPlugins.elasticsearch_kopf
|
|
|
|
# ];
|
|
|
|
# };
|
|
|
|
#}
|
2016-07-08 13:43:56 +02:00
|
|
|
{
|
|
|
|
#zalando project
|
|
|
|
services.postgresql = {
|
|
|
|
enable = true;
|
|
|
|
package = pkgs.postgresql;
|
|
|
|
};
|
2016-10-27 14:50:12 +02:00
|
|
|
virtualisation.docker.enable = true;
|
2016-10-11 17:40:14 +02:00
|
|
|
#users.users.mainUser.extraGroups = [ "docker" ];
|
2016-07-08 13:43:56 +02:00
|
|
|
}
|
2016-07-05 09:18:16 +02:00
|
|
|
{
|
|
|
|
lass.umts = {
|
|
|
|
enable = true;
|
|
|
|
modem = "/dev/serial/by-id/usb-Lenovo_F5521gw_38214921FBBBC7B0-if09";
|
|
|
|
initstrings = ''
|
|
|
|
Init1 = AT+CFUN=1
|
|
|
|
Init2 = AT+CGDCONT=1,"IP","pinternet.interkom.de","",0,0
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
}
|
2016-08-29 10:58:46 +02:00
|
|
|
{
|
|
|
|
krebs.nginx = {
|
|
|
|
enable = true;
|
2016-12-22 23:23:59 +01:00
|
|
|
servers.default = {
|
|
|
|
server-names = [
|
|
|
|
"localhost"
|
|
|
|
"${config.krebs.build.host.name}"
|
|
|
|
"${config.krebs.build.host.name}.r"
|
|
|
|
"${config.krebs.build.host.name}.retiolum"
|
|
|
|
];
|
|
|
|
locations = [
|
|
|
|
(nameValuePair "~ ^/~(.+?)(/.*)?\$" ''
|
|
|
|
alias /home/$1/public_html$2;
|
|
|
|
'')
|
|
|
|
];
|
|
|
|
};
|
2016-08-29 10:58:46 +02:00
|
|
|
};
|
|
|
|
}
|
2016-10-20 21:05:56 +02:00
|
|
|
{
|
|
|
|
services.redis.enable = true;
|
2016-12-04 20:40:11 +01:00
|
|
|
}
|
|
|
|
{
|
|
|
|
virtualisation.libvirtd.enable = true;
|
2016-10-20 21:05:56 +02:00
|
|
|
}
|
2015-07-16 15:52:17 +02:00
|
|
|
];
|
|
|
|
|
2015-10-19 14:00:15 +02:00
|
|
|
krebs.build.host = config.krebs.hosts.mors;
|
2015-07-27 13:54:29 +02:00
|
|
|
|
2015-07-16 15:52:17 +02:00
|
|
|
boot = {
|
|
|
|
loader.grub.enable = true;
|
|
|
|
loader.grub.version = 2;
|
|
|
|
loader.grub.device = "/dev/sda";
|
|
|
|
|
|
|
|
initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda2"; } ];
|
|
|
|
initrd.luks.cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
|
|
|
|
initrd.availableKernelModules = [ "xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
|
|
|
|
#kernelModules = [ "kvm-intel" "msr" ];
|
|
|
|
};
|
|
|
|
fileSystems = {
|
|
|
|
"/" = {
|
|
|
|
device = "/dev/big/nix";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/boot" = {
|
|
|
|
device = "/dev/sda1";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/mnt/loot" = {
|
|
|
|
device = "/dev/big/loot";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/home" = {
|
|
|
|
device = "/dev/big/home";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/home/lass" = {
|
|
|
|
device = "/dev/big/home-lass";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
2016-04-11 16:43:25 +02:00
|
|
|
"/bku" = {
|
2015-07-16 15:52:17 +02:00
|
|
|
device = "/dev/big/backups";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/home/games/.local/share/Steam" = {
|
|
|
|
device = "/dev/big/steam";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/home/virtual/virtual" = {
|
|
|
|
device = "/dev/big/virtual";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
|
|
|
|
|
|
|
"/mnt/public" = {
|
|
|
|
device = "/dev/big/public";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
2016-02-17 14:59:36 +01:00
|
|
|
|
|
|
|
"/mnt/conf" = {
|
|
|
|
device = "/dev/big/conf";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
2016-10-11 17:35:53 +02:00
|
|
|
"/tmp" = {
|
|
|
|
device = "tmpfs";
|
|
|
|
fsType = "tmpfs";
|
|
|
|
options = ["nosuid" "nodev" "noatime"];
|
|
|
|
};
|
2015-07-16 15:52:17 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
services.udev.extraRules = ''
|
2016-06-06 22:09:57 +02:00
|
|
|
SUBSYSTEM=="net", ATTR{address}=="00:24:d7:f0:a0:0c", NAME="wl0"
|
|
|
|
SUBSYSTEM=="net", ATTR{address}=="f0:de:f1:8f:85:c9", NAME="et0"
|
2015-07-16 15:52:17 +02:00
|
|
|
'';
|
|
|
|
|
|
|
|
#TODO activationScripts seem broken, fix them!
|
|
|
|
#activationScripts
|
|
|
|
#split up and move into base
|
|
|
|
system.activationScripts.powertopTunables = ''
|
|
|
|
#Enable Audio codec power management
|
|
|
|
echo '1' > '/sys/module/snd_hda_intel/parameters/power_save'
|
|
|
|
#VM writeback timeout
|
|
|
|
echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs'
|
|
|
|
#Autosuspend for USB device Broadcom Bluetooth Device [Broadcom Corp]
|
2015-08-17 14:36:56 +02:00
|
|
|
#echo 'auto' > '/sys/bus/usb/devices/1-1.4/power/control'
|
2015-07-16 15:52:17 +02:00
|
|
|
#Autosuspend for USB device Biometric Coprocessor
|
2016-06-06 22:11:11 +02:00
|
|
|
#echo 'auto' > '/sys/bus/usb/devices/1-1.3/power/control'
|
2015-07-16 15:52:17 +02:00
|
|
|
|
|
|
|
#Runtime PMs
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:02.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:16.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:03:00.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.2/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1d.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.3/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:0d:00.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1b.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1a.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:19.0/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:16.3/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.1/power/control'
|
|
|
|
echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.4/power/control'
|
|
|
|
'';
|
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
2016-09-03 03:00:51 +02:00
|
|
|
exfat
|
|
|
|
|
2016-03-15 14:12:13 +01:00
|
|
|
acronym
|
2016-02-06 19:26:51 +01:00
|
|
|
cac-api
|
2015-10-03 14:37:34 +02:00
|
|
|
sshpass
|
2015-09-30 15:18:31 +02:00
|
|
|
get
|
2015-10-15 14:44:14 +02:00
|
|
|
teamspeak_client
|
2015-11-01 20:00:19 +01:00
|
|
|
hashPassword
|
2016-04-13 16:47:47 +02:00
|
|
|
urban
|
|
|
|
mk_sql_pair
|
2016-06-01 00:10:13 +02:00
|
|
|
remmina
|
2016-10-11 17:40:41 +02:00
|
|
|
thunderbird
|
2016-08-29 10:59:03 +02:00
|
|
|
|
|
|
|
logf
|
2016-10-01 02:13:47 +02:00
|
|
|
iodine
|
2016-10-02 12:38:04 +02:00
|
|
|
|
|
|
|
macchanger
|
2015-07-16 15:52:17 +02:00
|
|
|
];
|
|
|
|
|
|
|
|
#TODO: fix this shit
|
|
|
|
##fprint stuff
|
|
|
|
##sudo fprintd-enroll $USER to save fingerprints
|
|
|
|
#services.fprintd.enable = true;
|
|
|
|
#security.pam.services.sudo.fprintAuth = true;
|
|
|
|
|
|
|
|
users.extraGroups = {
|
|
|
|
loot = {
|
|
|
|
members = [
|
|
|
|
config.users.extraUsers.mainUser.name
|
|
|
|
"firefox"
|
|
|
|
"chromium"
|
|
|
|
"google"
|
|
|
|
"virtual"
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2016-06-28 17:25:12 +02:00
|
|
|
krebs.repo-sync.timerConfig = {
|
|
|
|
OnCalendar = "00:37";
|
|
|
|
};
|
|
|
|
|
2015-07-16 15:52:17 +02:00
|
|
|
services.mongodb = {
|
|
|
|
enable = true;
|
|
|
|
};
|
|
|
|
}
|