Home Camera Settings I installed Linux on my Nintendo Switch, because why wouldn’t I?

I installed Linux on my Nintendo Switch, because why wouldn’t I?

5
0


The Nintendo Switch is one of the most successful game consoles of all time, and with its successor finally unveiled, it’s finally time to bid farewell to the original. Or is it? Nintendo argues that you can just buy the original if the successor is too expensive, and with a massive library of fantastic games, it’s not as if the Switch is suddenly irrelevant. Plus, if you pick up one of the much older original Switch units, it’s really easy to install custom firmware… or Linux, I guess.

In an act that can only be described as an affront to god, I’ve installed Ubuntu on the Nintendo Switch. “Why?” I hear you ask. “Because I can”, is my response. You see, Nintendo and Nvidia left a pretty big hole in the bootROM of the original Nintendo Switch. With a little 3D-printed jig that goes into the Joy-Con rail (or you can even just use some tinfoil, if you’re feeling daring, though you can damage your Switch doing that), you can boot basically anything on this device. With the Switch 2 around the corner, I broke out my original Nintendo Switch from retirement to have some fun with it one last time.

But first, some backstory.

Nintendo screwed up with the original Switch

Or maybe it was Nvidia

switchroot LineageOS 15.1 Android on the Nintendo Switch

In 2018, an exploit chain was created by Katherine Temkin and “ReSwitched”, a hacking team focused on the Nintendo Switch, dubbed Fusée Gelée. Fusée Gelée is a coldboot exploit in the bootROM of the Nintendo Switch, and can’t be patched or modified once shipped. It’s the very first code that the console runs when powering on, and the exploit affected every single Tegra-X1 SoC at the time. You see, the Tegra-X1 had a USB recovery mode, which circumvented the rest of the system’s protections. While, in theory, any code sent through it should still have been validated as being officially signed, there were several errors in its security implementation that allowed for up to 65,535 bytes to be sent, resulting in a significant buffer overflow.

Affected consoles are unfixable, and the exploit on those devices has survived the entire lifespan of the Switch since its discovery. However, this was patched in later hardware revisions, including the Switch v2 (with better battery life), the Switch Lite, and the Switch OLED. My very first Nintendo Switch that I bought was a second-hand one that had a serial number in the range of exploitable devices, allowing me to install custom firmware, mods, and, yes, Linux too. It’s made possible by the Switchroot team, who also ported LineageOS (so, Android) to it as well.

Simply by partitioning your SD card, downloading the image of the OS you want to install, and sending the right payload, you can boot anything on the Switch. It’s all thanks to this particular exploit as well; it blows the Switch’s security wide open on boot, so that you can boot your own operating system instead. And because the Tegra-X1 is a well-documented Arm chip with official Linux drivers distributed by Nvidia, booting Linux and actually using it is surprisingly easy.

What can you do with Linux on the Nintendo Switch?

More games, more software

With Linux on the Nintendo Switch, there are actually very few limitations. You can play games, you can browse the web, and you can dock it and use it like a computer if you wish. It fully unlocks the console to do whatever you want, and you’re limited by the weaker performance of the Tegra X1 more than anything else. If you do install Linux, the first thing you should do is grab the L4T Megascript, a script that will handle installing and updating everything for you. Some Linux distributions come with it, and I’m using Ubuntu 24.04 Noble, maintained by theofficialgman. The instructions on getting it up and running are there, too.

There are a ton of applications you can install using this script, including Moonlight, Steam, Discord, VS Code, Box64, Dolphin Emulator, and so much more. There’s even a Pi Apps installer, which has its own set of programs that are designed to run on the Raspberry Pi. And if they run on the Raspberry Pi, you can be sure they’ll run on the Switch, too. I booted up Sunshine on my PC to test out Moonlight, and it works as well as you’d expect.

Half-Life-2-Nintendo-Switch-Moonlight

Unsurprisingly, it just works. Granted, I say that, but I didn’t have audio working. This has nothing to do with Moonlight, though. I just couldn’t get it working with my audio interface to output the audio correctly, so unless you have an audio interface too, it should just work for you. The controls are read as if they were a regular controller, and there was no noticeable latency whatsoever. Plus, because it’s all being processed on my PC, there are no frame drops or other issues. I can even play Cyberpunk 2077 right now on my Switch, which would have made for some incredible clickbait if I opted to put that in the title.

While I also didn’t test it this time around, I’ve used Linux in the past for a better GameCube emulation experience. The Legend of Zelda: Wind Waker might be coming to the Nintendo Switch 2, but it also runs perfectly on the Switch in Dolphin. For that, you’re better off using something like Lakka, which is a Linux-based OS that you can install on the Switch and is specifically for gaming.

Docker running on the Nintendo Switch

What I did test, though, was Docker support. Why wouldn’t I? I already turned my Steam Deck into a home server, and while I didn’t go all the way with the Switch, I did install Docker and get it working. There’s nothing here to suggest that you couldn’t deploy more complex application stacks on the Switch, and I’d love to see if it’s possible to get Proxmox running on it. There’s nothing off the shelf that I can see to run it, but wouldn’t that be fun if you could?

If you are going to run Linux on the Nintendo Switch, I suggest having a keyboard available to connect to it. While pressing the + button will bring up an on-screen keyboard, it’s not exactly convenient to type on such a small screen, especially if you’re going through the motions of installing and configuring Docker. Like I mentioned, you can use this as a PC, so you can just stick it in the dock and hook up your peripherals to it to make it more convenient.

Should you install Linux on the Nintendo Switch?

If you can, why not?

Overclock-Options-Nintendo-Switch-Linux

If you have an older, unpatched Nintendo Switch, why not? It’s easy to set up, it doesn’t damage the original operating system, and you can always repartition your microSD card back to normal if you’d prefer not to have space taken up by the ext4 Linux partition. However, it’s a fun little project that won’t take you too long to set up, and you might even have some uses for it if you play around with it.

While normally for this kind of thing, I’d say it’s “surprisingly” stable, but the truth is that Linux on the Tegra X1 is already supported. It’s not too surprising that it just works like this, but the fact that it’s not surprising is part of why it’s surprising. It’s not going to unlock a level of performance out of the Switch that suddenly makes it a powerful console, but you can enable overclocking options that at least improve the performance by a pretty big margin.

Now, if you’ll excuse me, I’m going to go play around with Docker on the Nintendo Switch some more. Because there’s no game more fun than Docker.



Source link

LEAVE A REPLY

Please enter your comment!
Please enter your name here