News for hackers. Stuff that matters.
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)

Re:Darling Progress Report Q2 2023 by Someone on Tuesday August 22, 2023 @06:43AM (#37220867)
I don’t think it’s obvious enough, but there is a GitHub link at top right of the page.
Re:Darling Progress Report Q2 2023 by progbits on Tuesday August 22, 2023 @06:55AM (#37220955)
Good find. On mobile it is at the very bottom though.
Re:Darling Progress Report Q2 2023 by scoopertrooper on Tuesday August 22, 2023 @10:29AM (#37223252)
On desktop, there is actually a link named 'Main Site' to the right of the GitHub link.
Re:Darling Progress Report Q2 2023 by layer8 on Tuesday August 22, 2023 @07:07AM (#37221046)
I agree, but it's also just a few keystrokes to remove the "blog." from the address bar.
Re:Darling Progress Report Q2 2023 by zX41ZdbW on Tuesday August 22, 2023 @05:25AM (#37220386)
We are choosing between Darling and using Mac instances in AWS for validation of ClickHouse builds: https://github.com/ClickHouse/ClickHouse/issues/15609

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 monitron on Tuesday August 22, 2023 @05:44AM (#37220496)
Good news: this article announces that the kernel module is no more, since last year apparently!
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 noelwelsh on Tuesday August 22, 2023 @05:29AM (#37220402)
I'm not sure who the intended audience is for this post, but if it's the general programmer audience I have several suggestions:

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?

Re:Darling Progress Report Q2 2023 by KingOfCoders on Tuesday August 22, 2023 @06:45AM (#37220881)
Captain Darling?
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.