Skip to content

Commit

Permalink
Define functional Flatpak App manifest
Browse files Browse the repository at this point in the history
This manifest allows for the Gearsystem application to start and execute
ROMs without hanging or being unable to render windows.

The `--share=ipc`, `--socket=x11` and `--device=dri` arguments along
with the GLEW and GLU shared modules are necessary for the GUI to appear
whereas the `--socket=pulseaudio` and SDL2 shared module are necessary
for audio to be processed without hitting an indefinite lock.

Filesystem access is still in development, meaning that the
`--filesystem=home` or some equivalent command is required to find ROMs
to load into Gearsystem.
  • Loading branch information
TomChapple committed Feb 17, 2024
1 parent 0fda589 commit 7db7c18
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "platforms/flatpak/shared-modules"]
path = platforms/flatpak/shared-modules
url = https://github.com/flathub/shared-modules.git
2 changes: 2 additions & 0 deletions platforms/flatpak/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#Ignore any files created during the build of the Flatpak application
.flatpak-builder/
30 changes: 30 additions & 0 deletions platforms/flatpak/io.github.drhelius.Gearsystem.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
id: io.github.drhelius.Gearsystem
runtime: org.freedesktop.Platform
runtime-version: '23.08'
sdk: org.freedesktop.Sdk
command: gearsystem
finish-args:
- --share=ipc
- --socket=x11
- --device=dri
- --socket=pulseaudio
modules:
- shared-modules/glu/glu-9.json
- shared-modules/glew/glew.json
- shared-modules/SDL2/SDL2-no-libdecor.json
- name: gearsystem
buildsystem: simple
build-commands:
- make
- make install prefix="$FLATPAK_DEST"
subdir: platforms/linux
sources:
# A reference to a specific commit is used whilst this is in development.
# Ideally this will use either a release archive or a specific tag/commit
# pair.
# There is also an option to use a type of "dir" and a path of "../.." to
# allow for builds from the current commit. This may be useful for
# "master" or "nightly" builds, but this may require further exploration.
- type: git
url: https://github.com/drhelius/Gearsystem.git
commit: 0fda5894b310110532a5594b815c20cf9a6cb1ed
1 change: 1 addition & 0 deletions platforms/flatpak/shared-modules
Submodule shared-modules added at f2b0c1

0 comments on commit 7db7c18

Please sign in to comment.