From 248a510fd0c7959bceafa63347edad5c647b4df5 Mon Sep 17 00:00:00 2001 From: Jason Flatt Date: Mon, 3 Apr 2023 04:57:55 -0700 Subject: [PATCH] Supermodel --- .gitmodules | 3 + README.md | 17 ++++++ com.supermodel3.Supermodel.metainfo.xml | 37 ++++++++++++ com.supermodel3.Supermodel.yaml | 38 ++++++++++++ ldflags.patch | 78 +++++++++++++++++++++++++ shared-modules | 1 + 6 files changed, 174 insertions(+) create mode 100644 .gitmodules create mode 100644 README.md create mode 100644 com.supermodel3.Supermodel.metainfo.xml create mode 100644 com.supermodel3.Supermodel.yaml create mode 100644 ldflags.patch create mode 160000 shared-modules 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/README.md b/README.md new file mode 100644 index 0000000..8f4985d --- /dev/null +++ b/README.md @@ -0,0 +1,17 @@ +To copy configuration: +``` +mkdir -p ~/.supermodel/Analysis/ +mkdir -p ~/.supermodel/Assets/ +mkdir -p ~/.supermodel/Config/ +mkdir -p ~/.supermodel/Log/ +mkdir -p ~/.supermodel/NVRAM/ +mkdir -p ~/.supermodel/Saves/ +mkdir -p ~/.supermodel/Screenshots/ +cp -r ~/.local/share/flatpak/app/com.supermodel3.Supermodel/current/active/files/Assets ~/.supermodel/ +cp ~/.local/share/flatpak/app/com.supermodel3.Supermodel/current/active/files/Config/Games.xml ~/.supermodel/Config/ +cp -n ~/.local/share/flatpak/app/com.supermodel3.Supermodel/current/active/files/Config/Supermodel.ini ~/.supermodel/Config/ +``` +To run from a terminal: +``` +flatpak run com.supermodel3.Supermodel +``` diff --git a/com.supermodel3.Supermodel.metainfo.xml b/com.supermodel3.Supermodel.metainfo.xml new file mode 100644 index 0000000..da30b69 --- /dev/null +++ b/com.supermodel3.Supermodel.metainfo.xml @@ -0,0 +1,37 @@ + + + com.supermodel3.Supermodel + CC0-1.0 + GPL-3.0-or-later + Supermodel + + A Sega Model 3 Arcade Emulator. + + +

+ Supermodel emulates Sega's Model 3 arcade platform, + allowing you to play a number of ground-breaking arcade classics on your PC. + It uses OpenGL and the SDL library, and can run on Windows, Linux, and Mac OS X. + The source code is freely available under the terms of the GNU General Public License. +

+
+ + Game + ArcadeGame + Emulator + + https://www.supermodel3.com + com.supermodel3.Supermodel.desktop + + + + + supermodel + + + + + https://www.supermodel3.com/Images/Dayto2PE_InYourFace_1024x723_Low.jpg + + +
diff --git a/com.supermodel3.Supermodel.yaml b/com.supermodel3.Supermodel.yaml new file mode 100644 index 0000000..ab15e7b --- /dev/null +++ b/com.supermodel3.Supermodel.yaml @@ -0,0 +1,38 @@ +id: com.supermodel3.Supermodel +runtime: org.freedesktop.Platform +runtime-version: "22.08" +sdk: org.freedesktop.Sdk +command: supermodel +separate-locales: false +finish-args: + - --device=all + - --persist=.supermodel + - --filesystem=host:ro + - --share=network + - --share=ipc + - --socket=fallback-x11 + - --socket=pulseaudio + - --socket=wayland + - --allow=bluetooth +modules: + - shared-modules/glu/glu-9.json + + - name: supermodel + buildsystem: simple + build-commands: + - make + -f Makefiles/Makefile.UNIX + NET_BOARD=1 + - install -Dm 0755 bin/supermodel ${FLATPAK_DEST}/bin/supermodel + - install -Dm 0644 ${FLATPAK_ID}.metainfo.xml ${FLATPAK_DEST}/share/metainfo/${FLATPAK_ID}.metainfo.xml + - cp -r Assets ${FLATPAK_DEST} + - cp -r Config ${FLATPAK_DEST} + sources: + - type: git + url: https://github.com/trzy/Supermodel.git + branch: master + commit: 6993dfcfb0ebe369f246ff50e3669d4557a527da + - type: file + path: com.supermodel3.Supermodel.metainfo.xml + - type: patch + path: ldflags.patch diff --git a/ldflags.patch b/ldflags.patch new file mode 100644 index 0000000..15021bb --- /dev/null +++ b/ldflags.patch @@ -0,0 +1,78 @@ +diff --git a/Makefiles/Makefile.UNIX b/Makefiles/Makefile.UNIX +index 1e48361..1e7577d 100644 +--- a/Makefiles/Makefile.UNIX ++++ b/Makefiles/Makefile.UNIX +@@ -27,13 +27,13 @@ + + + ############################################################################### +-# Build Options +-############################################################################### +- +-DELETE = rm -d -r -f +- +- +-############################################################################### ++# Build Options ++############################################################################### ++ ++DELETE = rm -d -r -f ++ ++ ++############################################################################### + # Platform Configuration + # + # Edit library and include paths as needed. +@@ -53,29 +53,29 @@ LD = gcc + + # + # SDL +-# +- +-SDL2_CFLAGS = `sdl2-config --cflags` +-SDL2_LIBS = `sdl2-config --libs` +- +-# +-# UNIX-specific +-# +- +-PLATFORM_CXXFLAGS = $(SDL2_CFLAGS) -O3 +-PLATFORM_LDFLAGS = $(SDL2_LIBS) -lGL -lGLU -lz -lm -lstdc++ -lpthread -lSDL2_net +- +- +-############################################################################### +-# Core Makefile +-############################################################################### ++# ++ ++SDL2_CFLAGS = `sdl2-config --cflags` ++SDL2_LIBS = `sdl2-config --libs` ++ ++# ++# UNIX-specific ++# ++ ++PLATFORM_CXXFLAGS = $(SDL2_CFLAGS) -O3 ++PLATFORM_LDFLAGS = $(SDL2_LIBS) -lGL -lGLU -lz -lm -lstdc++ -lpthread -lSDL2_net -L/app/lib ++ ++ ++############################################################################### ++# Core Makefile ++############################################################################### + + PLATFORM_SRC_FILES = \ + Src/OSD/Unix/FileSystemPath.cpp +- +-include Makefiles/Rules.inc +- +-clean: +- $(SILENT)echo Cleaning up \"$(BIN_DIR)\" and \"$(OBJ_DIR)\"... +- $(SILENT)$(DELETE) $(BIN_DIR) +- $(SILENT)$(DELETE) $(OBJ_DIR) ++ ++include Makefiles/Rules.inc ++ ++clean: ++ $(SILENT)echo Cleaning up \"$(BIN_DIR)\" and \"$(OBJ_DIR)\"... ++ $(SILENT)$(DELETE) $(BIN_DIR) ++ $(SILENT)$(DELETE) $(OBJ_DIR) diff --git a/shared-modules b/shared-modules new file mode 160000 index 0000000..a2441b9 --- /dev/null +++ b/shared-modules @@ -0,0 +1 @@ +Subproject commit a2441b964afefd8cd1cebcdf562c7878670daf42