diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..1f594a88a6fd6819a5d9c52f3112694ef04afdb4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+result
+dist-newstyle
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..3cb0d50f283c76377693b3c2be23904d8de583a7
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,18 @@
+stages:
+- generate
+- check
+
+generate-flake-ci:
+  stage: generate
+  script: nix run "git+https://gitlab.homotopic.tech/haskell/flake-to-gitlab-ci" > flake-ci.yml
+  artifacts:
+    paths:
+      - flake-ci.yml
+
+flake-ci:
+  stage: check
+  trigger:
+    include:
+      - artifact: flake-ci.yml
+        job: generate-flake-ci
+    strategy: depend