Find a file
2024-10-31 15:41:16 -07:00
floppy.patch Update floppy patch 2024-01-31 08:28:40 -08:00
mame.ini Sync 0.261 2023-11-28 11:10:28 -08:00
mame16x16.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
mame24x24.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
mame32x32.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
mame48x48.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
mame64x64.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
mame128x128.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
mame256x256.png Fix up make command line, add some additional logo sizes 2022-08-31 08:25:33 -07:00
org.mamedev.MAME.desktop Add more detail to .desktop, need to add home dir to .yaml to create ini files, remove unneeded icons 2022-06-29 13:36:53 -07:00
org.mamedev.MAME.metainfo.xml Sync 0.271 2024-10-31 10:30:05 -07:00
org.mamedev.MAME.yaml Try Qt 6 again 2024-10-31 13:50:33 -07:00
README.md Remove ini patch 2022-08-31 14:12:02 -07:00
sound.patch Avoid a null deref in sound output 2022-10-18 13:04:36 -07:00
ym3802.patch Patch out of bound access on ym3802 midi 2023-01-24 17:16:31 -08:00

Flatpak

This is a method for distributing MAME using the Flatpak format. The main reason for this is on locked down systems that only allow sandboxed user applications.

Security

The use of Flatpak here is not intended to secure MAME or provide any isolation from the rest of your system. MAME requires access to many of your systems resources including, but not limited to, devices for controllers, X11 sessions, filesystems writable for configuration and readable for data files, networking, and audio. The Flatpak provided sandbox must be opened up in many areas for MAME to function properly.

Building

build_icons.sh will download the logo from the https://www.mamedev.org site and resize it to various sizes to use as an icon.

build_local.sh will invoke the flatpak-builder application to compile MAME and generate a Flatpak package.

org.mamedev.MAME.yaml is the main Flatpak manifest that includes build and install information.

Manifest

An explanation for some of the options included in the `org.mamedev.MAME.yaml' manifest file.

org.kde.Platform is used for its Qt support, required to build the MAME debugger.

--device=all added to allow various input devices, controllers, etc.

--persist=.mame writable location used for cfg, diff, nvram, etc.

--filesystem=host:ro primarily to be used for external data, roms, samples, etc.

Configuring

The default ini paths include the home ~/.mame directory and two relative paths '.' and 'ini'. The relative paths are not helpful inside the sandbox, and the ~/.mame contents shouldn't be overwritten with each new MAME release. Instead the default ini search path is patched to $HOME/.mame;/app/share/mame/ini. This will allow a default base ini in /app/share/mame/ini/mame.ini and can be overridden in ~/.mame/mame.ini.