Live data from Hacker News

Darling – macOS Translation Layer for Linux

darlinghq.org

41–50 of 176 posts

Re: Darling – macOS Translation Layer for Linux

#41
post #17

What would be amazing is if Darling could join forces with the long-running GNUstep project in order to provide access to the Cocoa APIs. This would provide a means to run Cocoa apps on Linux, which will make Linux a more attractive operating system for prospective Mac converts and may also increase the popularity of GNUstep. Also, with many Mac users expressing anxieties about the future of the Mac given Apple's bus…

The problem with replacing MacOS is that its key value lies in aspects that the open source community have yet to succeed in, or are structurally unfit to succeed in.[0][1] — System-wide UI consistency, especially in the fine details — Singular UI/UX vision eliminates points of confusion and everything-is-a-compromise choices for third party developers — Navigable by non-experts, even when things turn to shit — Nomin…

> — System-wide UI consistency, especially in the fine details

> — Singular UI/UX vision eliminates points of confusion and everything-is-a-compromise choices for third party developers

I mean, first-party GNOME applications are as consistent as first-party Apple macOS applications; and third-party macOS applications are as highly customized as third-party applications one might run on GNOME. Not sure what you base your experience on but this is not really any more of an issue for those looking for consistency over all else.

> — Properly accessible by non-experts, even when things turn to shit

I'd like an example, not really sure what you're talking about here. In my experience, when things go wrong on macOS, you're prettymuch SOL until the broken feature is either fixed, reimplemented, or removed in a subsequent major release of the operating system. In my experience, Apple doesn't respond to bug reports any more than other desktop OS vendors, including open source ones.

> — Nominally "perfect" hardware support

The graphics drivers on macOS are very poor. Apple's decision to neglect and then subsequently abandon OpenGL is pure laziness, and their implementation was already bad when they were still maintaining it. Furthermore, hardware compatibility with random gizmos on macOS leaves a lot to be desired in comparison to Linux, in my experience, though I guess your mileage may vary.

> — Robust colorimetry

colord works just fine for me, no amount of software is going to profile your monitors for you though.

> — Millisecond audio latency

I'm pretty sure CoreAudio frames are not less than 44 samples.

What I will give Apple credit for is a great set of graphics manipulation libraries which make it simple to use high quality scaling and manipulation algorithms, and making sure it's a conscious choice to use cheaper, faster ones, and their implementation of seamless suspend-to-disk with full disk encryption is admirable (though honestly, dispensable at the end of the day). Their shaping and font rendering libraries are almost as good as Harfbuzz and FreeType 2 (though I think they've just started using FreeType at least on some platforms). Accessibility features are also pretty good, and depending on what disability you have, it's a tossup between GNOME and macOS.

Re: Darling – macOS Translation Layer for Linux

#42
post #27

I wish I had the time to contribute to this. Getting Logic running on linux would let me ditch the Apple hardware. It's usefulness is entirely limited to the implementation of the core library frameworks such as Core Image, Audio, MIDI, Animation, Data, etc...which will be very, very difficult, I think, while maintaining FOSS status.

Linux audio latency really isn't great, having another layer in between your app and the kernel probably won't help.

It's actually quite good, or at the least it's better than Windows 10 on the same hardware for me, even if using wine (Apple is still the best here obviously)

Re: Darling – macOS Translation Layer for Linux

#43
post #17

What would be amazing is if Darling could join forces with the long-running GNUstep project in order to provide access to the Cocoa APIs. This would provide a means to run Cocoa apps on Linux, which will make Linux a more attractive operating system for prospective Mac converts and may also increase the popularity of GNUstep. Also, with many Mac users expressing anxieties about the future of the Mac given Apple's bus…

> At the risk of going off topic, I still don't understand why GNUstep never seemed to have reached critical mass despite all these years of development. As someone who was part of the GNUstep scene and contributed a tiny bit of code, I think the reason is obvious: GNOME was getting the big corporate investment, and KDE also had a stable foundation somehow. As you say, the "Linux desktop" very quickly came down to a…

I think it was even simpler than that: during the inflection point between GNUstep and Gnome/KDE, the mainstream market was dominated by Windows. It was clear that the open source community saw Windows as the yardstick for a successful Linux desktop.

Whereas GNUstep was associated with an utterly failed platform.

But subsequent to the NeXT buyout and as MacOS increasingly proved its geek credentials, you can see how the community yardstick has progressively shifted in its direction. Had the serious push for a Linux desktop begun ten years ago and not 25 years ago, GNUstep might well have been the victor.

Re: Darling – macOS Translation Layer for Linux

#44
post #17

What would be amazing is if Darling could join forces with the long-running GNUstep project in order to provide access to the Cocoa APIs. This would provide a means to run Cocoa apps on Linux, which will make Linux a more attractive operating system for prospective Mac converts and may also increase the popularity of GNUstep. Also, with many Mac users expressing anxieties about the future of the Mac given Apple's bus…

The problem with replacing MacOS is that its key value lies in aspects that the open source community have yet to succeed in, or are structurally unfit to succeed in.[0][1] — System-wide UI consistency, especially in the fine details — Singular UI/UX vision eliminates points of confusion and everything-is-a-compromise choices for third party developers — Navigable by non-experts, even when things turn to shit — Nomin…

> Nominally "perfect" hardware support

With the decline of Apple hardware, this is less true, and modern Linux hardware support is, at worst, no worse than what other OSes provide, in my experience.

> Navigable by non-experts, even when things turn to shit

I think the "Closed Box Philosophy" of Apple either defines or disproves this: Non-experts can't be tripped up by having to fix things... because nobody outside of Apple can fix things, eh? Can't screw up something you're not allowed to do.

> The achilles heel of the open source community stems from the lack of a unifying vision and a top-down approach.

This means that I can keep running Window Maker and nobody can take it away from me. In a broader sense, I'm not afraid to upgrade for fear of losing some part of my workflow due to a high-level decision taking an option away from me. I can use Emacs even if everyone else around me is using Vim, I can use qutebrowser even if nobody knows what the fuck a "Cute Browser" even is, I can write in Ruby even if the Current Dogma is JavaScript.

Re: Darling – macOS Translation Layer for Linux

#45
post #5

Something like this is sorely needed by the open-source, not-for-profit, shoestring-resources, cross-platform development community... For example, let's say that I'm writing some cross-platform open source software. And let's say that I am developing this software on a Windows or Linux Box. Now, let's say that for whatever reason, I don't have and can't afford a Mac (a scenario like this is more common than you woul…

> For example, let's say that I'm writing some cross-platform open source software > OK, so now how do I compile/run/test the Mac version of my software -- without having that Mac? You don't. Darling is not a suitable replacement for testing on a real Mac in exactly the same way WINE is not a suitable replacement for testing Windows software. A developer who thinks so is misguided. Virtualising macOS would be more su…

> You don't. Darling is not a suitable replacement for testing on a real Mac in exactly the same way WINE is not a suitable replacement for testing Windows software.

Disagree. Darling is not quite there (yet), but wine could reasonably be used to test dev builds, so long as a native windows version was trialed before release.

Re: Darling – macOS Translation Layer for Linux

#46
post #27

I wish I had the time to contribute to this. Getting Logic running on linux would let me ditch the Apple hardware. It's usefulness is entirely limited to the implementation of the core library frameworks such as Core Image, Audio, MIDI, Animation, Data, etc...which will be very, very difficult, I think, while maintaining FOSS status.

Linux audio latency really isn't great, having another layer in between your app and the kernel probably won't help.

Even with jack?

Re: Darling – macOS Translation Layer for Linux

#47

Earlier quoted context omitted.

The problem with replacing MacOS is that its key value lies in aspects that the open source community have yet to succeed in, or are structurally unfit to succeed in.[0][1] — System-wide UI consistency, especially in the fine details — Singular UI/UX vision eliminates points of confusion and everything-is-a-compromise choices for third party developers — Navigable by non-experts, even when things turn to shit — Nomin…

> — System-wide UI consistency, especially in the fine details > — Singular UI/UX vision eliminates points of confusion and everything-is-a-compromise choices for third party developers I mean, first-party GNOME applications are as consistent as first-party Apple macOS applications; and third-party macOS applications are as highly customized as third-party applications one might run on GNOME. Not sure what you base y…

All those points are fine, but they're all yes-buts.

— I mean, first-party GNOME applications are as consistent as

Straight-up disagree. It all depends what your threshold of UI/UX consistency is. Unfortunately most open source enthusiasts have a low threshold. It is difficult to convey the importance of a thousand subtle details, each one impossibly trivial, but the sum total moves mountains.

— I'd like an example, not really sure what you're talking about here.

An example: If my aging father's Mac turns to shit, he can hold down R, boot up the computer from the recovery disk and restore from a Time Machine backup that he himself set up with no assistance required from anyone.

— The graphics drivers on macOS are very poor.

That's really a marginal opinion. Maybe if you're an OpenGL developer. Apple provides an excellent framework (Metal) which works brilliantly. Yes it would be great if Apple delivered first-class support for Vulkan, but complaining about OpenGL is last decade's problem.

— colord works just fine for me

It's increasingly robust at handling the basics, yes.

Re: Darling – macOS Translation Layer for Linux

#48
post #7
post #4

Been experimenting using this to run legacy software and while it seems to work great with command line tools, as soon as you progress onto gui stuff you quickly run into missing functions and libs. Still insanely cool though.

Especially for MacOs, where you can expect apps to stop working after a new new major OS versions, this is really nice. Meanwhile, Microsoft maintains an amazing degree of compatibility. I haven't tried, but I have a feeling Office 97 works in Windows 10.

Traditionally, that was the case, but recently older applications have been breaking in recent versions of windows. And windows and macos both have hacks in place to fix older versions of popular applications (ms office, adobe suite, etc.).

Re: Darling – macOS Translation Layer for Linux

#49
post #24

Earlier quoted context omitted.

> I don't have and can't afford a Mac Why wouldn't you just virtualize, same as any other OS? If you're not virtualizing on Mac hardware than there are a few minor extra hoops to jump through but it's still less work compared to a hackintosh. Performance can be janky if you don't dedicate a video card to it, but something perfectly adequate like a Radeon 560 seem readily available for $60-80 now. There are a few bits…

Doing so is not legal in most countries. the macOS T&C/EULA/etc. forbid running it on non-apple hardware. This is a large barrier to entry that a lot of people don't want to even approach.

In developing countries piracy is rampant none really cares much about EULAs

Re: Darling – macOS Translation Layer for Linux

#50
post #11
post #8

Earlier quoted context omitted.

It may still be too expensive for devs in ( very ) developing countries or whatever, but I'm pretty sure there are (paid) remote desktop solutions for this. Also you can snag an old mac mini for well under $600, where I am. Like $200-300. It won't be good but that's probably better for testing anyway.

I offer a service that provides you with your own macOS VM, running on real Mac hardware. https://zeromac.com It's billed by the hour, so if you just need to quickly test something, it's pretty cheap. Buying an older mac may be more economical though if you need to develop software long term.

This is super interesting. Is it your full time job? What level of success are you having with your idea?
Post reply on HN