diff --git a/flake.lock b/flake.lock
index dd42e039058a184d3973eed3bab8b6de8aad8f46..6e1e6f933b6e0b686b076979863b7cd64ef0f167 100644
--- a/flake.lock
+++ b/flake.lock
@@ -58,6 +58,37 @@
         "type": "github"
       }
     },
+    "get-flake": {
+      "locked": {
+        "lastModified": 1644686428,
+        "narHash": "sha256-zkhYsURWFrvEZLkIoBeqFBzSu+cA2u5mo6M8vq9LN7M=",
+        "owner": "ursi",
+        "repo": "get-flake",
+        "rev": "703f15558daa56dfae19d1858bb3046afe68831a",
+        "type": "github"
+      },
+      "original": {
+        "owner": "ursi",
+        "repo": "get-flake",
+        "type": "github"
+      }
+    },
+    "horizon-gen-nix": {
+      "flake": false,
+      "locked": {
+        "lastModified": 1666986763,
+        "narHash": "sha256-/veAWnKs7u+e2j1kXXm3iMiKa/YOl5pacyLuV5jYOfw=",
+        "ref": "refs/heads/master",
+        "rev": "a5ed1b6ae187c8c398b8cd43d9341437ced4c03b",
+        "revCount": 21,
+        "type": "git",
+        "url": "https://gitlab.homotopic.tech/horizon/horizon-gen-nix"
+      },
+      "original": {
+        "type": "git",
+        "url": "https://gitlab.homotopic.tech/horizon/horizon-gen-nix"
+      }
+    },
     "horizon-platform": {
       "inputs": {
         "flake-utils": "flake-utils_2",
@@ -199,6 +230,8 @@
     "root": {
       "inputs": {
         "flake-utils": "flake-utils",
+        "get-flake": "get-flake",
+        "horizon-gen-nix": "horizon-gen-nix",
         "horizon-platform": "horizon-platform",
         "lint-utils": "lint-utils_2",
         "nixpkgs": "nixpkgs_4",
diff --git a/flake.nix b/flake.nix
index e251eadbff1a4a74f7a28770b17be6878aa7c3a4..6b0a4c18180cecbc4710fcceea5f66c4241b1ca4 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,16 +1,23 @@
 {
   inputs = {
+    get-flake.url = "github:ursi/get-flake";
     horizon-platform.url = "git+https://gitlab.homotopic.tech/horizon/horizon-platform";
+    horizon-gen-nix = {
+      url = "git+https://gitlab.homotopic.tech/horizon/horizon-gen-nix";
+      flake = false;
+    };
     lint-utils.url = "git+https://gitlab.homotopic.tech/nix/lint-utils";
     nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
     nixpkgs-libR.url = "github:nixos/nixpkgs/602748c14b82a2e17078713686fe1df2824fa502";
   };
-  outputs = inputs@{ self, nixpkgs, nixpkgs-libR, horizon-platform, flake-utils, lint-utils, ... }:
+  outputs = inputs@{ self, get-flake, nixpkgs, nixpkgs-libR, horizon-gen-nix, horizon-platform, flake-utils, lint-utils, ... }:
     flake-utils.lib.eachSystem [ "x86_64-linux" ] (system:
       let
         pkgs-libR = import nixpkgs-libR { inherit system; };
         pkgs = import nixpkgs { inherit system; };
 
+        horizon-gen-nix-app = get-flake horizon-gen-nix;
+
         overrides-hp = final: prev:
           (horizon-platform.overrides.${system}.ghc942 final prev
             // (import ./overlay.nix { inherit inputs pkgs; } final prev));
@@ -29,11 +36,8 @@
       in
       {
         apps = {
-          horizon-gen-nix = {
-            type = "app";
-            program = "${horizon-platform.packages.${system}.horizon-gen-nix}/bin/horizon-gen-nix";
-          };
-        horizon-gen-gitlab-ci = {
+          horizon-gen-nix = horizon-gen-nix-app.apps.${system}.default;
+          horizon-gen-gitlab-ci = {
             type = "app";
             program = "${horizon-gen-gitlab-ci}/bin/gen-gitlab-ci";
           };