diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | .gitmodules | 3 | ||||
-rw-r--r-- | custom.py | 44 | ||||
-rw-r--r-- | hurrycurry | 2 | ||||
-rw-r--r-- | org.metamuffin.hurrycurry.client.desktop | 12 | ||||
-rw-r--r-- | org.metamuffin.hurrycurry.client.metainfo.xml | 102 | ||||
-rw-r--r-- | org.metamuffin.hurrycurry.client.yaml | 88 | ||||
m--------- | shared-modules | 0 |
8 files changed, 253 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e741811 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/.flatpak-builder +/builddir diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..1e7a990 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "shared-modules"] + path = shared-modules + url = https://github.com/flathub/shared-modules.git diff --git a/custom.py b/custom.py new file mode 100644 index 0000000..0521dd4 --- /dev/null +++ b/custom.py @@ -0,0 +1,44 @@ +platform = "linuxbsd" +CCFLAGS = "-I/app/include" +prefix = "/app" +unix_global_settings_path = "/app" +progress = "no" +builtin_freetype = "no" +builtin_libogg = "no" +builtin_libpng = "no" +builtin_libtheora = "no" +builtin_libvorbis = "no" +builtin_libwebp = "no" +builtin_libvpx = "no" +builtin_zlib = "no" +builtin_freetype = "no" +builtin_graphite = "no" +builtin_harfbuzz = "no" +udev = "no" +production = "yes" + +# Generated using https://godot-build-options-generator.github.io + +production = "yes" +minizip = "no" +module_bmp_enabled = "no" +module_camera_enabled = "no" +module_csg_enabled = "no" +module_dds_enabled = "no" +module_enet_enabled = "no" +module_gltf_enabled = "no" +module_gridmap_enabled = "no" +module_jsonrpc_enabled = "no" +module_ktx_enabled = "no" +module_minimp3_enabled = "no" +module_mobile_vr_enabled = "no" +module_msdfgen_enabled = "no" +module_multiplayer_enabled = "no" +module_navigation_enabled = "no" +module_openxr_enabled = "no" +module_regex_enabled = "no" +module_upnp_enabled = "no" +module_vhacd_enabled = "no" +module_webrtc_enabled = "no" +module_webxr_enabled = "no" +module_zip_enabled = "no" diff --git a/hurrycurry b/hurrycurry new file mode 100644 index 0000000..c8a53b1 --- /dev/null +++ b/hurrycurry @@ -0,0 +1,2 @@ +#!/bin/sh +godot --main-pack /app/share/hurrycurry/client.pck diff --git a/org.metamuffin.hurrycurry.client.desktop b/org.metamuffin.hurrycurry.client.desktop new file mode 100644 index 0000000..ca74768 --- /dev/null +++ b/org.metamuffin.hurrycurry.client.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Name=Hurry Curry! +Icon=org.metamuffin.hurrycurry.client +GenericName[de]=Ein Spiel rund ums Kochen +GenericName=A game about cooking +Exec=hurrycurry +Terminal=false +StartupNotify=false +Type=Application +Categories=Game; +Keywords=game;cooking; +PrefersNonDefaultGPU=true diff --git a/org.metamuffin.hurrycurry.client.metainfo.xml b/org.metamuffin.hurrycurry.client.metainfo.xml new file mode 100644 index 0000000..bd4093d --- /dev/null +++ b/org.metamuffin.hurrycurry.client.metainfo.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?> +<component type="desktop-application"> + <id>org.metamuffin.hurrycurry.client</id> + + <name>Hurry Curry!</name> + <summary>A fast-paced multiplayer game about cooking</summary> + + <developer id="org.metamuffin.hurrycurry"> + <name>The Hurry Curry! contributors</name> + </developer> + + <metadata_license>CC-BY-SA-4.0</metadata_license> + <project_license>AGPL-3.0-only</project_license> + + <branding> + <color type="primary" scheme_preference="light">#f4a570</color> + <color type="primary" scheme_preference="dark">#e38242</color> + </branding> + + <supports> + <control>pointing</control> + <control>keyboard</control> + <control>touch</control> + <control>gamepad</control> + </supports> + + <recommends> + <internet>always</internet> + </recommends> + + <description> + <p> + Hurry Curry! is a multiplayer game about cooking. Your goal is to run a + restaurant and gain points by serving meals you've cooked. </p> + <p> + Keyboard Controls: Move character with WASD. Move camera with arrow keys. + Interact with Space or J. Boost with Left Shift or K. Open/close menus with Escape. + Press Enter to open chat. Reset view with R. </p> + <p> + Controller Controls: Move character with Left Stick. Move camera with Right + Stick. Interact with A, Boost with B, Open/close menus with Menu button. Use keyboard + for chat. Reset view with Y. </p> + <p> + Game developed by nokoe, metamuffin, tpart. Special thanks to RustyStriker for + playtesting and technical assistance. + Thanks to Sofviic for most of the maps. + </p> + </description> + + <launchable type="desktop-id">org.metamuffin.hurrycurry.client.desktop</launchable> + + <url type="homepage">https://hurrycurry.metamuffin.org/</url> + <url type="bugtracker">https://codeberg.org/hurrycurry/hurrycurry/issues</url> + <!-- <url type="help">https://codeberg.org/hurrycurry/hurrycurry/wiki</url> --> + <url type="vcs-browser">https://codeberg.org/hurrycurry/hurrycurry</url> + <url type="contribute">https://codeberg.org/hurrycurry/hurrycurry</url> + <categories> + <category>Game</category> + </categories> + <screenshots> + <screenshot type="default"> + <image>https://img.itch.zone/aW1hZ2UvMjgxOTEyNy8xNjg2MzQzMS5qcGVn/original/2O5lVR.jpeg</image> + </screenshot> + <screenshot> + <image>https://img.itch.zone/aW1hZ2UvMjgxOTEyNy8xNjg2MzQzMC5qcGVn/original/YDCBug.jpeg</image> + </screenshot> + <screenshot> + <image>https://img.itch.zone/aW1hZ2UvMjgxOTEyNy8xNjg2MzQzMy5qcGVn/original/ynbKBP.jpeg</image> + </screenshot> + <screenshot> + <image>https://img.itch.zone/aW1hZ2UvMjgxOTEyNy8xNjg2MzQzMi5qcGVn/original/CT6oZD.jpeg</image> + </screenshot> + <screenshot> + <video codec="av1" container="webm"> + https://s.metamuffin.org/static/hurrycurry/trailer-flathub.webm</video> + </screenshot> + </screenshots> + + <content_rating type="oars-1.1"> + <content_attribute id="social-chat">intense</content_attribute> + </content_rating> + + + <releases> + <release version="1.2.1" date="2024-07-14" type="stable"> + <description>Apple Biscuit</description> + <url>https://codeberg.org/hurrycurry/hurrycurry/releases/tag/v1.2.1</url> + </release> + <release version="1.2.0" date="2024-07-14" type="stable"> + <description>Apple Biscuit</description> + <url>https://codeberg.org/hurrycurry/hurrycurry/releases/tag/v1.2.0</url> + </release> + <release version="1.1.0" date="2024-07-11" type="stable"> + <description>Post-Jam Release</description> + <url>https://codeberg.org/hurrycurry/hurrycurry/releases/tag/v1.1.0</url> + </release> + <release version="1.0.0" date="2024-07-09" type="stable"> + <description>Purism Game Jam release</description> + <url>https://codeberg.org/hurrycurry/hurrycurry/releases/tag/v1.0.0</url> + </release> + </releases> +</component> diff --git a/org.metamuffin.hurrycurry.client.yaml b/org.metamuffin.hurrycurry.client.yaml new file mode 100644 index 0000000..4e13bc5 --- /dev/null +++ b/org.metamuffin.hurrycurry.client.yaml @@ -0,0 +1,88 @@ +app-id: org.metamuffin.hurrycurry.client +runtime: org.freedesktop.Platform +runtime-version: "23.08" +sdk: org.freedesktop.Sdk +command: hurrycurry +finish-args: + - --share=ipc + - --socket=x11 + - --socket=pulseaudio + - --device=dri + - --share=network + +build-options: + arch: + x86_64: + env: + # Only enable link-time optimization when targeting x86_64 + # (causes issues on other architectures) + SCONS_FLAGS_EXTRA: use_lto=yes + + env: + BUILD_NAME: hurrycurry + +modules: + - shared-modules/glu/glu-9.json + + - name: scons + buildsystem: simple + cleanup: ["*"] + + sources: + - type: archive + sha256: 6e928fc97984e719814270f6863f2183b3b72180b0162a5ed09db68c9994100c + url: https://downloads.sourceforge.net/project/scons/scons/4.8.0/SCons-4.8.0.tar.gz + + build-commands: + - python3 -m pip install --no-index --no-build-isolation --prefix=/app . + + - name: godot + buildsystem: simple + + sources: + - type: archive + sha256: da14e36448f1efd2955fe85d7ededc9e6ac8c893f76723b4852e7587306c761d + url: https://downloads.tuxfamily.org/godotengine/4.2.2/godot-4.2.2-stable.tar.xz + + - type: file + path: custom.py + + build-commands: + - python3 /app/bin/scons $SCONS_FLAGS_EXTRA profile=custom.py target=editor -j "$FLATPAK_BUILDER_N_JOBS" + - python3 /app/bin/scons $SCONS_FLAGS_EXTRA profile=custom.py target=template_release -j "$FLATPAK_BUILDER_N_JOBS" + - install -Dm755 bin/godot.linuxbsd.template_release.* /app/bin/godot + - install -Dm755 bin/godot.linuxbsd.editor.* /app/bin/godot-editor + + - name: hurrycurry + buildsystem: simple + sources: + - type: archive + sha256: 89ab3ae4694bc15210b21163d8256a987744c9973ff563d2a15a4b9c90fd9ccd + url: https://codeberg.org/hurrycurry/hurrycurry/archive/v1.2.1.tar.gz + + - type: file + sha256: cddc72a740395eaa760c2eb8e757a3f14ec377a286f257df542bd62614c6583a + url: https://s.metamuffin.org/static/hurrycurry-1.2/book.webp.tar.zst + + - type: file + path: hurrycurry + + - type: file + path: org.metamuffin.hurrycurry.client.desktop + + - type: file + path: org.metamuffin.hurrycurry.client.metainfo.xml + + build-commands: + - tar -xf book.webp.tar.zst -C client/menu/book + - install -dD /app/share/hurrycurry + - godot-editor --headless --export-pack wasm32-unknown-unknown /app/share/hurrycurry/client.pck client/project.godot + - rm /app/bin/godot-editor + - install -Dm755 hurrycurry /app/bin/hurrycurry + - install -Dm644 org.metamuffin.hurrycurry.client.desktop /app/share/applications/org.metamuffin.hurrycurry.client.desktop + - install -Dm644 org.metamuffin.hurrycurry.client.metainfo.xml /app/share/metainfo/org.metamuffin.hurrycurry.client.metainfo.xml + - > + for size in {32,64,128,256,512}; do + ffmpeg -i client/icon.png -vf scale=${size}:${size} "$size.png" + install -Dm644 "$size.png" "/app/share/icons/hicolor/${size}x${size}/apps/org.metamuffin.hurrycurry.client.png" + done diff --git a/shared-modules b/shared-modules new file mode 160000 +Subproject 93694efc475bc1c0b9be39a0743e33b7426c9f1 |