diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix b/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix
index 74617c7..17a9b17 100644
--- a/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix
+++ b/hswaw/machines/customs.hackerspace.pl/checkinator-tracker.nix
@@ -1,14 +1,7 @@
 { pkgs, ... }:
 
 let
-  old-pkgs = import (fetchTarball {
-    sha256 = "0kdx3pz0l422d0vvvj3h8mnq65jcg2scb13dc1z1lg2a8cln842z";
-    url = https://api.github.com/repos/NixOS/nixpkgs/tarball/0bf298df24f721a7f85c580339fb7eeff64b927c;
-  }) { config = pkgs.config; };
-
-  repo = pkgs.fetchgit (builtins.fromJSON
-    (builtins.readFile ./checkinator-repo.json));
-  checkinator = old-pkgs.callPackage "${repo}/default.nix" {};
+  checkinator = pkgs.callPackage ./checkinator.nix {};
 
   name = "checkinator-tracker";
   user = name;
diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix b/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix
index 26da702..9165575 100644
--- a/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix
+++ b/hswaw/machines/customs.hackerspace.pl/checkinator-web.nix
@@ -1,23 +1,16 @@
 { pkgs, ... }:
 
 let
-  old-pkgs = import (fetchTarball {
-    sha256 = "0kdx3pz0l422d0vvvj3h8mnq65jcg2scb13dc1z1lg2a8cln842z";
-    url = https://api.github.com/repos/NixOS/nixpkgs/tarball/0bf298df24f721a7f85c580339fb7eeff64b927c;
-  }) { config = pkgs.config; };
-
-  repo = pkgs.fetchgit (builtins.fromJSON
-    (builtins.readFile ./checkinator-repo.json));
-  checkinator = old-pkgs.callPackage "${repo}/default.nix" {};
+  checkinator = pkgs.callPackage ./checkinator.nix {};
 
   name = "checkinator-web";
   user = name;
   group = name;
   socket_dir = "/run/${name}/";
 
-  python = old-pkgs.python3.withPackages (ppackages: with ppackages;  [
+  python = pkgs.python3.withPackages (ppackages: with ppackages;  [
     checkinator
-    old-pkgs.python3Packages.gunicorn
+    pkgs.python3Packages.gunicorn
   ]);
 
   prepare = pkgs.writeShellScriptBin "${name}-prepare" ''
@@ -101,7 +94,7 @@
       "${pkgs.writeShellScript "checkinator-dbsetup"  ''
         if [ ! -e "/var/checkinator-web/at.db" ]
         then
-          ${pkgs.sqlite}/bin/sqlite3 /var/checkinator-web/at.db < ${repo}/dbsetup.sql
+          ${pkgs.sqlite}/bin/sqlite3 /var/checkinator-web/at.db < ${checkinator}/dbsetup.sql
         fi
       ''}"
     ];
@@ -118,7 +111,7 @@
     enableACME = true;
 
     locations."/static/" = {
-      alias = "${repo}/static/";
+      alias = "${checkinator}/static/";
     };
     locations."/" = {
       proxyPass = "http://unix://${socket_dir}/web.sock";
diff --git a/hswaw/machines/customs.hackerspace.pl/checkinator-werkzeug.patch b/hswaw/machines/customs.hackerspace.pl/checkinator-werkzeug.patch
new file mode 100644
index 0000000..7517a68
--- /dev/null
+++ b/hswaw/machines/customs.hackerspace.pl/checkinator-werkzeug.patch
@@ -0,0 +1,13 @@
+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
new file mode 100644
index 0000000..4135f7a
--- /dev/null
+++ b/hswaw/machines/customs.hackerspace.pl/checkinator.nix
@@ -0,0 +1,39 @@
+{ 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 = pkgs.fetchgit (builtins.fromJSON (builtins.readFile ./checkinator-repo.json));
+
+  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
+  ];
+}
