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."
no? damn
Nothing to wine about here!
Is there anything worth running?
... Apple finds a loophole and sues this developer into oblivion?
They're there in their room. You're on your own.
... will I finally be able to cut & paste across applications? *ducks*
Seriously though, if this is going anywhere near wine, we'd have the best of three worlds on one platform.
There are fewer illiterates than people who can't read.
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.
I have been waiting for something like this. Great to see someone started it!
will I finally be able to cut & paste across applications? *ducks*
If you're referring to some imagined deficiency of the GNU/Linux operating environment, then explain how I just copied and pasted your comment from Firefox to Leafpad, composed the reply in Leafpad, and copied and pasted it back to Firefox, all on Xubuntu 12.04. Ctrl+C and Ctrl+V work just as easily to move text around between applications in GNU/Linux as in Windows.
Seriously though, if this is going anywhere near wine, we'd have the best of three worlds on one platform.
Cue Apple's lawyers scrambling to find a way around the ruling of API uncopyrightability in Oracle v. Google.
Instead of thinking. "Wow, this is cool.." I thought, "Apple is going to sue the developer into the poor house..."
How much did you pay for a copy of Windows to run in VMware? I seem to remember that VMware for Mac required the full-price retail version of Windows, not the discounted OEM version that a system builder bundles with a Windows PC. This appears to have changed as of Windows 8 with the new Personal Use License for System Builder, but then one has to suffer through the new metrosexual Start screen of Windows 8 and the convoluted gestures to even shut down the machine. Or what am I missing?
How about a Darwin Award for running it on Linux? What can go wrong, other than OSX virii can now run on Linux like win32 virii can run on Linux? Surely, Microsoft WINDOWS and Aplle OSX are nowhere near the disease vector potential as Linux presently is! Linux runs everything now!
For one thing, -ii is plural of -ius, and nothing else. For another, Linux can already run NES viruses inside FCEUX. (See Dr. Mario and NES Virus Cleaner.)
Apple will most likely exploit their software patents to shut this down. Any attempt to host, support, or otherwise monetize this package should take place beyond our shores.
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.
Is there anything worth running?
Well the Xcode development environment is Mac OS X specific and unlikely to be ported to any other platform.
The amount of effort put into WINE has been quite large. Popular, binary API, single platform programs might have been an acceptable tradeoff in the era of a thousand dollars for the CPU and RAM, but today, a 1 ghz P3, 256 MB RAM equivalent costs under 30 dollars. Unless a program written today is high performance, it should not be using nonportable binary APIs.
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.
Can it run iworks?
but can you fit an entire apple in your rectum?
As a former Linux user and current Mac user with concerns over Apple's direction, this is the most exciting Linux news I've heard in a while. I realise it's probably a ways off, but if I could run eg. Reason on Ubuntu and there was a nice *step style WM (with a real maximize button!) I could be sold :)
Do you see what I did there?
I guess if we can run Mail.app the issue of crappy email clients on Linux is solved.
Actually GNUSTEP as a project works like that: FOSDEM - New Work done - SILENCE - FOSDEM - New Work Done - ...
And everyone thinks: Well, why don't they go after Mac OS X emulation as a "vision" because otherwise the project lacks a good mission that inspires new contributions. Actually I thought it for the past 10 years but it always interesting to see how they start off after the annual FOSDEM meeting.
Oh joy. Now I'll be running three versions of Steam: All Linux games on the Linux client for to encourage support for FOSS platforms, the Mac client for generic multi-platform solidarity, and the Windows client for the rest of it.
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.
Although I believe that iOS should have always allowed 3rd party stores, and people should be allowed to move cross-platform programs...between platforms.
A port of GNUstep to Android would let iOS application developers target Android with much less additional effort. It could help make a lot of currently App Store-exclusive applications into cross-platform applications.
VMWare Fusion 3 and earlier worked with OEM [Windows install] disks.
But doing this was probably as illegal as a Hackintosh. Apple v. Psystar.
On the other hand, I don't think the license specifically made any distinction that the new PC you purchased in a "bundle" with the OEM copy of Windows could NOT be a Mac?
Because Apple doesn't sell bundles of Mac hardware and Windows OS.
So you could probably buy a new Mac at a retailer like Micro Center and buy an OEM version of Windows 7 at the same time, for use with that Mac, and run it in a VM legally.
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. Unfortunately, I can't really look further because after PULSB, the old "Windows Licensing for Hobbyists" page on Microsoft's site appears to be 404.
How the heck is Microsoft going to know if that OEM copy of Windows 7 you possess and loaded on your Mac was actually purchased originally with said Mac
I don't know whether Microsoft actually does this, but the Windows product key could be stored with the computer's serial number in a database that Microsoft could reserve the right to audit.
Well, duh! Mac OS-X is nothing but a BSD clone with a GUI strapped on top.
A few years ago I regularly built Qt-based binaries on my Linux machine, targeting PPC OS X (10.3). It was pretty slick. I tried to set up a cross-compiling environment later under 10.4 fat binary days, but that proved too difficult, sadly. As it stands now, if I could run apple's native compiler and tools under linux, outputting nice OS X app bundles for Qt apps, that would be pretty slick.
While I understand it's possible to get Wine working on 64-bit Linux, it's my experience that it's not really supported on a pure-64 bit system... at least not on Slackbuilds.org
File under 'M' for 'Manic ranting'
The build process on OS X is just different enough from Linux to be a real bugbear when I try to compile some obscure console-mode app (naim, for example), usually making osxports puke its guts out on the next-to-last of a hundred dependencies. It'd be pretty nice if I could just download binaries built for Linux and use them.
Village idiot in some extremely smart villages.
But it's not the same thing. This is running OS X binaries, without OS X.
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.
GPLv3 means this is not getting anywhere near a non-rooted android. And even Linux ports of commercial applications will be rare if existing at all. Even if you are going to argue that an open license hindered early Wine, GPLv2 is the most encumbered license the world will accept.
I do contracts for a large company and they have an easy ruleset:
o BSD/MIT: do it and tell us.
o GPLv2: ask us for permission.
o GPLv3: Don't even look at it.
A port of GNUstep to Android would let iOS application developers target Android with much less additional effort. It could help make a lot of currently App Store-exclusive applications into cross-platform applications.
...and this is backward thinking. Apple threw away market share protecting their profits, but we [by we I mean me and the ex-shareholders of Apple] are all in agreement that gravy chain is coming to an end. Apple need to step up, and support cross-platform development from the get go, otherwise they will find themselves marginalised [more] pretty quickly. I shouldn't have to reiterate...the days of iPhone exclusives are long over. You post would have maybe been relevant a year ago, but that is a long time ago.
Although this has little to do with my post, which is Apple need to open their storefront, to sell DRM free [or loose DRM] cross platform applications [and allow ease of those self same applications]...and update those of other stores. Otherwise again it will continue to marginalize itself. In fact I don't limit it to Apple because I think the freedom to move between *ecosystems* is going to become a problem, but locking myself into the loosing platform is not going to happen...and many more will follow me. I've seen how Apple treats its customers who bought its DRM ridden MP3's at 128...they have to pay a premium. I'm not into a company that has that mentality.
o BSD/MIT: do it and tell us.
o GPLv2: ask us for permission.
o GPLv3: Don't even look at it.
LOL its nice to see a random Apple shareholder [Sorry about the shareprice btw] promoting BSD its so quaint. I notice BSD nix has suffered a great deal since Apples one way take. Linux on the other hand seems to be be thriving.
Quick list of GPL2 and 3 Apps on Android http://en.wikipedia.org/wiki/List_of_open_source_Android_applications
even more awesome, we can now run Outlook for Mac on Linux! standard at my work, it sucks even worse and harder than outlook on windows
By using one that is deliberately designed for the dumbest, lowest and laziest of human life, so that it is limiting even a monkey or a 4 year old in efficiency?
Yeah... *totally* what Linux users... the *only* actually computer-literate people touching computers want!
Why do you think we still use MUTT? Because we want to sit there and drool on a tablet with a big red button saying "magic" that "knows" what we want (in that it tells us what we're supposed to want, app-store-censorship style)?
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
They should have named it Dine.
========
77 77 77 2e 6d 65 6c 76 69 6e 73 2e 63 6f 6d
GNUStep lets OS X application developers target Windows and X with much less additional effort. How's that working out?
Do you even lift?
These aren't the 'roids you're looking for.
I could be wrong, but I suspect implementing the OSX APIs in Linux might actually be easier than trying to implement Win32. Partly this is because OSX is already a *nix-based system, so you don't have to do as many weird hacks with directory mapping and so forth. But mostly I think it may be simpler because Apple has relatively clean APIs and relentlessly deprecates legacy stuff. When you implement Win32, you have to implement literally thousands (if not millions) of hacks and special cases going back to the 1980s. This is not without justification as a design goal – backward compatibility is one of the reasons why Windows has had such staying power in business – but it's difficult for even Microsoft to get the whole edifice running smoothly, much less third parties with no access to internal design documents and source code. In contrast, when Apple switched from Carbon to Cocoa, they were pretty aggressive about deprecating the old framework.
I would think that would make it easy to run their apps/programs in Linux.
But as someone else said, is there anything to run?
If you could reason with religious people, there would be no religious people
including CoreData and CoreGraphics equivalents are in place. Until then, it's like watching a drunk athlete play against all-stars, when comparing GNUstep(off a cliff) versus OS X.
A port of GNUstep to Android would let iOS application developers target Android with much less additional effort.
There are already excellent tools for doing just that. You don't get much easier than Cordova or Unity. Darling seems like a fun project and could even be useful some day, but not really a practical solution to cross platform mobile development unless Google were to buy in in a really, really big way.
If this ends up supporting Adobe Creative Suite better than Wine, then that will be a huge win as it is a very common "why I can't use Linux" excuse.
How good is Apple's documentation compared to Microsofts? This is important for a clean-room implementation.
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
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
including CoreData and CoreGraphics equivalents are in place. Until then, it's like watching a drunk athlete play against all-stars, when comparing GNUstep(off a cliff) versus OS X.
Sure you don't want to stick around and taunt them as they wail into the night then drink their tears as the sun rises over the desolation that their lives have become?
XML is a known as a key material required to create SMD: Software of Mass Destruction
It seems like this was a missed opportunity to name the project Mace.
The only E-Mail program so far which actually is so slow it cannot keep up with my typing!
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.
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.
Notes is much more than just mail so stop this crap talk.
Well the only thing on Mac OS X i'm really jealous about is Tower, it is quite frankly the BEST git gui application out there. It can do EVERYTHING you can do with the command line and it does have a very intuitive interface, my boss uses it on his MacBook Pro while all other developers are stuck with the usual windows crap. I would really love a way to use that, even if it is through a linux vm, btw. no i won't use a Mac VM that's just crazy talk ;)
No, FreeBSD is not Linux. And it isn't even really based on FreeBSD either, it just borrows part of the userland.
I have gazillions of retro and historic computers around and having to pull one out of storage, set it up and install the program is just way too much work for all of those. Being able to run software for most of those machines on a single desk top computer or VM host, would make it a lot easier and often "worth the trouble" to actually run the software. Also, the PPC Apple will no longer have hardware support, so if I was running legacy code in a production environment, having it run on modern, supported hardware, would be a benefit. It might even be actually running faster on modern hardware, if emulation is efficient enough.
I was promised a flying car. Where is my flying car?
I wonder - do OS-X applications work seamlessly under FreeBSD or PC-BSD? Or do they have any Quartz-specific dependencies that would prevent it? Since the underpinnings of OS-X is FreeBSD userland, shouldn't an OS-X application work seamlessly, or would there be any tweaks similar to what the above developer has done for Linux?
just focus on getting linux apps to run on linux, wine sucks has always sucked and will continue to suck, I don't see a Mac OSX "Mace" helping me to get shit done.
It works properly for me on Ubuntu 12.10. I can run Steam, even (Well, I'm not in the beta... and since I had HL2 anyway I went ahead and picked up the THQ bundle, for basically nothing. I gave some money to charity and to the bundlers for administration.)
It was all bad in 12.04, I couldn't install it and lsb-base at the same time
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
How do you people find Slashdot? Remember to swallow and breath...
OpenSSH is an integrated subsystem of OpenBSD, which has a market penetration of at least 95%. The OSX kernel is BSD-based, so by numbers of kernel installs BSD is probably ahead of Linux. Consider the basic strlcpy() function, which Linux recently adopted... sometimes BSD gifts come in very small packages. BSD probably dominates the IT industry just as profoundly as Linux, but not in a "monolithic" manner.
I'd settle for just fixing OpenStep on Fedora, not a complete Mac/iOS clone. OpenStep's graphics are broken on Fedora, and have been for years. Some sort of dependency hell. As expensive as Macs are, and as important as iOS development and Objective-C are right now, I'm surprised by this situation, since I would figure there would be a lot of incentive to have OpenStep working on a first-class Linux distro as a cheap alternative to learn Objective-C and Cocoa. My limited experience is that OpenStep is so far out of step with the Mac that it isn't useful as a learning platform. Even Objective-C and its class library are out of sync. I tried to write some simple code to format a date on Fedora, and port it to the Mac, but the OpenStep stuff didn't work the way the Mac did. So I figure that OpenStep is so out of date it isn't useful any longer, or demand for it would mean the Fedora version would be fixed. Compare that to, say, g++'s support for the new standard, which has outpaced Microsoft's (even with Sutter as the head of C++ at MS). Fedora is on the leading edge there.
You obviously haven't used Notes since the 90's when outlook was non-existing. The company I work for switched from Notes to a MS-solution a couple of years ago, and I hear more and more of the users wanting to go back to it! An MS based solution with Exchange and Sharepoint might be easier to set up for the sys-admins, but for users, domino is a far better choice! It just works a lot better and the systems are more integrated with each other.
This is blinging
The only thing that will protect this project from Apple is their focus on iOS.
If Apple doesn't think OSX is really their future, they probably won't care.
Now, if someone allowed iOS programs to run directly on other phones...
that means a... well, actually nothing coming from an AC.
If you could reason with religious people, there would be no religious people
I appreciate that you were probably trying to be helpful, but I did specifically mention that it was unsupported as a slackbuild. Ubuntu is not Slackware. Slackware64 out of the box is a pure 64 bit system that does not support 32 bit binaries without installing additional software (multilib) that, while readily available and quite commonly used, has not ever been officially supported by the slackware distribution, or by slackbuilds.org. It is my understanding that this is a deliberate choice because it is not unheard of for some applications to fail to build correctly on a system which supports both 32bit and 64bit binaries because the build file is set up in such a way that the linker may try to link the wrong libraries when both are present. Editing the build file will usually correct this, but because not all projects which are supported by slackbulds.org have had their build files manually adjusted to account for the possibility of a dual 32-bit/64-bit system. A user thus enables running 32-bit binaries on 64-bit Slackware entirely at their own risk, and must potentially hand-edit other people's build files to build applications to run on it.
File under 'M' for 'Manic ranting'
The parts of Notes that are not email are pointless in the 21st century.
XML is a known as a key material required to create SMD: Software of Mass Destruction
You're either an excellent troll, or a poor unfortunate about to be dog piled by a lot of nerd rage. (Apologies if you're the latter, bravo if the former.) ;)
OSX is Darwin (A MACH micro kernel with a BSD user land) + OpenStep + a fuckton of pr
Most of the weight of a typical full install has always been printer drivers. But when users think of Mac OS X, a lot of times they're really only thinking of Quartz, and the applications that are used with it. That there is a framework built upon a platform that allows it all is conceptually skipped... and it amounts to a surprisingly small amount of the whole installation.
Yes, Darwin does use a MACH kernel. But the MACH kernel itself is also derived from BSD, originally developed as additional code written directly into the 4.2BSD kernel.
http://astutehosting.com/
Yes, Darwin does use a MACH kernel. But the MACH kernel itself is also derived from BSD, originally developed as additional code written directly into the 4.2BSD kernel.
If you actually look at the code, or even just at system calls, it is obvious Mach has nothing to do with a Unix kernel. Where did you read it was BSD derived?
Now what is wrong with Evolution or Thunderbird?
I personally prefer Evolution, and yes, I know there are some memory leaks... The program itsself works beautifully though, and is fast after all!
and if the company you work for requires your phone to not be rooted in order to VPN / get email / calendaring / etc., and is actively enforced by the MDM solution?
Yeah.
Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
At one point, Outlook on the Mac was written by the Exchange team at Microsoft, and it had feature parity with Outlook for Windows, including using a MAPI protocol.
Then the Mac shop at Microsoft was formed and started doing Office for Mac, and completely scrapped the good* Outlook in favor of this abomination of a binary UI for Outlook Web Access, which is what Mac Outlook is.
Might as well just use OWA - it's the same damn thing, but with less configuration bullshit.
*all values of "good" are intended in a relativistic sense - saying "the good Outlook" is in comparison to the shit-tastic Outlook 2011 that is the "current" product available.
Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
the days of iPhone exclusives are long over.
Correct. Nowadays, an app will be ported to iPod touch, iPhone, and iPad. Tiny Wings is not for Android.
I've seen how Apple treats its customers who bought its DRM ridden MP3's at 128...they have to pay a premium.
No, that's how the major record labels treat their customers.
since I bought a copy of windows
Just because you bought a copy of a work doesn't mean you bought access to the work embodied in the copy. You waived rights in exchange for the privilege to decrypt the install package.
Licenses only apply to rentals or signed contracts.
You accepted the contract when you swiped your credit card and signed the signature pad.
the best of three worlds
I think he might've been talking about running Linux on VMWare Fusion.
And these three worlds would be 1. Mac OS X, 2. Linux on VMware Fusion, and 3. what else? One could run Wine in Linux on VMware Fusion, but why do that when Wine runs directly in Mac OS X?
If your company requires your phone to not be rooted you can't install any code that requires rooting. This doesn't affect GPLv3 anything, it can even still be shipped with GPLv3 code as long as it's user space/the device can be rooted by the owner (be it you, or your company), even if you opt not to do it.
GPLv3 requires that any GPLv3 code shipped on the device needs to be able to be replaced by modified versions, it doesn't require the device to be in a state ready to accept such modifications without additional intervention.
Analogies don't equal equalities, they are merely somewhat analogous.
Are you telling me that none of the millions of iPad owners wishes he had a tool for experimenting with app development directly on the device, no Mac required? Very few I'll grant, but nobody?
I'm just saying that any easy procedure that has a step which involves rooting or jailbreaking the device isn't going to work for everyone. It's fine for some people, but it's not realistic if you have a device given to you by your employer, or want to interact with your employer's systems, if your employer has enterprise security standards which forbid rooting or jailbreaking.
These policies and MDM profiles that enforce it are going to become commonplace, if they aren't already.
Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
that means a... well, actually nothing coming from an AC.
It's unfortunate that you don't already feel the appropriate amount of shame. A simple Google search could have helped to prevent you from talking out of your ass about things you don't understand.
Finally, the Mac's famed selection of applications combined with the incredible ease-of-use for which Linux is renowned.