diff --git a/.github/workflows/godot.yml b/.github/workflows/godot.yml new file mode 100644 index 0000000..affa7a5 --- /dev/null +++ b/.github/workflows/godot.yml @@ -0,0 +1,57 @@ +name: "Godot Engine" +on: + workflow_dispatch: + pull_request: + release: + types: + - released + +env: + GODOT_VERSION: 3.6 + EXPORT_NAME: ROTA + +jobs: + export: + name: Export + runs-on: ubuntu-latest + container: + image: docker.io/smks/godot-ci:3.6 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + lfs: true + + - name: Set up export templates + run: | + mkdir -v -p ~/.local/share/godot/templates/ + mv /root/.local/share/godot/templates/${GODOT_VERSION}.stable ~/.local/share/godot/templates/${GODOT_VERSION}.stable + + - name: Export + run: | + mkdir --verbose --parents ./export/linux + godot --no-window --path=./project.godot --export-pack "Linux/X11" ./export/linux/${EXPORT_NAME}.pck + + - name: Upload artifact + uses: actions/upload-artifact@v4 + with: + name: ${{ env.EXPORT_NAME }} + path: export/linux/${{ env.EXPORT_NAME }}.pck + + release: + name: Release + needs: export + if: ${{ github.event_name == 'release' }} + runs-on: ubuntu-latest + steps: + - name: Download artifact + uses: actions/download-artifact@v4 + with: + name: ${{ env.EXPORT_NAME }} + + - name: Upload to release + env: + GITHUB_TOKEN: ${{ github.token }} + run: | + tar -cJf ${{ env.EXPORT_NAME }}.tar.xz ${{ env.EXPORT_NAME }}.pck + gh release upload '${{ github.ref_name }}' * --repo '${{ github.repository }}' diff --git a/export/flatpak/launcher.desktop b/export/flatpak/launcher.desktop new file mode 100644 index 0000000..d8c57ff --- /dev/null +++ b/export/flatpak/launcher.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=ROTA +GenericName=Puzzle Game +Comment=Gravity bends beneath your feet +Exec=godot-runner +Icon=net.hhoney.rota +Terminal=false +Type=Application +Categories=Game;KidsGame; diff --git a/export/flatpak/metainfo.xml b/export/flatpak/metainfo.xml new file mode 100644 index 0000000..720a0fe --- /dev/null +++ b/export/flatpak/metainfo.xml @@ -0,0 +1,66 @@ + + + ROTA + Gravity bends beneath your feet + + #ff99ff + #850087 + + HHoney Software + + HHoney Software + + +

Move blocks and twist gravity to solve puzzles. Collect all 50 gems and explore 8 vibrant worlds.

+ +
+ net.hhoney.rota + net.hhoney.rota.desktop + CC0 + Unlicense + + https://hhoney.net + https://github.com/HarmonyHoney/ROTA/issues + https://ko-fi.com/hhoney + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/1.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/2.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/3.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/4.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/5.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/6.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/7.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/8.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/9.png + + + https://raw.githubusercontent.com/HarmonyHoney/ROTA/6c7dafea0993700258f77a2412eef7fca5fa559c/media/image/assets/screens/10.png + + + + + +
diff --git a/net.hhoney.rota.json b/net.hhoney.rota.json new file mode 100644 index 0000000..6114f86 --- /dev/null +++ b/net.hhoney.rota.json @@ -0,0 +1,38 @@ +{ + "id": "net.hhoney.rota", + "runtime": "org.freedesktop.Platform", + "runtime-version": "24.08", + "base": "org.godotengine.godot.BaseApp", + "base-version": "3.6", + "sdk": "org.freedesktop.Sdk", + "command": "godot-runner", + "finish-args": [ + "--share=ipc", + "--socket=x11", + "--socket=pulseaudio", + "--device=all" + ], + "modules": [ + { + "name": "rota", + "buildsystem": "simple", + "sources": [ + { + "type": "dir", + "path": "." + }, + { + "type": "file", + "url": "https://github.com/HarmonyHoney/ROTA/releases/download/something/ROTA.pck", + "sha256": "a89741f56eb6282d703f81f907617f6cb86caf66a78fce94d48fb5ddfd65305c" + } + ], + "build-commands": [ + "install -Dm644 ROTA.pck ${FLATPAK_DEST}/bin/godot-runner.pck", + "install -Dm644 export/flatpak/launcher.desktop ${FLATPAK_DEST}/share/applications/${FLATPAK_ID}.desktop", + "install -Dm644 export/flatpak/metainfo.xml ${FLATPAK_DEST}/share/metainfo/${FLATPAK_ID}.metainfo.xml", + "install -Dm644 media/image/icon/icon256.png ${FLATPAK_DEST}/share/icons/hicolor/256x256/apps/${FLATPAK_ID}.png" + ] + } + ] +}