engine/flatpak.json

80 lines
2.8 KiB
JSON

{
"//":"To build:",
"//":" flatpak-builder --user --install --from-git=~/quake/fteqw-code-git build-dir flatpak.json",
"//":" (swap the git url for a web-based one if you're not gonna make any local changes first - note that it'll only take committed changes)",
"//":"To then run:",
"//":" cd ~/quake && flatpak run info.triptohell.fteqw",
"//":"To then create a bundle:",
"//":" flatpak build-bundle ~/.local/share/flatpak/repo fteqw.flatpak info.triptohell.fteqw",
"//":"Which can then be distributed and hopefully double-clicked etc, or just 'flatpak install --user fteqw.flatpak'.",
"//":"Note: If you're making a TC, add your data/fmf as an extra module somehow, and remove the filesystem=host access.",
"app-id": "info.triptohell.fteqw",
"runtime": "org.freedesktop.Platform",
"runtime-version":"22.08",
"sdk": "org.freedesktop.Sdk",
"command": "fteqw",
"rename-desktop-file":"fteqw.desktop",
"strip":"true",
"//":"dri needed for gl",
"//":"ipc supposedly recommended for x11's shm stuff",
"//":"flatpak doesn't seem to support alsa. anyone not using pipewire is thus fucked, nothing I can do about that",
"//":"filesystem /usr/share/quake seems b0rked, we can't find standard gamedata there. still using 'host' because steam might have your game library on some other partition/device other than home.",
"//":"--device=all fixes gamepad so we have usable inputs on steamdeck (apparently there's no proper way around that)",
"finish-args": [
"--share=network",
"--device=dri",
"--share=ipc",
"--socket=x11",
"--socket=wayland",
"--filesystem=host",
"--filesystem=/run/udev:ro",
"--device=all",
"--device=snd",
"--socket=pulseaudio"
],
"modules": [
{
"name": "fteqw",
"buildsystem": "cmake",
"//":"Using sdl to ensure game controller support eg for steamdeck etc. This may result in some clipboard issues as flatpak's sdl is a little too old (and sdl sucked in delaying proper support).",
"//":"Server stuff disabled, flatpak is not a good match. commandline tools also disabled for the most part, no .desktop files for those",
"//":"install to /app/bin instead of /app/games, flatpak just prefers it that way and the distinction isn't useful.",
"config-opts": ["-DCMAKE_BUILD_TYPE=Release",
"-DFTE_USE_SDL=true",
"-DFTE_ENGINE_SERVER_ONLY=false",
"-DFTE_TOOL_QTV=false",
"-DFTE_TOOL_MASTER=false",
"-DFTE_TOOL_HTTPSV=false",
"-DFTE_TOOL_QCC=true",
"-DFTE_TOOL_IQM=false",
"-DFTE_TOOL_IMAGE=false",
"-DCMAKE_INSTALL_PREFIX=/app",
"-DCMAKE_INSTALL_FULL_LIBDIR=/app/lib",
"-DCMAKE_INSTALL_DATAROOTDIR=/app/share",
"-DFTE_INSTALL_BINDIR=bin"],
"sources": [
{
"type": "git",
"path": "/home/spike/quake/fteqw-code-git",
"//url": "https://github.com/fte-team/fteqw.git"
}
]
}
]
}