hswaw/machines/customs: import checkinator via hscloud namespace

Change-Id: I4586c92af4126ec1f1d0d1a1aa2d9dc5c84dec44
Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1220
Reviewed-by: q3k <q3k@hackerspace.pl>
diff --git a/hswaw/checkinator/at/web.py b/hswaw/checkinator/at/web.py
index 34b6337..9eb5e6a 100644
--- a/hswaw/checkinator/at/web.py
+++ b/hswaw/checkinator/at/web.py
@@ -54,7 +54,7 @@
     app.updater = devices_api
     
     if app.config.get('PROXY_FIX'):
-        from werkzeug.contrib.fixers import ProxyFix
+        from werkzeug.middleware.proxy_fix import ProxyFix
         app.wsgi_app = ProxyFix(app.wsgi_app)
     
     app.space_auth = SpaceAuth(app)
diff --git a/hswaw/checkinator/default.nix b/hswaw/checkinator/default.nix
index 37f0936..c37f9fa 100644
--- a/hswaw/checkinator/default.nix
+++ b/hswaw/checkinator/default.nix
@@ -1,11 +1,11 @@
-{ pkgs ? (import <nixpkgs> {}).c.unstable_2020-05}:
+{ pkgs, ... }:
 
 let
   spaceauth = pkgs.callPackage "${pkgs.fetchgit {
-    url = "http://code.hackerspace.pl/vuko/nix-spaceauth";
-    rev = "1c289eafe041d7730a834bb437b7173ca4b9e2c9";
-    sha256 = "0f2mhbkm92rlx3a1il3wfr4bq6xghdiajczgg349v6a01iazm4qz";
-  }}/spaceauth.nix" {};
+    url = "https://code.hackerspace.pl/informatic/flask-spaceauth";
+    rev = "d3e1a4412cbc929249e407ccecfb54fbbd14e53a";
+    sha256 = "01qnjj647jw81hcyvq359rwqjpc5ah9ghvc6ic0a0wppp13mgw94";
+  }}" {};
 in pkgs.python3Packages.buildPythonPackage {
   pname = "checkinator";
   version = "0.2";
@@ -13,6 +13,11 @@
   doCheck = false;
   src = ./.;
 
+  postInstall = ''
+    cp -r dbsetup.sql $out/dbsetup.sql
+    cp -r static $out/static
+  '';
+
   propagatedBuildInputs = with pkgs; [
     python3Packages.gunicorn
     python3Packages.flask
diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix b/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix
index 17a9b17..77a46bd 100644
--- a/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix
+++ b/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix
@@ -1,7 +1,8 @@
-{ pkgs, ... }:
+{ pkgs, workspace, ... }:
 
 let
-  checkinator = pkgs.callPackage ./checkinator.nix {};
+  hscloud = workspace;
+  checkinator = hscloud.hswaw.checkinator;
 
   name = "checkinator-tracker";
   user = name;
@@ -22,7 +23,7 @@
     ${pkgs.acl}/bin/setfacl -m "u:checkinator-web:rx" ${socket_dir}
   '';
   config = builtins.toFile "${name}-config.yaml" (pkgs.lib.generators.toYAML {} {
-    # path to dhcpd lease file 
+    # path to dhcpd lease file
     LEASE_FILE = "/var/lib/dhcp/dhcpd.leases";
 
     # timeout for old leases
@@ -31,7 +32,7 @@
     # optional - local trusted socket
     GRPC_UNIX_SOCKET = "${socket_dir}/checkinator.sock";
 
-    # optional - remote authenticated (TLS cert) socket 
+    # optional - remote authenticated (TLS cert) socket
     GRPC_TLS_CERT_DIR = "/mnt/secrets/checkinator-tracker";
     GRPC_TLS_CA_CERT = "/mnt/secrets/checkinator-tracker/ca.pem";
     GRPC_TLS_ADDRESS = "[::]:2847";
diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix b/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix
index 9165575..b117c63 100644
--- a/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix
+++ b/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix
@@ -1,7 +1,8 @@
-{ pkgs, ... }:
+{ pkgs, workspace, ... }:
 
 let
-  checkinator = pkgs.callPackage ./checkinator.nix {};
+  hscloud = workspace;
+  checkinator = hscloud.hswaw.checkinator;
 
   name = "checkinator-web";
   user = name;
@@ -32,7 +33,7 @@
   '';
 
   config = builtins.toFile "${name}-config.yaml" (pkgs.lib.generators.toYAML {} {
-    # local sqlite db for storing user and MAC 
+    # local sqlite db for storing user and MAC
     DB = "/var/checkinator-web/at.db";
     
     # debug option interpreted by flask app
diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator-werkzeug.patch b/hswaw/machines/customs.hackerspace.pl/checkinator-werkzeug.patch
deleted file mode 100644
index 7517a68..0000000
--- a/hswaw/machines/customs.hackerspace.pl/checkinator-werkzeug.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/at/web.py b/at/web.py
-index 34b6337..9eb5e6a 100644
---- a/at/web.py
-+++ b/at/web.py
-@@ -54,7 +54,7 @@ def app(instance_path, devices_api, config):
-     app.updater = devices_api
-     
-     if app.config.get('PROXY_FIX'):
--        from werkzeug.contrib.fixers import ProxyFix
-+        from werkzeug.middleware.proxy_fix import ProxyFix
-         app.wsgi_app = ProxyFix(app.wsgi_app)
-     
-     app.space_auth = SpaceAuth(app)
diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator.nix b/hswaw/machines/customs.hackerspace.pl/checkinator.nix
deleted file mode 100644
index cbd2090..0000000
--- a/hswaw/machines/customs.hackerspace.pl/checkinator.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{ pkgs }:
-
-let
-  spaceauth = pkgs.callPackage "${pkgs.fetchgit {
-    url = "https://code.hackerspace.pl/informatic/flask-spaceauth";
-    rev = "d3e1a4412cbc929249e407ccecfb54fbbd14e53a";
-    sha256 = "01qnjj647jw81hcyvq359rwqjpc5ah9ghvc6ic0a0wppp13mgw94";
-  }}" {};
-in pkgs.python3Packages.buildPythonPackage {
-  pname = "checkinator";
-  version = "0.2";
-
-  doCheck = false;
-  src = ../../../hswaw/checkinator;
-
-  patches = [
-    ./checkinator-werkzeug.patch
-  ];
-
-  postInstall = ''
-    cp -r dbsetup.sql $out/dbsetup.sql
-    cp -r static $out/static
-  '';
-
-  propagatedBuildInputs = with pkgs; [
-    python3Packages.gunicorn
-    python3Packages.flask
-    python3Packages.pyyaml
-    python3Packages.isodate
-    python3Packages.requests
-    python3Packages.requests-unixsocket
-    python3Packages.grpcio
-    python3Packages.grpcio-tools
-    python3Packages.setuptools
-    python3Packages.protobuf
-    spaceauth
-    iproute
-  ];
-}