mirror of
https://github.com/gaseous-project/gaseous-server
synced 2026-04-21 13:27:16 +00:00
A game ROM manager, with a built in web based emulator using multiple sources to identify and provide metadata
|
Some checks failed
.NET / Build Dotnet (push) Has been cancelled
Pinned NuGet.Protocol at 6.12.5. [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/gaseous-project/gaseous-server/network/alerts). </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|---|---|---|
| .devcontainer | ||
| .github | ||
| .vscode | ||
| build | ||
| docs@1d5f0530f9 | ||
| gaseous-cli | ||
| gaseous-configurator | ||
| gaseous-lib | ||
| gaseous-processhost | ||
| gaseous-server | ||
| gaseous-server.Tests | ||
| installer | ||
| .gitignore | ||
| .gitmodules | ||
| CODE_OF_CONDUCT.md | ||
| Directory.Build.props | ||
| docker-compose-build.yml | ||
| Gaseous.sln | ||
| LICENSE | ||
| logo.png | ||
| README.MD | ||
Gaseous Server
This is the server for the Gaseous system. It offers ROM and title management, as well as some basic in browser emulation of those ROMs.
Version 1.7.0 and later contain user authentication, and can be exposed to the internet. However, it is recommended to not expose the server to the internet if you're not actively using it remotely, or if you have alternative means to access it remotely like a VPN.
While we do our best to stay on top of server security, if you expose the server to the internet you do so at your own risk.
Screenshots
Requirements
- MariaDB 11.1.2+ (preferred) or MySQL Server 8+
- These are the database versions Gaseous has been tested and developed against. Your mileage may vary with earlier versions.
- MariaDB is the preferred database server, while MySQL will continue to be supported for existing users (they should be interchangable).
- Note that due to the earlier database schema using MySQL specific features, moving to MariaDB from MySQL will require rebuilding your database from scratch. The "Library Scan" background task can be used to re-import all titles.
- ffmpeg
- Internet Game Database API Key. See: https://api-docs.igdb.com/#account-creation - only required when not using the Hasheous proxy
Installation
See https://github.com/gaseous-project/gaseous-server/wiki/Installation for installation instructions.
Adding Content
- (Optional) Import signatures: see https://github.com/gaseous-project/gaseous-server/wiki/Signatures
- Add ROMs: see https://github.com/gaseous-project/gaseous-server/wiki/Adding-ROMs
Friends of Gaseous
- EmulatorJS: A fantastic (and fast) Javascript based implementation of RetroArch, supporting a wide variety of platforms. Discord: https://discord.gg/6akryGkETU
- RomM: Another self hosted ROM manager. Discord: https://discord.gg/P5HtHnhUDH
Discord Server
Join our Discord server: https://discord.gg/Nhu7wpT3k4
Tests
Run unit tests locally:
dotnet test gaseous-server.Tests/gaseous-server.Tests.csproj
The test suite covers:
- JSON and binary response handling in
HTTPComms.SendRequestAsync Retry-Afterparsing and retry behavior- Cancellation token behavior


