Skip to content

9LogM/SuperRyubing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SuperRyubing

Portable Ryubing build with custom patches. Runs on Linux, Windows, and macOS.

Settings, saves, profiles, and installed firmware live in user/Ryujinx/ and carry over verbatim between OSes; drop the folder on a USB stick and your data follows.

Quick Start

You need git installed. build.cmd auto-downloads .NET 9 SDK on first run if it's not already on your PATH.

git clone https://github.com/9LogM/SuperRyubing.git
cd SuperRyubing
./build.cmd
./launch.cmd

build.cmd finishes with Build succeeded with N warning(s) and then Built <tag>. The warnings (IL2026, IL2067, etc.) are .NET trimmer notes from upstream Ryubing source about reflection that can't be statically analyzed. They don't indicate a problem.

First launch on each OS takes 10-30 seconds while caches are built; subsequent launches start in a couple of seconds.

Cross-OS Portability

build.cmd only builds the current platform's target (Linux builds linux-x64, Windows builds win-x64, macOS builds osx-arm64 or osx-x64 depending on the host). For the same install folder to launch on multiple OSes, run build.cmd once on each system; the resulting bin/ryubing/, bin/ryubing-win/, and bin/ryubing-mac/ coexist.

Upgrading

Edit VERSION to the new upstream Ryubing tag, then re-run build.cmd.

Layout

launch.cmd               polyglot bash/batch launcher
build.cmd                polyglot bash/batch builder (auto-installs .NET if missing)
VERSION                  the upstream tag to build; build.cmd reads it on every run and errors if missing
patches/                 git-apply'd against the upstream clone after each checkout
bin/ryubing/             Linux build, generated by build.cmd
bin/ryubing-win/         Windows build, generated by build.cmd
bin/ryubing-mac/         macOS build (Ryujinx.app bundle), generated by build.cmd
user/Ryujinx/            shared data dir, auto-created on first launch
_build/                  upstream source clone, local .NET SDK, intermediate artifacts

Patches

Five patches, all applied automatically by build.cmd. See patches/README.md for the full rationale behind each.

  • sdl2-gamepad-fix.patch: portable VID+PID gamepad matching, so controller bindings survive Linux ↔ Windows ↔ macOS on the same physical device.
  • portable-paths.patch: stores game-library, update, and DLC paths in user JSON as ${SR_ROOT}/... placeholders so they survive moves between drives or OSes. launch.cmd sets SR_ROOT to the install directory before exec.
  • nuget-feed-fix.patch: removes upstream's dead private GitLab NuGet feed; falls back to nuget.org for the affected packages.
  • obj-redirect.patch: redirects MSBuild's intermediate output to NTFS when SuperRyubing lives on a Btrfs/ext4 volume accessed from Windows via WinBtrfs/Ext2Fsd.
  • ldn-port-lease-renew-unit.patch: fixes the LDN P2P UPnP lease-renew loop firing at 50 ms instead of 50 s after the first renewal, which DoS'd the host's own router and dropped the room with "communication error" after ~2 minutes.

License

MIT, see LICENSE. Ryubing/Ryujinx © Ryujinx Team and Contributors. The included patches and scripts are provided under the same terms.

Nintendo Switch firmware, decryption keys, and game files are not included and are not distributed by this project.

About

Portable, cross-platform Ryubing build with bug fixes.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors