Skip to content

Version 1.0

Choose a tag to compare

@JohnyCoolHD JohnyCoolHD released this 11 Aug 22:47
· 30 commits to main since this release
aa8f0e0

A RetroDisc release contains the original game files, a manifest, a launcher and optionally a preconfigured Wine/Proton prefix.

📦 Create a RetroDisc

Create the following structure:

MyGame/
├── RetroDisc
├── manifest.json
├── gamedata/
└── pfx/              # optional ( unless the game has compatibility issues without it )

1. Add the game files

Before installing the game, start RetroDiscInstaller.sh from the terminal.

Install the game using the installation wizard.

Skip this step if the game does not require files outside of its normal installation directory.

Put the original game files into gamedata/.

The executable path in the manifest must point inside this directory.

Example:

gamedata/
├── Game.exe
├── data/
└── ...

2. Create/Edit manifest.json

{
    "game": {
        "id": "my-game",
        "name": "My Game",
        "executable": "gamedata/Game.exe"
    },
    "runtime": "proton"
}

Supported runtimes:

wine
proton

3. Configure the game

Start ConfigSetup.sh from the terminal and create the configuration for your game.

The configuration contains the runtime settings, launch arguments, environment variables and compatibility options required by the game.

An optional preconfigured pfx/ can be included with the release.

The bundled prefix itself is never modified.

▶️ Run

Make sure the required runtime dependencies are installed:

fuse-overlayfs
fuse3
util-linux

Then install Wine or Steam/Proton according to the selected runtime.

Start the release with:

./RetroDisc

RetroDisc creates a temporary writable overlay for gamedata/, uses the persistent prefix and launches the game.

The original gamedata/ remains unchanged.

💾 Persistent Data

RetroDisc stores writable data outside the release:

~/Games/RetroDisc/<gameId>/

This includes saves, configuration, registry changes and the persistent Wine/Proton prefix.
The original RetroDisc release remains portable and unchanged.