Slashdot Mirror


Darling: Run Apple OS X Binaries On Linux

An anonymous reader writes "After having Wine to run Windows binaries on Linux, there is now the Darling Project that allows users to run unmodified Apple OS X binaries on Linux. The project builds upon GNUstep and has built the various frameworks/libraries to be binary compatible with OSX/Darwin. The project is still being worked on as part of an academic thesis but is already running basic OS X programs."

28 of 255 comments (clear)

  1. How long before... by rbprbp · · Score: 5, Insightful

    ... Apple finds a loophole and sues this developer into oblivion?

    --
    They're there in their room. You're on your own.
    1. Re:How long before... by squiggleslash · · Score: 5, Insightful

      Companies don't just sue people for no reason. For Apple to sue Darling, there'd have to be some kind of motivation for them to do so. Otherwise it would:

      1. Waste a lot of money.
      2. Cause a lot of ill-feeling
      3. Possibly set precedents that bind it in future in a way damaging to Apple in the long term.

      It's hard to see what kind of threat this product would be to Apple, and in theory it might even be a benefit.

      Apple's market is based upon people liking the way Apple's devices work. With a small number of famous exceptions, few people buy Apple because of the exclusive availability of a particular piece of software. By and large, the vast majority of people interested in Apple's products aren't going to be interested in Ubuntu with a software compatibility layer. Of the few left who need a Mac for a particular piece of professional software, few are going to risk running that software on an unsupported compatibility layer.

      I find it very improbable Apple will sue. I think they'll ignore it.

      --
      You are not alone. This is not normal. None of this is normal.
    2. Re:How long before... by martin-boundary · · Score: 3, Funny

      ... Apple finds a loophole and sues this developer into oblivion?

      You leave Apple alone! They worked hard to design a rectangular LCD display for the Mac, and totally deserve their patents. If your laptop has a rectangular LCD and you're running Linux, you're just a cheapskate who's stopping progress and giving Steve Jobs an ulcer. He died because of you, you know!

  2. Cydroid by tepples · · Score: 4, Informative

    Given that iOS began as a stripped-down fork of Mac OS X, Darling could mean eventually running the entire contents of Cydia on Android devices in addition to the jailbroken iTrinkets that it currently runs on.

  3. Re:Does it run PPC binaries? by perpenso · · Score: 5, Funny

    no? damn

    Well, neither does the current Mac OS X. So it is fully compatible in that regard.

  4. Android Store just more useful by tuppe666 · · Score: 4, Interesting

    Darling could mean eventually running the entire contents of Cydia on Android

    The days of iExclusivity have long passed, anything of value is already on both platforms, or that Android passed iOS both in number of Apps and Downloads in October [700,000 ans 25,000,000,000 respectively]. Although I believe that iOS should have always allowed 3rd party stores, and people should be allowed to move cross-platform programs...between platforms. I do think this unnecessary lock-in needs to be stopped.

    Although me personally I have more interest in running my Android Apps on my touch-screen Linux Desktop.

  5. Xcode ... by perpenso · · Score: 4, Informative

    Is there anything worth running?

    Well the Xcode development environment is Mac OS X specific and unlikely to be ported to any other platform.

  6. Re:Does it run PPC binaries? by paugq · · Score: 4, Informative

    There's Mac-on-Linux for that, last updated in 2007:

    http://en.wikipedia.org/wiki/Mac-on-Linux

  7. Re:The developer should leave the US immediately. by Guy+Harris · · Score: 3, Informative
  8. What about the rest of the APIs? by Anonymous Coward · · Score: 4, Informative

    This is nifty in all, but all their example application is doing is literally the graphical equivalent of "hello world".

    GNUStep still only implements maybe 30% of the Apple APIs out there. And they still don't do them 100% the same way- see NSDecimalNumber for reference (Apple has a really stupid whacked way of doing it, GNUStep's implementation is slightly more sane- but they still shouldn't be straying from what Apple does if they want a compatible API in the end). Things like Core Animation, Core Graphics, Core Image, etc... Forget about it. The GNUStep guys have barely even bothered to look at that stuff, let alone implementing it.

    Sadly, there is a lot more to a modern day Macintosh application then your standard NS/CF classes (even though Core Foundation is kinda opensource). You're not going to see Tweetbot or Cornerstone or Coda 2 running on anything other then OS X for a very, very long time. iOS might be a bit different since the majority of UIKit is very well understood (and there are various other APIs out there designed to re-implement it), so basic iOS applications could probably run with little effort- but for anything using APIs outside of UIKit (again, Core Animation, Core Graphics, Core Audio, Core MIDI, so on and so forth)- nobody has really spent any time on understanding how those work and re-implementing them elsewhere, and a lot of apps hook into this stuff to give you the nifty iOS experience that other handhelds can't.

    In other words, the biggest barrier to this project isn't running OS X binaries on Linux. That's easy. It's implementing the other 70% of the stuff that nobody has even remotely begun to poke at. The OS X API library is vast and expansive, and GNUStep has done a good job replicating what we had on NeXTSTEP in the 1990s- but they've got absolutely none of the modern OS X stuff.

    1. Re:What about the rest of the APIs? by cr_nucleus · · Score: 5, Insightful

      You mean a project that just started with a single guy isn't complete or near completion ?

      Yeah it's gonna be tough but it doesn't mean it can't be useful or grow much bigger than it is now (rember this thing called Linux ?).

  9. Re:Does it run PPC binaries? by LubosD · · Score: 5, Informative

    (I am the author of Darling.) And you're correct. Supporting PPC is on my TODO list and will not be that difficult I'll just have to port the few assembly routines.

  10. Re:But by eyegor · · Score: 4, Insightful

    Because as good as OS X is, it's not a particularly good server platform and requires Mac hardware, while Linux has been around for ages, runs on commodity hardware, has a very well supported number of open source packages and is considered mainstream by most Unix admins.

    As a server platform, OS X suffers from the same problem as Solaris. You need the vendor supplied hardware to get it to run well. Solaris is a dying OS because Sun and Oracle supplied hardware is too expensive and just isn't worth it when you can get three times the computing power for less money, and X86 Solaris is frankly crap, since it has such a small hardware compatibility list.

    I don't mention BSD since it's not really mainstream any longer. It's a good OS, but lacks overall vendor support.

    All that being said, I prefer OS X systems for my workstation and CentOS or Scientific Linux for servers. Redhat's nice, but overpriced when you need to deploy a lot of systems.

    --

    Don't anthropomorphize computers, they don't like it.
  11. The solution to the Linux email clients question by Anonymous Coward · · Score: 5, Funny

    I guess if we can run Mail.app the issue of crappy email clients on Linux is solved.

  12. Re:Cue Apple's lawyers by Guy+Harris · · Score: 5, Informative

    I'm not saying that's the issue both both applications you mentioned use GTK so maybe that's one reason why it works but may not work in other cases.

    And GNU/Linux isn't all GTK.

    "All GTK" may be sufficient to make cut/copy/paste work between applications, but it's not necessary. I just did a quick Wireshark build (to get a GTK+ application) on my Fedora-16-with-KDE-4 (virtual) machine, and was able to cut with ^X or copy with ^C from the Wireshark filter text box and paste with ^V into the app launcher Search text box and KWord, and cut or copy from either of the latter and paste it into the Wireshark filter text box.

    So it works at least between those versions of GTK+ 2.x and Qt 4.x. There's no guarantee it will work between toolkits A and B for arbitrary values of A and B, but if a toolkit implements cut/copy/paste as per the freedesktop.org clipboard consensus - as that page notes, Qt and GTK+ both do - cut/copy/paste should work between applications using that toolkit and other applications using that toolkit and other toolkits that implement cut/copy/paste as per that consensus. (According to the page on that consensus, Qt 2 and GNU Emacs 20 didn't implement cut/copy/paste as per that consensus, but Qt 3 and GNU Emacs 21 would.)

    None of that, BTW, gets rid of paste-current-selection, i.e. the action usually bound to the middle mouse button on many UN*X GUIs.

    (Note, BTW, that the X11 term "selection" doesn't necessarily mean "what you've selected in the application"; that's the PRIMARY selection, but there's also the CLIPBOARD selection, which is whatever you've cut or copied, and the SECONDARY selection, which is probably unused unless you're using an XView application.)

  13. If Wine supports clipboard, Darling can too by tepples · · Score: 3, Informative
    I've seen copy and paste from a PDF fail on Windows too, for any of at least three reasons:
    1. Digital restrictions management applied to the PDF that disables Copy.
    2. Several PDF tools are capable of "subsetting" of fonts, in which unused glyphs are removed. But the subsetting functions in some PDF tools will rearrange the character encoding.
    3. PDFs are often created from faxes or other scans of paper documents that haven't had OCR applied.

    In any case, I opened the first PDF that I found in ~/Downloads, copied a paragraph, and successfully pasted it into Leafpad. So copying from Evince to Leafpad worked. Then I did wine notepad.exe and pasted the same paragraph from Evince into Wine Notepad. To finish proving the point, I even typed this very sentence into Wine Notepad and copied and pasted it into Firefox. So if they managed to get the clipboard working between GTK+ and Wine, I don't see the big obstacle to getting it working between GTK+ and Darling.

  14. Re:But by eyegor · · Score: 5, Interesting

    OS X is a capable OS, but best used as a workstation at best. Deploying large numbers of OS X servers is greatly complicated by the fact that even Apple acknowledges that there's no market for their server grade systems and they've stopped selling them. Even if I put a Mac Pro into production, they'd be so expensive and occupy so much room that they'd fill the data center. If I stick a Mac Pro sideways in a rack, it takes 4 or 5U at least for 12 cores. I can put 4 dual hex or octo core Xeon rack mount servers in the same space or even some dual 16 core opteron servers. If I choose to use blades, I can put 16 HP 460c blades in 10U.

    Don't even mention the Mac Mini as a viable server platform, it's an underpowered joke of a system if you want to do real work on it for sustained periods of time. They're not intended for, nor will they stand up to the kind of loads you see in the enterprise.

    I work in the IT industry running computational clusters and lots of other kinds of servers. My rock is pretty large, but I'm on the top of it.

    I do have a couple of OS X servers in the enterprise, but they're only there to run Open Directory to manage our Mac workstations.

    your assertion that windows 7 or OS X is better than a Linux server shows how out of touch you are with enterprise computing. We have some windows 2003 and 2008 servers in production, but they're there to provide infrastructure for the windows workstations. No one tries to do anything else with them since it's far easier to deploy services on Linux.

    As I mentioned, I love apples workstations and laptops but they don't make an appropriate platform for running any meaningful services in the enterprise.

    --

    Don't anthropomorphize computers, they don't like it.
  15. Re:Must be preinstalled by Anonymous Coward · · Score: 3, Informative

    As I understand the Windows license prior to PULSB, Micro Center would have had to install Windows into Boot Camp or VirtualBox or VMware before selling the Mac. I don't know if Apple allows its authorized resellers to do that.

    As an employee of a Value Added Authorized Reseller, we can do that at my company. In fact, we don't sell any laptops other than Mac laptops as they are best suited for our purpose and our industry. Of course there are Windows user in our industry, and for that we route them to either a PC custom built by us, or a MacBook Pro that we've preinstalled BootCamp, Windows, and a suite of apps on. Posting anon to avoid killing mods I've made.

  16. Re:But by eyegor · · Score: 4, Interesting

    Re: windows vs Mac, I personally hate using windows as a workstation, but I have one at home for gaming. In general, it's a crufty clunky dog's breakfast of an OS that's a pain in the butt to configure and update. I've used nearly every version of DOS or Windows since the days of DOS 2.0 and Windows 2.0, so I'm familiar with its flaws and foibles. The only versions I've never used are Vista and Win 8.

    MacOS used to be a crap OS. It was pretty, but didn't multitask at all and crashed far too often to trust. OS/2 was nice, but fragile and was never as popular as Windows. OS X is an awesome OS for workstations and is excellent to work with for day-to-day stuff. The only Linux I use for workstation stuff is Ubuntu. CentOS as a workstation OS is ok, but is too much of a pain to deal with for stuff like sound cards, etc.

    Slashdot has a lot of different kinds of people on it. Many of them hobbyists and people who work in small *nix shops. Many are also enterprise IT types and the most popular enterprise *nix is Linux, hands down. Redhat/CentOS flavors dominate, but there are a few debian shops as well, such as Akamai.

    A lot of that stuff is just holy wars, but if you look at what vendors support what OS's, You don't typically see much for BSD. Our company recently retired a BSD cluster and are in the process of decommissioning our BSD-based servers for a myriad of reasons. Juniper may use BSD in their stuff, but many more use Linux as their embedded OS.

    BSD is popular with some companies and in colleges, but when you get into the real world it's either Linux or Solaris and Solaris is fading fast. Look at the job market. Linux is what most companies are looking for. I'm not dissing BSD, but I'd never recommend it for anything in the enterprise.

    I used to run some SunOS (bsd-flavored) systems 'back in the day' and loved them, but when Solaris came out, pretty much everyone switched. I've used Solaris 2.5 - Solaris 10 on both SPARC and X86 and have watched it decline over the years in popularity because of hardware costs and X86 compatibility issues. Oracle has made some really dumb moves over the years regarding the stuff they purchased as part of Sun and most admins I know have given up on their stuff.

    --

    Don't anthropomorphize computers, they don't like it.
  17. NetBSD attempted this a decade ago by manu0601 · · Score: 3, Interesting

    There was a similar attemptin NetBSD almost 10 years ago. .

    That prehistoric project implemented Mach-O loader, Mach system calls, and has been able to start OS X display server. It felt short actually displaying something useful, and died from lack of user interest.

  18. Re:wine by thebigmacd · · Score: 3

    You sure about this? You can run even the latest and greatest Windows versions of Steam games via playonlinux, which is basically a wrapper for WINE. Things have improved greatly in the last year or two.

  19. Re:wine by h4rr4r · · Score: 4, Informative

    Wine is working great these days. Steam, video games and even Netflix.

  20. Debunking Wine Myths by tuppe666 · · Score: 5, Informative

    Enjoy your one frame per second!

    I believe in proper ports, using cross-platform tools. In fact with Windows is becoming just another platform. Its simply less of an issue, but to suggest Wine is slower when its often faster is really strange.

    http://wiki.winehq.org/Debunking_Wine_Myths

    I've given you a link to show how misinformed you are. I suggest you spend a little time getting informed

  21. Dine by static0verdrive · · Score: 4, Funny

    They should have named it Dine.

    --
    ========
    77 77 77 2e 6d 65 6c 76 69 6e 73 2e 63 6f 6d
  22. Re:But by Kjella · · Score: 4, Interesting

    Your rock however must be small indeed because BSD is certainly "mainstream", as has been discussed on /. ad nauseam.

    I don't know how accurate the stats are, but w3techs puts FreeBSD at 1.1% of all web servers, that's roughly as mainstream as Linux is on the desktop - in other words not at all. It used to big be yes, but my impression is that Linux got corporate backing and raised the quality significantly while BSD remained a mostly amateur project. Particularly they were rather late with production grade SMP support which started a lot of migration to Linux and while a lot of web hosting companies used it in-house and small companies offered support there never formed a big professional support organization like Red Hat was for Linux. Not to mention Linus has by some small miracle managed to keep it together under one banner instead of forking into three branches with duplication of effort.

    --
    Live today, because you never know what tomorrow brings
  23. Re:The solution to the Linux email clients questio by H0p313ss · · Score: 3, Informative

    it sucks even worse and harder than outlook on windows

    Clearly you have not had Notes inflicted on you, if you had you would cling to Outlook with all your heart and count your lucky stars.

    --
    XML is a known as a key material required to create SMD: Software of Mass Destruction
  24. Re:Isn't Apple OS"whatever" at its core, Linux bas by H0p313ss · · Score: 4, Informative

    OSX is Darwin (A MACH micro kernel) with a BSD user land + OpenStep + a fuckton of proprietary Apple stuff. Nothing Linux about it.

    You do know that Linux is just a kernel right? Son, these days Solars has more in common with Linux than OSX does.

    --
    XML is a known as a key material required to create SMD: Software of Mass Destruction
  25. Re:DroidStep would make Play Store even more usefu by arose · · Score: 3, Informative

    GPLv3 means it is not going to be distributed with a device that can't be unlocked. "Installation instructions" for a Nexus device: enable third party sources and install .apk for user space, unlock device, root, install whatever you want. That's all you need to provide.

    --
    Analogies don't equal equalities, they are merely somewhat analogous.