CathyKMeow / rosetta-linux-asahi

Hacked RosettaLinux that runs on Asahi Linux
114 stars 20 forks source link

Where to apply the patch strings? #6

Open johansmolinski opened 12 months ago

johansmolinski commented 12 months ago

Would you please care to give a hint on how to find the correct place to put the patch strings, in case someone is trying to patch a more recent version of the package than the one provided?

jnoxon commented 10 months ago

I was wondering this too. It might at least be worth mentioning which version/hash the patch applies to; With Rosetta 289.7, it seemed to work with some stuff, but not with Docker buildx. I'm running on an actual Mac with Linux under Parallels 19 and kind of surprised I had to patch at all.

I found Rosetta 289.3, and it works with buildx, but crashes on one of my build steps that also crashes qemu.

rxhfcy commented 10 months ago

I'm running on an actual Mac with Linux under Parallels 19 and kind of surprised I had to patch at all.

PS. Not relevant to this issue, but Rosetta works fine without any patching in UTM, when using native Apple Virtualization (doesn't work with QEMU I believe), so possibly just a bug / unimplemented feature in Parallels?

jnoxon commented 10 months ago

@rxhfcy Parallels supports it too; There's a box I ticked to enable it in my VM, but evidently I'm missing something else. They provide an Ubuntu machine image that supports it out of the box, but I need custom VMs and Vagrant, so that's not an option for me. It'd be awesome if UTM would support Vagrant.

jnoxon commented 10 months ago

It turns out you can enable it in Parallels with prlctl set --rosetta-linux on, or in a Vagrantfile, v.customize "post-import", ["set", :id, "--rosetta-linux", "on" ]; Combined with the parallels tools, that's all you need. It takes care of mounting a shared fs with rosetta on the host and setting up binfmt.