Hacker News new | past | comments | ask | show | jobs | submit login
Horizon Linux: arm64 Linux patched to run programs for the Nintendo Switch (github.com/kentjhall)
386 points by jdright on Aug 15, 2022 | hide | past | favorite | 32 comments



Whoa, this is awesome! Looks like the author posted a full writeup (with videos) on Reddit: https://www.reddit.com/r/linux_gaming/comments/wnuh3u/introd...


Fantastic work and write up. I was stunned when I got to this part:

> Given the significance of the commercial game milestone, and that I’m starting my first job on Monday,

I expect this developer has a very bright career ahead of them. Amazing work.


Absolutely agree. On the other hand, I feel like such an underachiever each time I see something as impressive as this. I just lost another weekend on.. what exactly?


I read somewhere that doing this is like comparing your average day with someone else's best day.

It's great to be inspired by someone's work, but you should not beat yourself up for not doing what they are doing.


we are all capable of great things, when everything lines up.

for some, that happens quite often. for others, never.


> as (I believe) is the case is for the Mesosphere project

Just to clarify, the developer is correct - Mesosphere runs natively on the switch, and now has 1:1 compatibility with Nintendo's kernel. It can run every commercial game. There have been some intents/attempts to port mesosphere to non-switch hardware, but I don't think anyone has got meaningful results there, yet.


Do those videos work for you? I just get spinners when opening it on Chrome on linux.

I don't browse reddit too often, so I don't know if this is a common thing with reddit videos? can anyone else chime in and let me know whether this is a me-problem or something common?


I had this problem as well. Author later in the comments replied with youtube links:

* https://www.youtube.com/watch?v=b-eZsclPq64 * https://www.youtube.com/watch?v=sV_CbRsnxF4 * https://www.youtube.com/watch?v=vlvvlTfSNj8


The original post in which the two videos were posted was deleted. It's not a you-problem, don't worry.


I think the Linux kernel is getting support for something like how this works, but letting userspace emulate the syscalls, for Wine:

https://lwn.net/Articles/824380/

Probably that mechanism could mean this project could work on mainline Linux at some point.


Imagine how angry Nintendo is going to be when they realize Linux has mainline support for their platform and is therefore directly competing with their console.


Its funny that both of these things happened at almost the same time but reminds me of the chat found earlier today https://news.ycombinator.com/item?id=32458744 which has some great comments regarding this and the (g)libc relationship.

Thanks for also pointing this out.


It’s normal for several persons scattered around the globe to solve the same problem at the same time with neither of them knowing about it.

I guess it’s one of the reasons we got patents and the like.


It's a little funny that after all this brilliance, he's still limited by Apple.

Either way, remarkable. I truly hope Nintendo leaves him alone though..


It's a bit of a shame the author didn't dig more into it, I am pretty sure MoltenVk gives you a reasonably up-to-date Vulkan on Mac, and I've seen progress lately on zink-over-MoltenVk, which should enable OpenGL 4.6 on macos.

On the other hand, that's not really the point of this work.


> It's a bit of a shame the author didn't dig more into it, I am pretty sure MoltenVk gives you a reasonably up-to-date Vulkan on Mac, and I've seen progress lately on zink-over-MoltenVk, which should enable OpenGL 4.6 on macos.

Whilst true I don't think there's any way to use that to get better graphics support in a Linux VM - for that you're going to be at the mercy of either VMWare or Parallels. QEMU doesn't do 3D acceleration on macOS hosts AFAIK.


The android emulator supports Vulkan 1.1. I wonder if there's a way to use that to run a linux VM with GPU acceleration.


> I truly hope Nintendo leaves him alone though..

Given the Oracle vs Google lawsuit about the Java API, and that all he has done is reimplement an API, surely there is nothing Nintendo can do?


Nintendo abused the DMCA system to take down videos of Switch emulation before. They've hired private investigators to go after and intimidate modders.

Their legal team knows that with their excessive legal funds they don't need to care about what the law allows them to do, their lawyers and henchmen can simply bleed their targets dry and make them give up.

They're a terrible company that happens to make some fun games.


Nintendo is still a multi-billion dollar company, they can afford to sue him and burn through his time and money even when they know they're wrong.


We'll have to wait until Asahi Linux is mature enough


Yeah, or you could use an open platform and save yourself the trouble.


Is there an open platform with an ARM processor that has the same caliber of hardware performance / efficiency of M1? If so, I'd rather use that with Linux instead of Apple's locked-down hardware. But as far as I can tell no one except Apple can make performant & light laptops that run cool without a fan.


There are no true open platforms. And we are trending towards them being more closed, with Apple leading the charge. For the good of yourself, and future generations, you should not financially support companies that lock things down.

Especially not for pointless goal posts/metrics like whether or not it has a fan.


You think heat and power management is a pointless goal?

Technology should be made as a contribution to humanity.

But it should also solve problems and make lives easier for its users. A thin and light laptop that consumes a fraction of power and generates a fraction of heat does exactly that.

I love FOSS for its contributions to humanity and its capability to be practical. But open hardware is often not. It's usually terribly expensive, very inconvenient or simply badly executed.

At some point, being blind to the advancements from a closed platform becomes being blind to people's needs and ending up lost in a cloud of ideology.


FOSS is great because great people supported it even when it did have, figuratively speaking, a big fan.


Actually that's the opposite.

Back then, an advantage of Linux against other Unixes was being able to run in a domestic IBM PC Clone. Which, at the time, was the "small fan computer" at least compared to big mainframes running commercial Unix


I miss those days. I was quite young. Those IBM PC clones still look like the future to me. Heh. Cheers


What are the implications of this? Can I now run breath of the wild on my m1?


Yes, you can run it.

Is it playable? No, it probably won't even load the main menu without additional work. This is alpha level software.


As I underdtood it, not yet, but possibly at some point in the future! See the Reddit thread someone else linked, the dev goes into some detail on the current state.


Seems like the only way this will work for the devs original use case is with Asahi in the not so near future.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: