diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 40ea21e08670b43a83f5a387596c9b43155224ba..c8980bfc85cba1f718c3168c766d531af745918a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -5,7 +5,7 @@ flatpak:
   image: alpine:latest
   stage: build
   variables:
-    MANIFEST_PATH: "uk.me.bcowan.Rugby.yml"
+    MANIFEST_PATH: "uk.me.bcowan.Rugby.json"
     RUNTIME_REPO: "https://flathub.org/repo/flathub.flatpakrepo"
     FLATPAK_MODULE: "rugby"
     BUNDLE: "rugby.flatpak"
diff --git a/uk.me.bcowan.Rugby.json b/uk.me.bcowan.Rugby.json
new file mode 100644
index 0000000000000000000000000000000000000000..0df75ca35b311ab32792962422884a31d8f31d07
--- /dev/null
+++ b/uk.me.bcowan.Rugby.json
@@ -0,0 +1,40 @@
+{
+    "app-id": "uk.me.bcowan.Rugby",
+    "runtime": "org.gnome.Platform",
+    "runtime-version": "master",
+    "sdk": "org.gnome.Sdk",
+    "command": "rugby",
+    "finish-args": [
+        "--share=ipc",
+        "--device=dri",
+        "--socket=fallback-x11",
+        "--socket=wayland"
+    ],
+    "modules": [
+        {
+            "name": "blueprint-compiler",
+            "buildsystem": "meson",
+            "sources": [
+                {
+                    "type": "git",
+                    "url": "https://gitlab.gnome.org/jwestman/blueprint-compiler",
+                    "tag": "v0.10.0"
+                }
+            ]
+        },
+        {
+            "name": "rugby",
+            "buildsystem": "meson",
+            "builddir": true,
+            "sources": [
+                {
+                    "type": "dir",
+                    "path": "."
+                }
+            ],
+            "config_opts": [
+                "-Dprofile=development"
+            ]
+        }
+    ]
+}
diff --git a/uk.me.bcowan.Rugby.json.license b/uk.me.bcowan.Rugby.json.license
new file mode 100644
index 0000000000000000000000000000000000000000..6e1605f48c017c5f569d3cee79809d3b4a441cfd
--- /dev/null
+++ b/uk.me.bcowan.Rugby.json.license
@@ -0,0 +1,3 @@
+SPDX-FileCopyrightText: 2024 Bruce Cowan <bruce@bcowan.me.uk>
+
+SPDX-License-Identifier: GPL-3.0-or-later
diff --git a/uk.me.bcowan.Rugby.yml b/uk.me.bcowan.Rugby.yml
deleted file mode 100644
index a41a3c1eb5589d671df47d862c1fc8e7ba49c222..0000000000000000000000000000000000000000
--- a/uk.me.bcowan.Rugby.yml
+++ /dev/null
@@ -1,31 +0,0 @@
-# SPDX-FileCopyrightText: 2018-2023 Bruce Cowan <bruce@bcowan.me.uk>
-#
-# SPDX-License-Identifier: GPL-3.0-or-later
-
-app-id: uk.me.bcowan.Rugby
-runtime: org.gnome.Platform
-runtime-version: "master"
-sdk: org.gnome.Sdk
-command: rugby
-
-finish-args:
-  - "--share=ipc"
-  - "--device=dri"
-  - "--socket=fallback-x11"
-  - "--socket=wayland"
-
-modules:
-  - name: blueprint-compiler
-    buildsystem: meson
-    sources:
-      - type: git
-        url: https://gitlab.gnome.org/jwestman/blueprint-compiler
-        tag: v0.10.0
-  - name: rugby
-    buildsystem: meson
-    builddir: true
-    sources:
-      - type: dir
-        path: .
-    config_opts:
-      - "-Dprofile=development"