back to article Apple finally publishes El Capitan Darwin source

Stung, perhaps, by its ill-fated marketing claims about open source software, Apple has published the Darwin source code to its El Capitan OS X release. When it released Swift as open source, Apple made a rather contentious claim that it was “the first major computer company to make Open Source development a key part of its …

  1. Anonymous Coward
    Anonymous Coward

    “true, ever since it bet on OpenBSD”

    Shouldn't that be FreeBSD…?

    1. Wensleydale Cheese
      Thumb Up

      Unless anyone has more accurate information...

      Wki: Significant BSD descendants

      "Apple Inc.'s Darwin, the core of OS X and iOS; built on the XNU kernel (part Mach, part FreeBSD, part Apple-derived code) and a userland much of which comes from FreeBSD"

    2. /dev/null

      Actually, I remember finding a random and completely irrelevant OpenBSD man page in OS X 10.0 (maybe 10.1), so I think there were some bits of OpenBSD in OS X in the early days. But yes, they did settle on FreeBSD to source most of the Unixy userland from.

  2. Lee D Silver badge

    Erm...

    So, if I'm reading this right, they took code like Apache, OpenLDAP, etc. and used them in MacOS. And now they're getting credit for "returning" the source. Like, the source that they've used, pretty much unchanged except to make it work on their product, and which is publicly available to all anyway?

    Granted, it's not a viral licence like GPL, but it's hardly something to yell about. I mean, there's things like uucp, vim and perl in there. There's honestly not that much you can do to them, really, is there, if you want them to do their job? Maybe that's why - as the article says - nobody really does anything with this code.

    As a comparison, IBM et al have been doing this for decades now. The tools they do use, in their server boot CD's, in their internal hardware, etc. has source published and a little note in every manual about where to get it. Some of them have IBM-specific changes which are fed back to the community. To be honest, so does Microsoft to a certain extent. Why does it merit special mention that Apple are doing this seeing as they probably USE more open-source code than any of the above, given that OS X's roots are indeed in free operating systems? (Much like the old Win2k networking stack, again from a BSD, I'd like to note).

    Nobody can really do anything useful with this code and even the projects in question aren't going to pick it up, diff it and start pushing things back into their projects. Apple are either drip-feeding approved patches to the projects (which WOULD be news), or it's some custom junk that was tacked on that only Apple really care about and they've just done a code-dump and left it somewhere.

    1. thames

      @Lee D - Apple is largely making the point that they are pushing their changes back upstream to the original projects rather than maintaining a separate fork with extra proprietary bits. Taking an MIT/BSD licensed project proprietary is something they could do if they wanted to, it's only GPL style licenses which require publishing the changes.

      Perhaps you weren't involved in the open source world at the time, but one of the most significant open source projects they used was the GCC compiler system, which was the basis of not only their C and C++ needs, but also Objective C was based on it. Next (before their merger with Apple) tried to do a proprietary fork (not publish their changes). However GCC is GPL licensed. It took the FSF saying they would not allow this (they consulted a lawyer, who said that under copyright law the angle that Apple was trying to use to get around the license would be considered a "subterfuge", and a judge would come down on Apple like a ton of bricks) to get Apple to publish the source. Following the Next merger however, Apple complied with the license in an very passive-aggressive manner, meeting the letter of the law while being as much of a knob end about it as possible. When LLVM became viable (it's still not quite up to GCC when it comes to speed though), they switched to that for their compiler back-end because the license on that is similar to BSD/MIT, which lets them do things like say make Swift closed source unless they felt they could derive some advantage from making it open source. Apple also initially took the passive-agressive approach to license compliance with KHTML (or "Webkit" as Apple likes to call it).

      Apple took a major black eye in the open source community from all that, so at every opportunity their PR department like to spout about what good open source community members they are because they use open source, etc., etc. The "contribute back" is emphasised because their allergic reaction to any sort of license which requires them to contribute back (e.g. GPL) makes people suspicious as to the depth of Apple's commitment.

      Of course while Apple was going around scooping up open source software (instead of buying an expensive license from AT&T) and packaging it with their product, Microsoft was going around saying that open source was "cancer" and that company directors would be going to prison if they used it (MS constructed an elaborate legal theory that claimed that using open source was a form of fraud under US securities laws). MS were also quietly channelling shed loads of money to SCO to go around and sue world plus dog.

      So while Apple isn't exactly the cuddliest company around so far as open source was concerned, they weren't the worst. And of course the Apple reality distortion sphere has fan boys proclaiming that Apple creates everything they touch.

      1. JLV
        Thumb Up

        +1 for balance & info quotient.

  3. Sr. Handle

    WebKit was very likely the most extended open source

    Perhaps if you measure the quantity of Apple open source doesn't look much but they released WebKit as open source and that piece of software was used by everyone from Google to Microsoft.

    1. Anonymous Coward
      Anonymous Coward

      Re: WebKit was very likely the most extended open source

      I dare say others will point this out, but WebKit is a fork of KHTML. KDE have a PR budget measured in beer and t-shirts, Apple had Jobs 'launching' WebKit at keynotes, so it's not entirely surprising you think Apple created it. Google are huge contributors too of course.

  4. kryptylomese

    The "Darling" project seems to have been given up on:-

    https://www.darlinghq.org/

    http://arstechnica.com/information-technology/2013/08/os-x-apps-run-on-linux-with-wine-like-emulator-for-mac-software/

    But it should be much easier to implement it now?

    1. 45RPM Silver badge

      @kryptylomese

      I was looking at Darling just the other day - but this probably doesn't make their work any easier.

      You see, this isn't really anything all that new - the source code for Darwin and the kernel for Yosemite has been out for a while now - and, if you go back as far as Leopard, you even used to be able to download an image of the full built OS. So, as you can see, this doesn't give Darling anything that they didn't have already (it just gives them a newer version)

      I used to use Darwin on my PC, and I liked it a lot. Scarcity of software, and lack of time to build for myself from the sources, pushed me into the arms of Ubuntu - and there I've stayed. The CLI isn't quite as nice (there are tools and ways of working on Darwin that I prefer), but the overall experience is a great deal better.

    2. Dave 126 Silver badge

      'Darwin' underpins OSX, and Apple have always made it open source. However, it doesn't include lots of Apple's propriety OSX gubbins, such as the GUI elements, so it cannot run OSX applications.

      1. Anonymous Coward
        Anonymous Coward

        Job's the marconi of his day!!

        As in: takes other peoples work, messes around with it, then claims it as his own and patents it!!..

        What a TW4T!

        Seems like Post Jobs Apple is keeping up the good work!!

        Bunch of Barstewerd's

        1. BenDwire Silver badge
          Headmaster

          Re: Job's the marconi of his day!!

          Don't you mean Thomas Edison?

        2. Anonymous Coward
          Anonymous Coward

          Re: Job's the marconi of his day!!

          I'm not sure some of you get what open source is. I am sure that it's not helped by the indoctrination from the loonies over at the FSF though. The GPL is a closed source license in all reality. Open is BSD.

          1. Ken Hagan Gold badge

            Re: Job's the marconi of his day!!

            "The GPL is a closed source license in all reality."

            This must be some new meaning of the word "reality" of which I was not previously aware.

            1. Charlie Clark Silver badge

              Re: Job's the marconi of his day!!

              The GPL may not be closed but it certainly is restrictive. BSD licence is attribution and caveat emptor only.

              YMMV

              1. SImon Hobson Bronze badge

                Re: Job's the marconi of his day!!

                The GPL really isn't restrictive at all.

                It explicitly says you can take the GPL licensed software and do whatever you want with it. You really, really can use it for anything, and modify it as much as you like - no restrictions, none at all (well almost).

                Want to use it to run a nuclear power station - fine, unlike most "proprietary" software.

                Want to build it into a bigger system and charge money for it - fine.

                There really is only one restrictions - you can't try and restrict what anyone else can do with that same software (or derivatives you've created of it).

                Of course, many don't understand the GPL - I suspect mostly that's deliberate. They misrepresent it because for many it represents something "bad" - the classic case being how Microsoft describe open source as a cancer, because with GPL software Microsoft can't take it, tweak it a bit, and claim it as their own work.

                If you consider "can't steal someone's work and claim it as your own" as restrictive, then you've been listening to the money boys too much.

                1. 45RPM Silver badge

                  Re: Job's the marconi of his day!!

                  @Simon Hobson

                  With regard to Microsoft's views of the GPL, I think that mainly applies to Steve Ballmer. But Ballmer wasn't the smartest tool in the shed (which explains Microsoft's precipitous decline in his tenure). Now that Nadella chap is an entirely different kettle of cleverness - and we don't know what his views on the subject are.

                  My problem with the GPL is that it explicitly states that the source code must be published - and there are times where that might be undesirable for competitive reasons. Attribution, I have no issue with - but source code publication? No - that's not for me. LGPL 'fixes' GPL - but I tend to prefer the BSD license (which didn't need 'fixing' to begin with.)

                  That said, I can also see the point of GPL for some - and so isn't it wonderful that we have a choice of license, and we can choose the one that suits us best?

                  1. SImon Hobson Bronze badge

                    Re: Job's the marconi of his day!!

                    > My problem with the GPL is that it explicitly states that the source code must be published - and there are times where that might be undesirable for competitive reasons

                    Let me translate that for you, what you really meant to write was "we want to use someone else's software for free but not contribute in any way to the software pool". In other words, the GPL is inconvenient to leaches.

                    Now the thing is, the GPL does not in any way whatsoever, ever, require you to publish your own source code - because you always have the option of not trying to rip off someone else's work. It's like most things - if you don't like it, don't use it. Just like, if you don't like paying $company for their software, then don't use it !

                    And don't forget, just because GPL software is used in your project, that doesn't automatically mean you have to publish ALL your source (that's a bit of FUD often thrown at it). Yes, if you link some bit of GPL code into your large blob then the whole blob is covered - but if you are just dynamically linking to libraries then your own code can remain closed.

          2. JLV
            FAIL

            Re: Job's the marconi of his day!!

            >GPL is a closed source license in all

            That's stupid as it comes. This is from someone who far prefers BSD to GPL and it's still stupid. No need to be a Stallman and crap on everyone you disagree with. Both have their place.

            1. Rob Gr

              Re: Job's the marconi of his day!!

              "No need to be a Stallman and crap on everyone you disagree with. Both have their place."

              Personally, I think the writers of software should be free to use whatever software they choose to build their products (as long as they recursively abide by the licenses thereof), and be free to release their software under whatever license they choose (subject to the restrictions of products they use).

              That's real freedom.

              Naturally, I have my own preferences (MIT/BSD), but those are just my preferencs. YMMV.

  5. Anonymous Coward
    Anonymous Coward

    Most closed walled garden company

    Tells idiot users how open they are.

    Compared to Google where their entire mobile platform is opensource, their browser too, who bought VP8 and immediately opensourced it, apple are pretty much north Korea of the opensource world.

    https://github.com/google

    https://android.googlesource.com

    https://github.com/chromium

    1. Microchip

      Re: Most closed walled garden company

      I'd agree that Google opened a lot of their stuff up from the early days, but unfortunately the likes of Android are getting more and more closed into a binary blob of "Google Play Services", and the Google apps that go with them only officially run on "authorized" platforms. They're pulling the noose a bit tighter nowadays, for commercial/control reasons no doubt - there's a lot of crappy Android platforms (from a user's point of view) out there as a result of the openness of the core OS.

  6. Anonymous Coward
    Anonymous Coward

    "key part of its ongoing software strategy"

    Sure, it did beat the dead OS 9 horse for so long it was in underpants when it needed a modern OS kernel and libraries - and having no time to write one fully it had to borrow from open source out of dire necessity... the only other option would have been to ask MS to write AppleWOS... <G>.

    1. /dev/null

      Re: "key part of its ongoing software strategy"

      Apple had plenty of time to write a modern OS and made several attempts to do so (Pink, Taligent, Copland). None of them worked out very well, hence the need to co-opt NeXTStep, which had borrowed from open source (4.3BSD, Mach) several years before Apple got their hands on it.

  7. DerekCurrie
    Holmes

    Apple has been involved with 300+ Open Source Projects Since OS X

    Odd as it is for Apple to say it is "the first major computer company to make Open Source development a key part of its ongoing software strategy"...

    Apple has been involved with Open Source projects for decades. Recall the MKLinux project back in the mid-1990s. When Apple bought NeXT, it brought in an operating system fundamentally based on open source software, starting with the Mach kernel. By the time of the release of Mac OS X, Apple was involved with 300+ open source projects and has expanded from there.

    1. Charlie Clark Silver badge

      Re: Apple has been involved with 300+ Open Source Projects Since OS X

      Maybe but it's contributions back then paled in comparison with others such as IBM and HP.

      It curates WebKit and CUPS. However, since establishing the ITunes walled garden, the company's enthusiasm for interoperability in all things web has become remarkably tepid. Leaving mainly CUPS as an example of a company that takes open source seriously. Though I suspect we may see some contributions to LibreSSL, assuming this has been adopted as the replacement for OpenSSL in El Capitan.

  8. Tsiklon

    Hasn't that header "the first major computer company to make Open Source development a key part of its ongoing software strategy" been there for ages...

    i remember seeing it years ago doing my BSc... http://web.archive.org/web/20121027065212/http://www.apple.com/opensource/

  9. JaitcH
    WTF?

    Apple Ordered To Pay $234m In Damages To University Of Wisconsin

    A lawsuit filed against Apple with regards to patent infringement back in 2014, in which it was alleged that Apple had infringed upon a patent for a predictor circuit that was used in the A7, A8, and A8X chipsets.

    Apple attempted to get the patent invalidated with no success.

    Perhaps this is what Apple calls 'open source software'. Another word is theft.

    1. SImon Hobson Bronze badge

      Re: Apple Ordered To Pay $234m In Damages To University Of Wisconsin

      Patent infringement is completely unrelated to whether anything is closed or open source. So the comment is really completely irrelevant.

  10. Anonymous Coward
    Anonymous Coward

    Webkit is open...

    but the complaint was that Apple froze it in time so we got Blink and its HTML 5 compliance.

    So, is open source good whilst looking set in concrete?

  11. Peter 39

    source code actually quite useful

    In one gig, access to the networking source was absolutely crucial to be able to build in-kernel network plugins. To say nothing of how different the packet handling was from the STREAMS code in classic Mac OS.

    In another, we were building custom kernels with added security. Some of which Apple has incorporated (our changes went back to Apple under the open-source rules).

    The disinterest might be widespread but it's far from total.

  12. Walt French

    “Finally,” WTF?

    It's been an agonizing 70 days since El Cap was released to the public, during which time everybody has been worried that Apple would renege on its open source commitments.

    What do people actually DO with Darwin, anyway? Who prefers Apple's flavor of Unix for anything other than academic investigation? Were people dying to incorporate the recent changes in networking, not relying on other approaches?

    1. Charlie Clark Silver badge

      Re: “Finally,” WTF?

      I think you need to ignore the clickbait.

      Darwin has always been open source but Apple's release of the source is notoriously haphazard. Yes, people do care about it and Apple gets free peer review: everyone's a winner.

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like