A nix flake used for managing automatic (upon-connection) RCM payload injection for the Nintendo Switch. Inspired by nixtendo-switch, this project focuses only on payload injection with the goal of giving the user the freedom to choose their own payload to inject.
- Add this flake to your configuration:
- add nswitch-rcm-nix under
inputs
:
inputs = { # your other flake inputs, such as nixpkgs, here ... nswitch-rcm-nix.url = github:Swarsel/nswitch-rcm-nix; };
- add the nswitch-rcm module in your
output
configuration:
modules = [ # your configuration.nix and others here ... nswitch-rcm-nix.nixosModules.nix ];
- add nswitch-rcm-nix under
- Add the following to your
configuration.nix
:
services.nswitch-rcm = {
enable = true;
package = # package with payload of your choice
};
services.nswitch-rcm = {
enable = true;
package = (pkgs.fetchurl {
url = "https://github.com/Atmosphere-NX/Atmosphere/releases/download/1.3.2/fusee.bin";
hash = "sha256-5AXzNsny45SPLIrvWJA9/JlOCal5l6Y++Cm+RtlJppI=";
});
};
- Make sure your Switch is in RCM mode (my recommendation is to use AutoRCM)
- Make sure your PC has a connection to the Switch (use
dmesg --follow
to check what happens upon plugin) - The specified payload should be injected to the Switch as soon as the connection is established.