Re:Darling Progress Report Q2 2023
by baq on Tuesday August 22, 2023 @05:04AM
(#37220242)
If you're like me and had 0 idea what Darling is a few paragraphs in:
Darling is a translation layer that lets you run macOS software on Linux
Wine lets you run Windows software on Linux, and Darling does the same for macOS software.
[...] we finally have basic experimental support for running simple graphical applications.
Re:Darling Progress Report Q2 2023
by progbits on Tuesday August 22, 2023 @06:08AM
(#37220661)
What always annoys me about these blogs is that they have no obvious link to the main site, it all just goes to blog homepage which doesn't bother explaining itself.
This is fine for personal blogs where I don't really care who you are, but it does for projects and companies. (And personal sites often prominently feature About page so it isn't even a problem)
The fact that Darling requires a kernel module makes it quite challenging to use. But the task is open, and I check it once a year.
Overall I'm highly impressed that this is even possible!
Also, I had another idea for builds validation - use a custom version of libc and compiler flags to make the API and ABI on Linux similar to what is on Mac. For example, to make uint64_t unsinged long long instead of unsigned long.
Re:Darling Progress Report Q2 2023
by acheong08 on Tuesday August 22, 2023 @06:28AM
(#37220764)
+ 1. Been running darling off the server branch since it was made and have had 0 issues (at least none that was unique to it). My main complaint is that the go compiler doesn’t work.
Re:Darling Progress Report Q2 2023
by jamesu on Tuesday August 22, 2023 @06:48AM
(#37220902)
Darling is a pretty impressive project. I checked it out a few years ago and was able to get an old 32bit osx program running on linux, which was pretty cool to say the last. The amount of work that goes into stubbing and reimplementing all the frameworks is pretty mind boggling though, I'd commend anyone who takes up such a mammoth challenge.
Re:Darling Progress Report Q2 2023
by marcodiego on Tuesday August 22, 2023 @07:03AM
(#37221012)
Wine allows me to use "native libs" that means one can use windows dll's to improve compatibility. I successfully used this feature in the 90's to legally achieve great compatibility.
Does darling allows the same? A have a Mac license which could be out to good use.
Re:Darling Progress Report Q2 2023
by citrusui on Tuesday August 22, 2023 @07:52AM
(#37221390)
An excellent software project, preservation is a personal favorite ;). I had a look over the blog and GitHub project - but I have one important question that I could not find an answer for: "Which version of macOS is targeted?"
I would assume only the latest or near-latest version, though it is mentioned in this post that they were only recently able to sync source code up to macOS 11.5 (from August 2021).
My theories: either they aim to support a wide array of macOS versions (like Wine), or adopt a "moving target" approach, removing old code and stubs that handle old/removed Mac functions.
I am leaning towards my second theory, as it was mentioned in issue #1337 (heh) that Darwin does not have a stable ABI. That sounds to me like an app built for 10.7 Lion would not run at all on 10.14 Mojave... something that is probably true for real Macs as well.
Re:Darling Progress Report Q2 2023
by Wowfunhappy on Tuesday August 22, 2023 @07:58AM
(#37221444)
> I am leaning towards my second theory, as it was mentioned in issue #1337 (heh) that Darwin does not have a stable ABI. That sounds to me like an app built for 10.7 Lion would not run at all on 10.14 Mojave... something that is probably true for real Macs as well.
In practice, on real Macs, most apps built for 10.7 Lion will work on 10.14 Mojave. Some apps will be a bit buggy but still basically work.
If you asked about 10.7 and Ventura, then I'd give it more like a 50/50 chance the app would work (possibly via Rosetta 2 depending on your hardware).
Backwards compatibility on macOS is quite bad, and it has gotten much worse in the last few years in particular, but it's not quite as bad as some seem to imagine.
This is fine for personal blogs where I don't really care who you are, but it does for projects and companies. (And personal sites often prominently feature About page so it isn't even a problem)
The fact that Darling requires a kernel module makes it quite challenging to use. But the task is open, and I check it once a year.
Overall I'm highly impressed that this is even possible!
Also, I had another idea for builds validation - use a custom version of libc and compiler flags to make the API and ABI on Linux similar to what is on Mac. For example, to make uint64_t unsinged long long instead of unsigned long.
1. Explain what the project is right at the start. I had to go to the main website to find out (run macOS software on Linux.)
2. Follow with a high-level summary. What does all this work mean for the user? Can I now run more software than I could previously?
3. Put the most important things first. Is updating your blog really the most important thing you've achieved in the last four years?
Does darling allows the same? A have a Mac license which could be out to good use.
I would assume only the latest or near-latest version, though it is mentioned in this post that they were only recently able to sync source code up to macOS 11.5 (from August 2021).
My theories: either they aim to support a wide array of macOS versions (like Wine), or adopt a "moving target" approach, removing old code and stubs that handle old/removed Mac functions.
I am leaning towards my second theory, as it was mentioned in issue #1337 (heh) that Darwin does not have a stable ABI. That sounds to me like an app built for 10.7 Lion would not run at all on 10.14 Mojave... something that is probably true for real Macs as well.
In practice, on real Macs, most apps built for 10.7 Lion will work on 10.14 Mojave. Some apps will be a bit buggy but still basically work.
If you asked about 10.7 and Ventura, then I'd give it more like a 50/50 chance the app would work (possibly via Rosetta 2 depending on your hardware).
Backwards compatibility on macOS is quite bad, and it has gotten much worse in the last few years in particular, but it's not quite as bad as some seem to imagine.