From 61e21346a6947327bf5394f6c73499621c494986 Mon Sep 17 00:00:00 2001
From: Ben Sima <ben@bsima.me>
Date: Fri, 10 Apr 2020 16:33:00 -0700
Subject: Deploy herocomics.app production server

This also includes some drive-by formatting changes and config changes
needed to get it up and running.
---
 Com/MusicMeetsComics/Prod.nix | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 Com/MusicMeetsComics/Prod.nix

(limited to 'Com/MusicMeetsComics/Prod.nix')

diff --git a/Com/MusicMeetsComics/Prod.nix b/Com/MusicMeetsComics/Prod.nix
new file mode 100644
index 0000000..10650ee
--- /dev/null
+++ b/Com/MusicMeetsComics/Prod.nix
@@ -0,0 +1,43 @@
+{ config, pkgs, lib, ... }:
+{
+  imports = [ <nixpkgs/nixos/modules/profiles/qemu-guest.nix> ];
+  boot.loader.grub.device = "/dev/vda";
+  fileSystems."/" = { device = "/dev/vda1"; fsType = "ext4"; };
+
+  services.herocomics = {
+    enable = true;
+    port = 3000;
+    server = pkgs.herocomics-server;
+    client = pkgs.herocomics-client;
+  };
+
+  networking = {
+    firewall.allowedTCPPorts = [ 22 80 443 ];
+    nameservers = [
+      "67.207.67.2"
+      "67.207.67.3"
+    ];
+    defaultGateway = "138.68.40.1";
+    defaultGateway6 = "";
+    dhcpcd.enable = false;
+    usePredictableInterfaceNames = lib.mkForce true;
+    interfaces = {
+      eth0 = {
+        ipv4.addresses = [
+          { address="138.68.40.97"; prefixLength=21; }
+          { address="10.46.0.5"; prefixLength=16; }
+        ];
+        ipv6.addresses = [
+          { address="fe80::b063:c4ff:fee5:d636"; prefixLength=64; }
+        ];
+        ipv4.routes = [ { address = "138.68.40.1"; prefixLength = 32; } ];
+        ipv6.routes = [ { address = ""; prefixLength = 32; } ];
+      };
+
+    };
+  };
+  services.udev.extraRules = ''
+    ATTR{address}=="b2:63:c4:e5:d6:36", NAME="eth0"
+
+  '';
+}
-- 
cgit v1.2.3