summaryrefslogtreecommitdiffstats
path: root/makefu/1systems
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2016-08-02 20:58:42 +0200
committertv <tv@krebsco.de>2016-08-02 20:58:42 +0200
commite6aef09ad41cd55d716b8ee276ebd774b95d8ecb (patch)
tree6d8d5cce976f3843ab196367e82fec56f0798838 /makefu/1systems
parent0928cc03a6191640c66c9122159994855527faef (diff)
parentb197949ab83ee3ee87b5774e0fc7c8d0123a6708 (diff)
Merge remote-tracking branch 'gum/master'
Diffstat (limited to 'makefu/1systems')
-rw-r--r--makefu/1systems/filepimp.nix8
-rw-r--r--makefu/1systems/omo.nix33
-rw-r--r--makefu/1systems/wbob.nix2
-rw-r--r--makefu/1systems/x.nix (renamed from makefu/1systems/pornocauster.nix)16
4 files changed, 38 insertions, 21 deletions
diff --git a/makefu/1systems/filepimp.nix b/makefu/1systems/filepimp.nix
index c6966c99c..4037f693d 100644
--- a/makefu/1systems/filepimp.nix
+++ b/makefu/1systems/filepimp.nix
@@ -3,6 +3,7 @@ let
byid = dev: "/dev/disk/by-id/" + dev;
part1 = disk: disk + "-part1";
rootDisk = byid "ata-SanDisk_SDSSDP064G_140237402890";
+ primary-interface = "enp2s0"; # c8:cb:b8:cf:e4:dc
# N54L Chassis:
# ____________________
# |______FRONT_______|
@@ -75,4 +76,11 @@ in {
(xfsmount "j2" (part1 jDisk2)) //
(xfsmount "par0" (part1 jDisk3))
;
+ services.wakeonlan.interfaces = [
+ {
+ interface = primary-interface;
+ method = "password";
+ password = "CA:FE:BA:BE:13:37";
+ }
+ ];
}
diff --git a/makefu/1systems/omo.nix b/makefu/1systems/omo.nix
index e11abd40d..3aa5e943e 100644
--- a/makefu/1systems/omo.nix
+++ b/makefu/1systems/omo.nix
@@ -4,6 +4,7 @@
{ config, pkgs, lib, ... }:
let
+ toMapper = id: "/media/crypt${builtins.toString id}";
byid = dev: "/dev/disk/by-id/" + dev;
keyFile = byid "usb-Verbatim_STORE_N_GO_070B3CEE0B223954-0:0";
rootDisk = byid "ata-SanDisk_SD8SNAT128G1122_162099420904";
@@ -33,7 +34,8 @@ let
# all physical disks
# TODO callPackage ../3modules/MonitorDisks { disks = allDisks }
- allDisks = [ rootDisk cryptDisk0 cryptDisk1 cryptDisk2 ];
+ dataDisks = [ cryptDisk0 cryptDisk1 cryptDisk2 ];
+ allDisks = [ rootDisk ] ++ dataDisks;
in {
imports =
[
@@ -72,26 +74,41 @@ in {
systemd.services.sabnzbd.environment.SSL_CERT_FILE = "${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt";
virtualisation.docker.enable = true;
-
-
+ makefu.ps3netsrv = {
+ enable = true;
+ servedir = "/media/cryptX/emu/ps3";
+ };
# HDD Array stuff
- environment.systemPackages = [ pkgs.mergerfs ];
services.smartd.devices = builtins.map (x: { device = x; }) allDisks;
- makefu.snapraid = let
- toMapper = id: "/media/crypt${builtins.toString id}";
- in {
+ makefu.snapraid = {
enable = true;
disks = map toMapper [ 0 1 ];
parity = toMapper 2;
};
+ # TODO create folders in /media
+ system.activationScripts.createCryptFolders = ''
+ ${lib.concatMapStringsSep "\n"
+ (d: "install -m 755 -d " + (toMapper d) )
+ [ 0 1 2 "X" ]}
+ '';
+ environment.systemPackages = with pkgs;[
+ mergerfs # hard requirement for mount
+ wol # wake up filepimp
+ ];
fileSystems = let
cryptMount = name:
{ "/media/${name}" = { device = "/dev/mapper/${name}"; fsType = "xfs"; };};
in cryptMount "crypt0"
// cryptMount "crypt1"
- // cryptMount "crypt2";
+ // cryptMount "crypt2"
+ // { "/media/cryptX" = {
+ device = (lib.concatMapStringsSep ":" (d: (toMapper d)) [ 0 1 2 ]);
+ fsType = "mergerfs";
+ options = [ "defaults" "allow_other" ];
+ };
+ };
powerManagement.powerUpCommands = lib.concatStrings (map (disk: ''
${pkgs.hdparm}/sbin/hdparm -S 100 ${disk}
diff --git a/makefu/1systems/wbob.nix b/makefu/1systems/wbob.nix
index e8e0b091f..ff593ab35 100644
--- a/makefu/1systems/wbob.nix
+++ b/makefu/1systems/wbob.nix
@@ -66,7 +66,7 @@ in {
client = {
enable = true;
screenName = "wbob";
- serverAddress = "pornocauster.r";
+ serverAddress = "x.r";
};
};
}
diff --git a/makefu/1systems/pornocauster.nix b/makefu/1systems/x.nix
index b683e5630..d41edfa46 100644
--- a/makefu/1systems/pornocauster.nix
+++ b/makefu/1systems/x.nix
@@ -43,16 +43,8 @@
../2configs/temp/share-samba.nix
# ../2configs/temp/elkstack.nix
# ../2configs/temp/sabnzbd.nix
+ ../2configs/tinc/siem.nix
];
-
- services.tinc.networks.siem = {
- name = "makefu";
- extraConfig = ''
- ConnectTo = sdarth
- ConnectTo = sjump
- '';
- };
-
krebs.nginx = {
default404 = false;
servers.default.listen = [ "80 default_server" ];
@@ -65,10 +57,10 @@
# configure pulseAudio to provide a HDMI sink as well
networking.firewall.enable = true;
- networking.firewall.allowedTCPPorts = [ 80 24800 ];
- networking.firewall.allowedUDPPorts = [ 665 ];
+ networking.firewall.allowedTCPPorts = [ 80 24800 26061 ];
+ networking.firewall.allowedUDPPorts = [ 665 26061 ];
- krebs.build.host = config.krebs.hosts.pornocauster;
+ krebs.build.host = config.krebs.hosts.x;
krebs.hosts.omo.nets.retiolum.via.ip4.addr = "192.168.1.11";
krebs.tinc.retiolum.connectTo = [ "omo" "gum" "prism" ];