All Projects → ChimeraOS → chimera

ChimeraOS / chimera

Licence: MIT License
A web interface for managing Steam remotely

Programming Languages

python
139335 projects - #7 most used programming language
Smarty
1635 projects
shell
77523 projects
CSS
56736 projects

Projects that are alternatives of or similar to chimera

Steam Buddy
A web interface for managing Steam remotely
Stars: ✭ 61 (-46.02%)
Mutual labels:  steam, emulation
EmuELEC
EmuELEC, retro emulation for Amlogic devices. Based on CoreELEC. https://emuelec.org or join us on Discord: https://discord.gg/cbgtJTu
Stars: ✭ 1,575 (+1293.81%)
Mutual labels:  emulation, retroarch
plausible
Hybrid native + web app for Plausible Analytics
Stars: ✭ 47 (-58.41%)
Mutual labels:  flatpak, flathub
meta-package-manager
🎁 a wrapper around all package managers
Stars: ✭ 277 (+145.13%)
Mutual labels:  steam, flatpak
retropie-overlays
Console overlays set for Retropie & Recalbox
Stars: ✭ 54 (-52.21%)
Mutual labels:  emulation, retroarch
retro-home
Retro Home; your home for retro-gaming 🕹
Stars: ✭ 76 (-32.74%)
Mutual labels:  emulation, retroarch
FEX
A fast usermode x86 and x86-64 emulator for Arm64
Stars: ✭ 650 (+475.22%)
Mutual labels:  emulation
retro-computing
🤓🕹💾 This hobby project contains software implementations of old microprocessors and complete computer systems. I'm very interested in retrocomputing and this is how I learn about the inner workings of these old, classic and amazing computers and game consoles.
Stars: ✭ 15 (-86.73%)
Mutual labels:  emulation
gm 8bit
Audio interception utils for garry's mod
Stars: ✭ 28 (-75.22%)
Mutual labels:  steam
mupen64plus-input-sdl
Input plugin for Mupen64Plus v2.0 project using SDL. This is derived from the original Mupen64 blight_input plugin.
Stars: ✭ 36 (-68.14%)
Mutual labels:  emulation
SteamDepotDownloader-GUI
A useful tool with GUI to download depot from steam.
Stars: ✭ 132 (+16.81%)
Mutual labels:  steam
m2o-reborn
Original Mafia2 Multiplayer modification
Stars: ✭ 31 (-72.57%)
Mutual labels:  steam
MonoGame.Forms
MonoGame.Forms is the easiest way of integrating a MonoGame render window into your Windows Forms project. It should make your life much easier, when you want to create your own editor environment.
Stars: ✭ 183 (+61.95%)
Mutual labels:  steam
date-countdown
A date countdown applet
Stars: ✭ 15 (-86.73%)
Mutual labels:  flatpak
download-steam-reviews
Download Steam reviews for any game. Available on PyPI.
Stars: ✭ 26 (-76.99%)
Mutual labels:  steam
SteaScree
SteaScree: Steam Cloud Screenshot Uploader
Stars: ✭ 140 (+23.89%)
Mutual labels:  steam
HammerPatch
Modification of Source Valve Hammer Editor to fix some issues. Fixes brush vertex precision loss.
Stars: ✭ 49 (-56.64%)
Mutual labels:  steam
notion-game-list
Notion game list
Stars: ✭ 26 (-76.99%)
Mutual labels:  steam
MockDataStoreService
Emulation of Roblox's DataStoreService for seamless offline development & testing
Stars: ✭ 39 (-65.49%)
Mutual labels:  emulation
gdbstub
An ergonomic and easy-to-integrate implementation of the GDB Remote Serial Protocol in Rust, with full no_std support.
Stars: ✭ 158 (+39.82%)
Mutual labels:  emulation

What is it?

Chimera is a web app for remotely installing non-Steam software to your Linux based couch gaming system. It was primarily developed for ChimeraOS.

Features

  • install games from GOG, Epic Games Store, and Flathub
  • upload ROMs for supported console emulators
  • quick actions
    • adjust audio volume
    • toggle performance overlay (MangoHud)
    • toggle Steam overlay
    • load/save emulator state
    • toggle window mode (switch between SteamOS compositor and Openbox)
    • restart steam
    • suspend/reboot/power off
  • virtual keyboard
  • performance overlay configuration (MangoHud)
  • built-in FTP server
  • enable SSH access

Installation

On Arch Linux install the chimera package from the AUR. On ChimeraOS the package is pre-installed

After installing the chimera package, you must run the following commands to enable the web interface and then restart your system:

    systemctl --user enable chimera.service
    sudo systemctl enable chimera-proxy.service
    sudo systemctl enable chimera-proxy.socket

To have game patches be applied, you must also run the following command

   systemctl --user enable steam-patch

Usage

Web interface

You can connect to Chimera on ChimeraOS by opening a browser on another computer and entering chimeraos.local. If that does not work, then determine the IP address of your ChimeraOS system by looking at the network settings and enter it directly into your browser.

After installing any app, you must restart Steam for the newly installed application or game to appear in the Steam Big Picture UI.

To restart Steam you can open the menu, click on "Actions", then select the "Restart Steam".

Command line interface

If you use ChimeraOS or use steamos-compositor-plus and have chimera installed the required commands apply game tweaks and shortcuts to Steam will run automatically when the Steam session starts.

Otherwise, you will need to run chimera --update --tweaks while Steam is not running because any changes applied while Steam is running will be overwritten by Steam.

Configuration

For console platforms, Chimera creates shortcuts in Steam which launch each game with RetroArch. The default RetroArch configuration files are located under /usr/share/chimera/config/. You can override the default configuration by creating corresponding files under ~/.config/chimera/.

Screenshots

Platforms Flathub Actions

Feature Details

Install Flathub apps

Only a limited set of applications are available for immediate installation from Flathub. Many applications on Flathub have compatibility issues with the ChimeraOS compositor and require testing. The set of available applications will be expanded over time.

Chimera also looks in ~/.local/share/chimera/banners/flathub/ for a list of additionally allowed Flathub applications. Just add a PNG or JPEG image of size 460x215 or 920x430 with the Flathub app id as the file name under that directory. The Flathub app id can be obtained from the last part of the URL of the Flathub page for the application. For example, the id for Minecraft is com.mojang.Minecraft.

If the application works well please create a new issue with the app id and grid image so it can be added to the set of installable default apps.

Install games from the Epic Games Store

After logging in to your Epic account, you can download and install any of your games from the Epic Games Store.

Games are automatically started with Proton. Not all games will work.

Install games from GOG

After logging in to your GOG account, you can download and install any of your games from GOG.

GOG support currently has a few limitations:

  • No support for Dosbox based games
  • Installation progress is not displayed
  • Games cannot be updated directly

Upload ROMs

You can upload ROMs and banner images to Chimera and they will be added to Steam. The emulators are pre-configured and ready to play out of the box with almost any controller.

The following platforms are currently supported:

  • 32X (requires BIOS file)
  • 3DO (requires BIOS file)
  • Arcade
  • Atari 2600
  • Dreamcast
  • Game Boy
  • Game Boy Advance
  • Game Boy Color
  • GameCube
  • Game Gear
  • Genesis/Mega Drive
  • Jaguar
  • Master System
  • Neo Geo (requires BIOS file)
  • Nintendo
  • Nintendo 64
  • PlayStation (requires BIOS file)
  • PlayStation 2
  • PlayStation Portable
  • Saturn (requires BIOS file)
  • Sega/Mega CD (requires BIOS file)
  • Super Nintendo
  • TurboGrafx-16/PC Engine

More platforms will be added over time.

Supported formats

CD based platforms usually require use of CHD formatted game files, but may also work with ISO files. CHD files can be created easily from cue/bin format using the chdman tool.

BIOS files

BIOS files can be uploaded the same as games. However, the name of the shortcut should reflect the name of the file that the emulator is looking for without the file extension.

Also, select the "Hide" option so the BIOS file is not shown in Steam along with other games.

Command line details

Data updater (chimera --update)

This command updates the compatibility tool, tweaks and patch database from the chimera-data repo.

Steam Compat Tools (chimera --compat)

This command generates stub files for compatibility tools (currently various versions of Proton GE), which are then downloaded automatically when a game that utilizes the tool is first run.

Steam Config (chimera --config)

Configures Steam games according to the automatically downloaded tweaks database, or the local override file if found at ~/.config/steam-tweaks.yaml.

Extends Valve's Steam Play/Proton whitelist, specifying the compatibility tool, launch options and whether Steam Input is enabled on a per-game basis. Many games are already configured to work out of the box, with more being added over time. Please help by testing the games you own and submitting your configurations.

Game tweak entry format

  • compat_tool: the compatibility tool to be used for the specified game, e.g. proton_42, steamlinuxruntime
  • compat_config: the configuration for the compatibility tool specified, e.g. for proton: d9vk, noesync, etc; see the Proton docs for the full list of available options
  • launch_options: the launch options to be used
  • steam_input: a value of enabled will force the use of Steam Input for the specified game

Example entry

"321040":
  compat_tool: proton_411
  compat_config: noesync
  launch_options: MY_VARIABLE=1 %command%
  steam_input: enabled

Each game is specified by its Steam app id. Note that the app id MUST be quoted.

Steam Shortcuts (chimera --shortcuts)

Reads one or more YAML formatted shortcut definition files stored under ~/.local/share/chimera/shortcuts/ and adds the shortcuts to all available Steam accounts. NOTE: any existing shortcut data will be lost and replaced with shortcuts specified in the shortcut definition files.

Single shortcut per file example

name: Firefox                   # name of the shortcut as it will appear in Steam (required)
cmd: firefox                    # the command to execute (required)
dir: /full/path/to/working/dir  # the directory from which to execute the command
params: github.com              # any parameters to invoke the command with
banner: /path/to/image.png      # the horizontal banner image to use (460x215)
poster: /path/to/image.png      # the vertical poster image to use (600x900)
background: /path/to/image.png  # the background/hero image to use (1920x620)
logo: /path/to/image.png        # the logo image to use (overlayed on top of background image)
icon: firefox                   # small icon to show in Steam
compat_tool: proton_411         # use the given compatibility tool, useful for running Windows executables
compat_config: noesync          # use the given compatibility tool options
hidden: false                   # 'false' to show the shortcut in Steam, 'true' to hide it
tags:                           # a list of tags to be assigned to the shortcut in Steam
  - Browser
  - Custom Shortcut

Multiple shortcuts per file example

- name: Firefox
  cmd: firefox
  ...
- name: Chromium
  cmd: chromium
  ...
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].