18 ms·
Apple Open Source
- bredren 5y agoThis is a redesigned site as per https://www.macrumors.com/2021/12/08/apple-launches-redesigned-open-source-website/ https://www.macrumors.com/2021/12/08/apple-launches-redesign...
- colejohnson66 5y agoOh wow. I literally visited this page last week and it was the same layout that it’s been for years. I was wondering when they’d update it to be more Apple-esque
- lrvick 5y agoIt is -because- Apple is opposed to Open Source that they are unable to even ship a version of bash from the past 10 years out of fear of the big bad GPLv3 licensing might make them actually allow public auditing of their proprietary OS. The Apple commitment to Open Source is mostly one direction and largely limited to cased where they have no legal choice such as GPL. They allow some contributions to happen to appease Apple engineers they want to retain, but as a whole Apple is fundamentally committed to walled gardens. https://github.com/apple-oss-distributions/bash/tree/bash-123.40.1 https://github.com/apple-oss-distributions/bash/tree/bash-12...
- new_realist 5y agoDarwin, Apple's OS, is open source.
- snazz 5y agoCalling it an OS is a bit generous—although XNU is open-source, actually getting it running on hardware from just the publicly released parts is not particularly feasible. PureDarwin exists, but it's mostly just a curiosity to run in QEMU at this point.
- makeitdouble 5y agoIt is, but it's also a complicated story that doesn't seem to go well. Basically past honeymoon period, the open source part of the project just was increasingly left on the side of the road. https://en.wikipedia.org/wiki/Darwin_(operating_system) https://en.wikipedia.org/wiki/Darwin_(operating_system)
- webmobdev 5y agoSince macOS is / was a port of xBSD, how much difference is there between Darwin and xBSD kernel?
- bch 5y agoThe userland was largely BSD, but the Mac kernel was a Mach kernel w a BSD shim for syscalls, iiuc.
- heavyset_go 5y agoA significant part of the FreeBSD kernel was used in XNU.
- lrvick 5y agoAnd yet it is not possible to run a single MacOS targeted GUI application on it without many proprietary components on top.
- lokar 5y agoWhat about FDB?
- nojito 5y agoGPL != OpenSource
- karmakaze 5y agoGPL == OpenestSource
- cwp 5y agoNah. That's probably MIT.
- PaulDavisThe1st 5y agoDepends on whether you think "openest" means "most free to do whatever you want with" or "most guaranteed to remain open" ...
- cwp 5y agoYeah, I'm familiar with the FSF's philosophy. Limiting freedom in order to protect it. No thanks. It leads to exactly the sort of problem pointed out by the GGGGP comment - Apple shipping an ancient version of bash because of license incompatibility. Apple cannot open source all of their software. They'd go out of business. So instead we have GNU folks high-fiving because they stopped Apple from using their work without giving back, but millions of users are also prevented from using their work.
- PaulDavisThe1st 5y agoNobody is prevented from using newer versions of Bash. They just don't ship from Apple.
- jw14 5y agoUntil this moment I didn't know the Apple version of bash was outdated, I reluctantly started using zsh when Apple defaulted to that. Now I don't care about bash. Was that good for bash?
- outside1234 5y agoThey do contribute to Kubernetes, albeit at a pretty low level, and for self serving needs.
- rvz 5y agoWithout WebKit being open source and maintained, Chrome would never have existed.
- VWWHFSfQ 5y agowasn't that just a fork of khtml. what exactly did apple do
- olliej 5y agoRewrote the entirety of it, added most of the new features for the web over more than a decade? Or do you believe chromium is also “just a fork of khtml”?
- VWWHFSfQ 5y agoyes they're all derived from the fork of khtml. is that what you're asking?
- olliej 5y agoNo, I was asking about "just a fork of khtml". That implies that there wasn't meaningful work. WebKit is at this point (and probably a decade ago) a functionally complete rewrite. When webkit forked KHTML, KHTML couldn't render the vast majority of the top 100 websites properly, just by the time the first safari was released webkit was already able to render those correctly, or in many cases even usably. When I say WK rendered correctly, I mean matching Firefox/Explorer, not just a bare "is useable".
- djxfade 5y agoNot saying you are wrong, but I remember that KHTML was the first renderer that was able to pass the ACID2 test. So this doesn't sound right to me
- randomdata 5y agoIn in alternate universe Chrome would have adopted KHTML.
- tw04 5y ago>out of fear of the big bad GPLv3 licensing might make them actually allow public auditing of their proprietary OS. Or because, you know, they make money selling that OS. And they understandably have no desire to make the entire thing GPLv3. And they also have countless contractual obligations to other vendors whose closed-source code is also bundled in OSX. I find this attitude kind of troubling around here when every other day there's some "open source" project that has had to change licensing because insert cloud provider is stealing their lunch making it impossible for them to make a living. It turns out that someone has to pay the bills, and giving all of your software away isn't a great way to do that. Outside of Redhat, barely anyone has figured out how to make a business out of giving away software, and I'd argue the sale to IBM shows that even Redhat saw the gorilla that was AWS standing in the corner and decided it was time to throw in the towel.
- Rebelgecko 5y agoApple hasn't made money from selling their OS for almost a decade
- wk_end 5y agoYes and no. I'm sure they'd lose approximately some customers if were as easy to install macOS on commodity hardware as it is to install, say, Linux.
- lrvick 5y agoThat is already true anyway with OSX86. I have known a number of people too poor to afford macs that rig up a hackintosh. Apple has never stopped the DIY crowd. Their core market is the people that want the support and the branded aluminum.
- bigfudge 5y agoThat’s not strictly true. It’s hard work keeping a hackintosh working. I think apple is part of that.
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]
- Sophistifunk 5y agoThis is a pile of horseshit not even worth refuting in detail.
- AlphENsign_Tech 5y agoworking /w OS projects from apple would eventually do the apple thing, forcing one to learn a certain dependency/tool over another
- haunter 5y agoTIL Apple Chess is based on sjeng https://github.com/apple-oss-distributions/Chess/tree/Chess-410.4.1 https://github.com/apple-oss-distributions/Chess/tree/Chess-...
- xyyzy 5y agoDid you also know that it actually spawns the `sjeng` command line binary as an NSTask and attaches to stdin and stdout. So basically it’s just a fancy GUI around the Text based UI :)
- DaiPlusPlus 5y agoI'm curious why Mach/Darwin/XNU is entirely absent from that page.
- nojito 5y agohttps://opensource.apple.com/releases/ https://opensource.apple.com/releases/ XNU is there
- jay_kyburz 5y agoHey, how come nobody has used webkit instead of chrome as the basis for an alternate browser.
- karmakaze 5y ago[0] https://en.wikipedia.org/wiki/List_of_web_browsers#WebKit-based https://en.wikipedia.org/wiki/List_of_web_browsers#WebKit-ba...
- can16358p 5y agoFor completeness sake, anything on iOS needs to be (App Store guidelines) actually Safari under the hood, hence WebKit. That's why there are so many iOS browsers being WebKit.
- AprilArcus 5y agoThey did. It's called Chrome.
- true_religion 5y agoAll browsers on iOS are based on WebKit. It’s an Apple requirement.
- MBCook 5y agoThat’s not exactly true. They’re not based on Safari, they ARE Safari. The browser maker controls the chrome and can add some kids of features (bookmark/history sync, password management/etc.) but they can’t modify the rendering engine outside of any hooks Apple provides them. It’s not like when Google forked WebKit to make Chrome on the desktop and could truly modify it. On iOS you can’t add new tags or syntax, as a simple example.
- yjftsjthsd-h 5y agoThat makes them WebKit, not Safari; they share the engine, not the chrome.
- jay_kyburz 5y agoAlso, how come Swift has not taken off outside of Apple?
- protomyth 5y agoI would imagine the churn is a big killer and lack of decent documentation on the current version. Apple cannot even keep their example code for their platform up to date. If you are on the Apple platform you have to deal with it, but there are other, stronger ecosystems for other language on other platforms.
- unix_fan 5y agoApple documentation has been like this for years, and its not even limited to swift.
- unix_fan 5y agoWhy would you learn it if you aren't targeting apple users.
- elpakal 5y agomillion dollar question right here
- user-the-name 5y agoBecause it is a really, really good language? It's easily the best language I've used, and I've used many.
- oscargrouch 5y agoIts in the Java, C# family of languages, where you can do pretty powerful things without the complexity of the likes of C++ and (now Rust) with a very good performance. And when you take the family Swift is in, (now also with Kotlin), i consider it the best language over its peers not only given the design, but the fact that being AOT compiled from the start it's of great value. Having said that, i feel inclined to invert the question as, why i would not want to use and learn it? In my experience at least, a lot of IT folks, just don't have the mental energy for the likes of C++ and Rust, but can peak at a language like Java which can already be complex enough. For instance, i deal mostly with C++ all day, and i don't think i would choose it if i were to create an application with buttons, multi-media, etc.. Nor Rust(same problem as C++) or Go(poor design for that goal). Given there's a language like Swift which combines the design and speed/efficiency to create such a thing. If i were to create a backend service for instance, i would take Go into consideration, and probably in that case it would be a better fit than Swift or Rust or C++.. So its about being the right tool for the job.
- est31 5y agoWhy is Kubernetes up there? Webkit and Swift I get, they are two major projects started and maintained by Apple people. But I can't find Apple mentioned a single time if I ctrl+f in the the Kubernetes Wikipedia article. Nor has it apparently been started by Apple employees. On the other hand, I wonder why they haven't included LLVM. It has been led for a long time by Apple employees, and even if you look at the top 10 contributors on Github from last year, you'll find two Apple employees, so there is continued commitment (maybe there are more, I couldn't identify employers for all of them). Edit: seems that the frontpage only shows a selection. LLVM is present if you click the "View all projects" link.
- t3rabytes 5y agoThey do contribute a decent bit to Kubernetes per https://k8s.devstats.cncf.io/d/9/companies-table?orgId=1 https://k8s.devstats.cncf.io/d/9/companies-table?orgId=1, but they’re still prettyyyyyyy low on the list (31 as of this writing).
- benatkin 5y agoThey're using opensource.apple.com it as a recruiting tool. Every big company embellishes things when recruiting.
- pxc 5y agoYou can tell their 'contributions' are not in good faith if you follow any downstream project that actually tries to build (or even just build against) their open-source code. Lots of it requires proprietary tools to build, source releases lag way behind their binary counterparts, sources and headers sometimes just disappear with new versions, lots of downstream patches and hacks are required to get things working, etc. Every project that actually tries to build Darwin (the open-source components of the OS) into a usable (headless) OS has foundered, and often the death blow is Apple just ceasing to release required sources. Whenever one such project is kinda working it seems to be just barely getting by.
- samhw 5y ago
- elpakal 5y agoWhat about all the other Swift packages like Swift Algorithms, Collections, Numerics etc?
- sparky_ 5y agoThis is interesting from the external perspective, but let me provide the internal one: Employees are prohibited from so much as _thinking_ open source for anything not directly managed or maintained by Apple. Swift is one thing, but suppose on your own time, you had OSS interests. It was made abundantly clear to we lowly SWEs that _any_ perceived OSS participation - so much as commenting on a GitHub issue - without approval would be cause for immediate termination. Said approval requires the unanimous approval of multiple SVPs, including Federighi and Schiller themselves. IIRC the number of Apple employees given such arrangements was in the low 50s last I checked.
- mroche 5y agoIf true, the only question I have is "why?". Assuming the OSS projects aren't a conflict of interest, there is zero reason to block people in their own free time from working on other projects. Blocking any form of participation, even non-code contributions is extreme. This sounds similar to Amazon policies I'd read on HN, but I can't remember if they were barring OSS activity or claiming ownership of. As a Red Hatter I find this mindset mind-boggling, but I'm heavily biased and on the complete opposite side of the spectrum. There's always a balance to be struck around policy depending on the org/industry/etc, but a blanket "no" is ridiculous.
- aaplthrow11 5y agok
- wonnage 5y agoNot a great look for someone who’s “18 years and a director” at Apple to openly acknowledge this policy as well as being extremely defensive/borderline threatening about it.
- deleted 5y ago[deleted]
- 5y ago
- rektide 5y agoI mean, like, congratulations to whomever it is that actually worked to try to make the worlds most vast & advanced computer empire seem like anything other than a insular, dark, consumer-supplying fixer. I'm glad there's the bare minimum of sticks to try to rub together to give the impression Apple gives the faintest most minimal flying fuck about any compute other than Apple computing, that they see any value in a bigger computing ecosystem. Apple is not at all a company that gives any impressions that they care about anyone but those that fall within the light of their empire. When presented with challenges about what restraints they impose on computing, the default response seems to be, there are other platforms available for anyone who cares about choice or empowerment: here in Apple-land, our vassals are secure, served adequately. Trust us. All else is tertiary at best. I still think the impression being given off here is pretty radically fantastically unrealistic. As far as I have heard, one of the primary terms of employment at Apple is that you basically have to give up yourself wholly to Apple. Your blog has to die, your personal open source projects are all dead now, you are now, wholly Apple, and anything you do must be Apple's. This is just the opening terms of un-openness that greet you if you want to join Apple. Almost nothing about this company speaks to collaboration or cooperation or general betterment of computing. Apple thrives off the futility of computing. Their whole essence is that of savior, making software for their following that serves them well, amid a world of grayer concerns and wider difficulty. The idea that open computing could be competitive, could be helpful in the planet: it's antithetical to the premise of the High Consumerism that is Apples most core being.
- eredengrin 5y ago> Apple is not at all a company that gives any impressions that they care about anyone but those that fall within the light of their empire Based on some of the experiences I've heard from iOS devs, I'm not even slightly convinced they care at all about most of the people in their empire either (unless said empire is excluding non-apple devs).
- samhw 5y ago> I'm not even slightly convinced they care at all about most of the people in their empire either (unless said empire is excluding non-apple devs) I'm not quite sure they care about Apple devs either: https://news.ycombinator.com/item?id=29493643 https://news.ycombinator.com/item?id=29493643
- ilovwindows 5y agoIt's clearly shows Apple doesn't support Open Source. So few projects. It's embarrassing for the company which sprout out of an Open Source project. For those who don't know, MacOS is a fork of FreeBSD.
- jdworrells 5y agoCareful with that assertion. macOS is a derivative of NextStep, which is a derivative of 4.4BSD which also spawned FreeBSD and NetBSD. That makes macOS and FreeBSD cousins at best. See https://en.wikipedia.org/wiki/Unix-like https://en.wikipedia.org/wiki/Unix-like
- einr 5y agomacOS is absolutely not a FreeBSD fork, but there are lots of bits and pieces in current macOS that are direct derivatives of FreeBSD code, including kernel code, libc and lots of userland stuff. https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/KernelProgramming/BSD/BSD.html https://developer.apple.com/library/archive/documentation/Da... "The BSD portion of the OS X kernel is derived primarily from FreeBSD, a version of 4.4BSD that offers advanced networking, performance, security, and compatibility features."
- pornel 5y agoThat was decades ago. Since then Apple went their own way. Anything of significance has been rewritten or mothballed as legacy baggage. Their open-source efforts were left to wither and die. It's been 14 years since Apple got scared of GPL3 and abandoned everything GNU-related.
- sekh60 5y agoIf FreeBSDers want to complain they should have used the GPL.
- ogrisel 5y agoApple engineers recently started to contribute bug reports, root cause analysis and even fixes to solve compatibility issues with their hardware and software platforms via a shared github account: https://github.com/Developer-Ecosystem-Engineering https://github.com/Developer-Ecosystem-Engineering For instance for NumPy: https://github.com/numpy/numpy/pull/19926 https://github.com/numpy/numpy/pull/19926 Although it's weird to interact with such an anonymous account in github discussions, it is very welcomed by the maintainers of those projects because debugging without assistance those low-level platform specific issues was a significant maintenance burden.
- b3morales 5y agoDoesn't GitHub require 1-person-1-account? I hope that does not cause trouble.
- mikotodomo 5y agoWow, in that bug report I can barely understand what he's talking about. I guess I really do have a long way to go. Thank God Apple is contributing such high caliber contributions to open source. This is why I use MBP.
- betimsl 5y agoOnly 12 projects. I thought my CV was poor.
- southerntofu 5y agoThis is a typical case of openwashing. Just like Microsoft, Apple only opensources what they are legally obliged to or sideprojects they don't care about at all for business. And just last year, they silently stopped dedicating resources to CUPS (the printing server). The site says: > You can access the source code for our operating systems and developer tools Yes of course please send me the entire code for MacOS + XCode. I'm waiting! Fuck you hypocritical liars.
- zionic 5y agoApple would never allow the 3 interns working on Xcode to open source it, they couldn’t stand the embarrassment.
- intvocoder 5y agoThe creator of CUPS was employed by Apple, to work on CUPS. He left, and doesn't work on CUPS anymore. It's not some cloak-and-dagger thing.
- pxc 5y agoThe creator of CUPS does still work on CUPS. He had to fork the repo in order to keep working on CUPS after Apple didn't accept any patches and added only a single commit to CUPS in the course of an entire year. his fork: https://github.com/OpenPrinting/cups https://github.com/OpenPrinting/cups Cloak and dagger? no Terrible stewardship of an open-source project? yes Surprising, given Apple's history? not at all
- GeekyBear 5y agoApple moved to the Internet Printing Protocol (which they brand as AirPrint), just as Google did (after they killed Google Cloud Print) and Microsoft (branded as Universal Print). The last thing Apple did with CUPS is add functionality to allow legacy printers that don't natively support IPP to function as an IPP printer. >Products using the Internet Printing Protocol include CUPS (which is part of Apple macOS and many BSD and Linux distributions and is the reference implementation for most versions of IPP https://en.wikipedia.org/wiki/Internet_Printing_Protocol https://en.wikipedia.org/wiki/Internet_Printing_Protocol Going forward, the Printer Working Group is in charge of IPP, and the creator of CUPS now works for them. https://www.pwg.org/ipp/ https://www.pwg.org/ipp/
- rg111 5y agoLooking at the logos and naming of the OS projects by Apple, I must say that it is weird how consumer facing and polished Apple is. Instead of hack-y names, that consists of but not limited to sci-fi reference, generic names etc., they have corporate-like names like WebKit, ResearchKit, CareKit, etc. So weird. ______ Also, TIL there is something called Objective-C++.
- CosmicCarl 5y agoIt's a real desert.