mirror of
https://github.com/lutris/lutris
synced 2024-09-05 23:46:21 +00:00
540 lines
16 KiB
YAML
540 lines
16 KiB
YAML
No one knows what this file does or how to use it
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$schema: "http://json-schema.org/draft-07/schema"
|
|
$comment: "As per https://github.com/lutris/lutris/blob/bd92a295a77484c2ea1f6ef6140d25057f24965a/docs/installers.rst"
|
|
required:
|
|
- name
|
|
- game_slug
|
|
- version
|
|
- slug
|
|
- runner
|
|
- script
|
|
description: Lutris install script
|
|
type: object
|
|
properties:
|
|
name:
|
|
description: Name of the game, should be surrounded in quotes if containing special characters.
|
|
type: string
|
|
game_slug:
|
|
description: Game identifier on the Lutris website
|
|
type: string
|
|
version:
|
|
description: Name of the installer
|
|
type: string
|
|
slug:
|
|
description: Installer identifier
|
|
type: string
|
|
require-binaries:
|
|
description: Additional binaries
|
|
type: string
|
|
requires:
|
|
description: Mods and add-ons
|
|
type: string
|
|
extends:
|
|
description: Extensions / patches
|
|
type: string
|
|
install_complete_text:
|
|
description: Custom end of install text
|
|
type: string
|
|
runner:
|
|
description: The runner to be used by this game
|
|
type: string
|
|
enum:
|
|
- ags
|
|
- atari800
|
|
- browser
|
|
- citra
|
|
- desmume
|
|
- dgen
|
|
- dolphin
|
|
- dosbox
|
|
- frotz
|
|
- fsuae
|
|
- hatari
|
|
- jzintv
|
|
- libretro
|
|
- linux
|
|
- mame
|
|
- mednafen
|
|
- mupen64plus
|
|
- o2em
|
|
- openmsx
|
|
- osmose
|
|
- pcsx2
|
|
- pcsxr
|
|
- ppsspp
|
|
- reicast
|
|
- rpcs3
|
|
- scummvm
|
|
- snes9x
|
|
- steam
|
|
- winesteam
|
|
- stella
|
|
- vice
|
|
- virtualjaguar
|
|
- web
|
|
- wine
|
|
- yuzu
|
|
- zdoom
|
|
script:
|
|
description: Main script
|
|
type: object
|
|
additionalProperties: true
|
|
required:
|
|
- game
|
|
- installer
|
|
patternProperties:
|
|
"":
|
|
type: object
|
|
properties:
|
|
game:
|
|
type: object
|
|
description: Game configuration directives
|
|
properties:
|
|
exe:
|
|
type: string
|
|
description: Main game executable
|
|
main_file:
|
|
type: string
|
|
description: Emulator ROM or disk file
|
|
args:
|
|
type: string
|
|
description: Additional command arguments
|
|
working_dir:
|
|
type: string
|
|
description: Working directory to use when executing the executable
|
|
launch_configs:
|
|
type: array
|
|
description: A list of mutiple related executable configurations
|
|
additionalItems: false
|
|
items:
|
|
type: object
|
|
required:
|
|
- name
|
|
- exe
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Identifier to show in the launcher dialog
|
|
command:
|
|
type: string
|
|
description: Full bash command to execute, overriding default game command entirely
|
|
exe:
|
|
type: string
|
|
description: Main game executable, to combine with the command
|
|
args:
|
|
type: string
|
|
description: Additional command arguments
|
|
working_dir:
|
|
type: string
|
|
description: Working directory to use when executing the executable
|
|
arch:
|
|
type: string
|
|
description: The architecture of a Wine prefix
|
|
prefix:
|
|
type: string
|
|
description: Path to the Wine prefix
|
|
run_without_steam:
|
|
type: boolean
|
|
description: Activate the DRM free mode and no not launch Steam when the game runs
|
|
steamless_binary:
|
|
type: string
|
|
description: Path of the game executable if it's able to run without the Steam client
|
|
path:
|
|
type: string
|
|
description: Location of the game files
|
|
files:
|
|
type: array
|
|
description: Fetch required files
|
|
items:
|
|
anyOf:
|
|
- type: string
|
|
description: File URL
|
|
- type: object
|
|
properties:
|
|
url:
|
|
type: string
|
|
description: File URL
|
|
filename:
|
|
type: string
|
|
description: The name of the file's saved copy
|
|
referer:
|
|
type: string
|
|
description: File referer domain
|
|
installer:
|
|
type: array
|
|
description: Installation script
|
|
additionalItems: false
|
|
items:
|
|
additionalProperties: false
|
|
type: object
|
|
properties:
|
|
insert-disc:
|
|
type: object
|
|
description: "'Insert disc' dialog"
|
|
properties:
|
|
requires:
|
|
description: Required disk
|
|
type: string
|
|
required:
|
|
- requires
|
|
move:
|
|
type: object
|
|
description: Move files and directories
|
|
properties:
|
|
src:
|
|
description: Source file ID or path
|
|
type: string
|
|
dst:
|
|
description: Destination path
|
|
type: string
|
|
required:
|
|
- src
|
|
- dst
|
|
merge:
|
|
type: object
|
|
description: Copy and merge directories
|
|
properties:
|
|
src:
|
|
description: Source file ID or path
|
|
type: string
|
|
dst:
|
|
description: Destination path
|
|
type: string
|
|
required:
|
|
- src
|
|
- dst
|
|
extract:
|
|
type: object
|
|
description: Copy and merge directories
|
|
properties:
|
|
file:
|
|
description: Source file ID or path
|
|
type: string
|
|
dst:
|
|
description: Destination path
|
|
type: string
|
|
format:
|
|
description: Archive's type
|
|
type: string
|
|
enum:
|
|
- tgz
|
|
- tar
|
|
- zip
|
|
- 7z
|
|
- rar
|
|
- txz
|
|
- bz2
|
|
- gzip
|
|
- deb
|
|
- exe
|
|
- gog
|
|
required:
|
|
- file
|
|
- dst
|
|
chmodx:
|
|
type: string
|
|
description: Path to a file to Make executable
|
|
execute:
|
|
type: object
|
|
description: Executes a file
|
|
properties:
|
|
command:
|
|
description: Full bash command to execute
|
|
type: string
|
|
file:
|
|
description: File ID or a path to file
|
|
type: string
|
|
args:
|
|
description: Executable arguments
|
|
type: string
|
|
terminal:
|
|
description: Execute in a new terminal window
|
|
type: boolean
|
|
exclude_processes:
|
|
description: Space-separated list of processes to exclude from being monitored when determining if the execute phase finished
|
|
type: string
|
|
include_processes:
|
|
description: Space-separated list of processes to monitor when determining if the execute phase finished
|
|
type: string
|
|
disable_runtime:
|
|
description: Run a process without Lutris runtime
|
|
type: boolean
|
|
env:
|
|
$ref: "#/definitions/env"
|
|
oneOf:
|
|
- required:
|
|
- file
|
|
- args
|
|
- required:
|
|
- command
|
|
write_file:
|
|
type: object
|
|
description: Write text files
|
|
properties:
|
|
content:
|
|
description: File content to write
|
|
type: string
|
|
file:
|
|
description: Destination file pathpath
|
|
type: string
|
|
required:
|
|
- content
|
|
- file
|
|
write_config:
|
|
type: object
|
|
description: Write into an INI type config file
|
|
properties:
|
|
merge:
|
|
description: Truncate the file
|
|
type: boolean
|
|
file:
|
|
description: Destination file pathpath
|
|
type: string
|
|
section:
|
|
description: INI section to write
|
|
type: string
|
|
key:
|
|
description: Property key
|
|
type: string
|
|
value:
|
|
description: Property value
|
|
type: string
|
|
data:
|
|
description: Free form data to write
|
|
type: object
|
|
oneOf:
|
|
- required:
|
|
- file
|
|
- section
|
|
- key
|
|
- value
|
|
- required:
|
|
- file
|
|
- data
|
|
write_json:
|
|
type: object
|
|
description: Write into an JSON type file
|
|
properties:
|
|
merge:
|
|
description: Update the file
|
|
type: boolean
|
|
file:
|
|
description: Destination file pathpath
|
|
type: string
|
|
data:
|
|
description: Free form data to write
|
|
type: object
|
|
required:
|
|
- file
|
|
- data
|
|
task:
|
|
type: object
|
|
description: Run a task provided by the runner
|
|
properties:
|
|
name:
|
|
type: string
|
|
enum:
|
|
- create_prefix
|
|
- wineexec
|
|
- winetricks
|
|
- eject_disk
|
|
- set_regedit
|
|
- delete_registry_key
|
|
- set_regedit_file
|
|
- winekill
|
|
- dosexec
|
|
prefix:
|
|
type: string
|
|
description: The prefix path
|
|
arch:
|
|
type: string
|
|
description: Architecture of the prefix
|
|
overrides:
|
|
type: object
|
|
description: WINE DLL overrides
|
|
additionalProperties: false
|
|
patternProperties:
|
|
"":
|
|
type: string
|
|
install_gecko:
|
|
type: boolean
|
|
description: Enable installing Gecko
|
|
install_mono:
|
|
type: boolean
|
|
description: Enable installing Mono
|
|
executable:
|
|
type: string
|
|
description: Wine executable id or path
|
|
args:
|
|
type: string
|
|
description: Optional command arguments
|
|
blocking:
|
|
type: boolean
|
|
description: Suppress threading
|
|
description:
|
|
type: string
|
|
description: A message be shown to the user during the execution of the task
|
|
working_dir:
|
|
type: string
|
|
description: Working directory
|
|
exclude_processes:
|
|
type: string
|
|
description: Space-separated list of processes to exclude from being monitored when determining if the execute phase finished
|
|
include_processes:
|
|
type: string
|
|
description: Space-separated list of processes to monitor when determining if the execute phase finished
|
|
env:
|
|
$ref: "#/definitions/env"
|
|
app:
|
|
type: string
|
|
description: Space-separated list of winetricks apps to run
|
|
silent:
|
|
type: boolean
|
|
description: Run in silent mode
|
|
key:
|
|
type: string
|
|
description: Registry key
|
|
value:
|
|
type: string
|
|
description: Registry value
|
|
type:
|
|
type: string
|
|
description: Registry value type
|
|
filename:
|
|
type: string
|
|
description: Registry file
|
|
config_file:
|
|
type: string
|
|
description: File id or path to .conf file
|
|
exit:
|
|
type: boolean
|
|
description: Exit DOSBox when the executable is terminated
|
|
input_menu:
|
|
type: object
|
|
description: Display a drop-down menu with options
|
|
properties:
|
|
description:
|
|
type: string
|
|
description: Dropdown label
|
|
id:
|
|
type: string
|
|
description: $INPUT_<id> reference key
|
|
options:
|
|
type: array
|
|
description: "Indented list of `value: label` lines to show"
|
|
items:
|
|
anyOf:
|
|
- type: string
|
|
preselect:
|
|
type: string
|
|
description: Default selected value
|
|
required:
|
|
- description
|
|
- options
|
|
oneOf:
|
|
- required: [ insert-disk ]
|
|
- required: [ move ]
|
|
- required: [ merge ]
|
|
- required: [ extract ]
|
|
- required: [ chmodx ]
|
|
- required: [ execute ]
|
|
- required: [ write_file ]
|
|
- required: [ write_config ]
|
|
- required: [ write_json ]
|
|
- required: [ task ]
|
|
- required: [ input_menu ]
|
|
system:
|
|
type: object
|
|
description: System configuration directives
|
|
properties:
|
|
env:
|
|
$ref: "#/definitions/env"
|
|
terminal:
|
|
type: boolean
|
|
description: Run the game in a terminal if the game is a text based one
|
|
single_cpu:
|
|
type: boolean
|
|
description: Run the game on a single CPU core
|
|
pulse_latency:
|
|
type: boolean
|
|
description: Set PulseAudio latency to 60 msecs
|
|
use_us_layout:
|
|
type: boolean
|
|
description: Change the keyboard layout to a standard US one while the game is running
|
|
wine:
|
|
$ref: "#/definitions/wine-runner"
|
|
|
|
definitions:
|
|
env:
|
|
description: Environment variables
|
|
type: object
|
|
patternProperties:
|
|
"":
|
|
type: string
|
|
wine-runner:
|
|
type: object
|
|
description: Wine runner configuration directives
|
|
properties:
|
|
version:
|
|
type: string
|
|
description: WINE version override
|
|
Desktop:
|
|
type: boolean
|
|
description: Run the game in a Wine virtual desktop
|
|
WineDesktop:
|
|
type: string
|
|
description: The resolution of the Wine virtual desktop
|
|
examples: [ "1024x768" ]
|
|
dxvk:
|
|
type: boolean
|
|
description: Enable DXVK
|
|
esync:
|
|
type: boolean
|
|
description: Enable ESync
|
|
overrides:
|
|
type: array
|
|
description: Overrides for Wine DLLs
|
|
additionalItems: false
|
|
items:
|
|
type: object
|