about summary refs log tree commit diff
path: root/labernix/machines
diff options
context:
space:
mode:
Diffstat (limited to 'labernix/machines')
-rw-r--r--labernix/machines/heinrich.nix143
-rw-r--r--labernix/machines/labtop.nix72
2 files changed, 0 insertions, 215 deletions
diff --git a/labernix/machines/heinrich.nix b/labernix/machines/heinrich.nix
deleted file mode 100644
index 8ce69950..00000000
--- a/labernix/machines/heinrich.nix
+++ /dev/null
@@ -1,143 +0,0 @@
-{ config, lib, ... }:
-
-with lib;
-
-let
-  routes = {
-    moritz = {
-      id = 14;
-      address = "192.168.0.12";
-      prefixLength = 24;
-      gateway = "192.168.0.1";
-      destination = "144.76.143.122";
-    };
-
-    hotelturm = {
-      id = 8;
-      address = "10.11.77.5";
-      prefixLength = 24;
-      gateway = "10.11.77.16";
-      destination = "10.11.7.0/24";
-    };
-  };
-
-  internalIf = config.heinrich.internalInterface;
-  externalIf = config.heinrich.externalInterface;
-
-  mkRouteConfig = name: cfg: {
-    key = "routes-${name}";
-
-    networking.vlans.${name} = {
-      inherit (cfg) id;
-      interface = externalIf;
-    };
-
-    networking.interfaces.${name}.ip4 = singleton {
-      inherit (cfg) address prefixLength;
-    };
-
-    systemd.network.networks."40-${name}".routes = singleton {
-      routeConfig.Gateway = cfg.gateway;
-      routeConfig.Destination = cfg.destination;
-    };
-  };
-
-in {
-  imports = singleton ../common.nix ++ mapAttrsToList mkRouteConfig routes;
-
-  options.heinrich = {
-    internalInterface = mkOption {
-      type = types.str;
-      default = "enp7s0";
-      description = ''
-        The internal network interface where Heinrich is serving DHCP and DNS
-        requests.
-      '';
-    };
-
-    externalInterface = mkOption {
-      type = types.str;
-      default = "enp5s0";
-      description = ''
-        The external network interface where Heinrich is connected to the
-        internet.
-      '';
-    };
-  };
-
-  config = {
-    networking.useDHCP = false;
-    networking.interfaces.${externalIf}.ip4 = mkForce [];
-    networking.interfaces.${internalIf}.ip4 = lib.singleton {
-      address = "172.16.0.1";
-      prefixLength = 24;
-    };
-
-    services.dnsmasq.enable = true;
-    services.dnsmasq.resolveLocalQueries = false;
-    services.dnsmasq.extraConfig = ''
-      dhcp-range=172.16.0.100,172.16.0.254,12h
-
-      dhcp-option=3,172.16.0.1 # Gateway
-      dhcp-option=6,172.16.0.1 # DNS-server
-
-      local=/openlab.lan/
-      domain=openlab.lan
-
-      dhcp-leasefile=/var/db/dnsmasq/dhcp.leases
-    '';
-
-    systemd.services.dnsmasq-pre = {
-      description = "Pre-Init DNSMasq";
-      before = [ "dnsmasq.service" ];
-      wantedBy = [ "multi-user.target" ];
-      script = ''
-        mkdir -p /var/db/dnsmasq
-        chown dnsmasq:nogroup /var/db/dnsmasq
-      '';
-      serviceConfig.Type = "oneshot";
-      serviceConfig.RemainAfterExit = true;
-    };
-
-    users.motd = ''
-      0. Never touch a running system.
-      1. Dokumentiere alle trotz 0 erfolgten Änderungen im Github-Repo:
-         https://github.com/openlab-aux/labnetz-doku
-      2. Mit großer Macht geht große Verantwortung einher.
-      3. So weit!
-      4. ...
-      5. Reisst dir Hannes den Arsch auf, wenn Du die Punkte 0-2 ignorierst.
-    '';
-
-    # TODO: This is a dummy, replace it once we know about the real root fs.
-    fileSystems."/".label = "root";
-    boot.loader.grub.device = "nodev";
-
-    networking.useNetworkd = true;
-    networking.firewall.enable = false;
-    networking.nat.enable = true;
-    networking.nat.externalIP = routes.hotelturm.address;
-    networking.nat.externalInterface = "hotelturm";
-    networking.nat.internalIPs = [ "172.16.0.1/24" ];
-    networking.nat.internalInterfaces = [ internalIf ];
-
-    /* TODO!
-    services.openvpn.enable = true;
-    services.openvpn.servers.heinrich.config = ''
-      dev tun0
-      remote 144.76.143.122
-      ifconfig 10.9.8.2 10.9.8.1
-      secret /etc/openvpn/priv.key
-
-      comp-lzo
-
-      keepalive 10 60
-      ping-timer-rem
-      persist-tun
-      persist-key
-
-      route 0.0.0.0 0.0.0.0
-    '';
-    */
-  };
-}
diff --git a/labernix/machines/labtop.nix b/labernix/machines/labtop.nix
deleted file mode 100644
index bf376ba5..00000000
--- a/labernix/machines/labtop.nix
+++ /dev/null
@@ -1,72 +0,0 @@
-{ pkgs, ... }:
-
-let
-  greybird = pkgs.stdenv.mkDerivation {
-    name = "greybird-xfce-theme";
-
-    src = pkgs.fetchFromGitHub {
-      repo = "Greybird";
-      owner = "shimmerproject";
-      rev = "61ec18d22780aa87998381599c941e0cf4f7bfb5";
-      sha256 = "03h8hba4lfp337a4drylcplrbggry9gz8dq1f3gjy25fhqkgvq05";
-    };
-
-    phases = [ "unpackPhase" "installPhase" ];
-
-    installPhase = ''
-      mkdir -p "$out/share/themes/Greybird" \
-               "$out/share/themes/Greybird-compact/xfwm4"
-      cp -vrt "$out/share/themes/Greybird" \
-        gtk-* metacity-1 unity xfce-notify-4.0 xfwm4
-      cp -vrt "$out/share/themes/Greybird-compact/xfwm4" \
-        xfwm4_compact/*
-    '';
-  };
-
-in {
-  imports = [ ../common.nix ];
-
-  i18n = {
-    consoleFont = "lat9w-16";
-    consoleKeyMap = "us";
-    defaultLocale = "de_DE.UTF-8";
-  };
-
-  # TODO: This is a dummy, replace it once we know about the real root fs.
-  fileSystems."/".label = "root";
-  boot.loader.grub.device = "nodev";
-
-  environment.systemPackages = [
-    greybird
-    #repetierhost <- TODO
-    pkgs.firefox
-    pkgs.gimp
-    pkgs.freecad
-    pkgs.openscad
-    #pkgs.pronterface <- TODO
-    pkgs.blender
-    pkgs.slic3r
-    pkgs.libreoffice
-    pkgs.inkscape
-    pkgs.filezilla
-    pkgs.gmpc
-    pkgs.vlc
-  ];
-
-  # TODO: Needed for slic3r right now.
-  nixpkgs.config.allowBroken = true;
-
-  services.xserver.enable = true;
-  services.xserver.layout = "us";
-  services.xserver.xkbOptions = "eurosign:e";
-
-  services.xserver.displayManager.auto.enable = true;
-  services.xserver.displayManager.auto.user = "openlab";
-  services.xserver.desktopManager.xfce.enable = true;
-
-  users.mutableUsers = false;
-  users.extraUsers.openlab = {
-    uid = 1000;
-    isNormalUser = true;
-  };
-}