6 ms·
Apple itself when I worked there was strict on having no gpl3. But everything on the inside is Linux. They even have their own version of arch (and Java and spr
by flatiron 4y ago
Apple itself when I worked there was strict on having no gpl3. But everything on the inside is Linux. They even have their own version of arch (and Java and spring boot which is what I did)
- pabs3 4y agoWhy are Apple using Linux instead of macOS?
- flatiron 4y agoSo they can use servers? And those people who write that software for those servers can test. You think iCloud is off Mac minis?
- oefrha 4y agoWell, in the old days Apple did use some Xserves.
- pabs3 4y agoI figured they would have an internal build of macOS for servers, seems like the logical thing to do.
- ravi-delia 4y agoI feel almost disappointed they don't at least run FreeBSD, but I guess it makes sense. They make a desktop OS, and most of the talent on the market has used Linux.
- WastingMyTime89 4y agoIt seems cheaper to just sign a large service contract with a company for which building a server OS is the core competency. Apple is very much not an engineering-first company. They make very logical decisions from a business-first point of view.
- flatiron 4y agoThey don’t want to port all that software to a secret OS that isn’t supported upstream. Also much of apple, like I was, were contractors. So your there for a bit to do a thing. People know Linux so that’s what they use. Honestly much of what I did was on Amazon Linux 2 because it was just their own custom AMI on EC2
- stormbrew 4y agoDarwin is incredibly poorly optimized for server workloads, and it would require a lot of developer resources in the wrong part of Apple. OS dev is all on the 'product' side, under Craig, the part that ships hardware -- Services, under Eddie, are where the server workloads are needed and the two orgs' reporting chains meet at Tim. This is also why Swift on Linux is kind of a (well-intentioned) afterthought that no one is really using on the server side even at Apple, since devtools is also under product. Server workloads are almost universally run on RHEL of some variety, presumably because (as sibling post mentions) of long term support contracts.
- pabs3 4y agoSo nothing on Apple servers is written in Swift, interesting. I guess that is because Swift is aimed at replacing ObjC in the app programming space.
- stormbrew 4y agoI should clarify: I didn't mean to say nothing[1], but it's certainly not common. The vast majority of server stuff at Apple is written in Java (which goes way back), with Go becoming more and more common and some Rust popping in around the lower level stuff. I'm sure there's some Swift in there somewhere but it wasn't anywhere I could see while I worked there. Ironically, I was involved in the effort to port swift to linux so you'd think I'd know. The team I was on eventually moved most of our work to Rust (it was, also unusual for apple, written in C before). [1] And anyone who would ever come into HN and tell you anything about what goes on inside apple could never tell you anything with that level of certainty because even in Services where things are generally more open, stuff is still very siloed and fragmented and no one has a complete picture of what's out there.
- barefeg 4y ago> even in Services where things are generally more open, stuff is still very siloed and fragmented and no one has a complete picture of what's out there Not even Eddie?
- gh02t 4y agoApple gave up on the serious server market ages ago, especially the enterprise market. What else other than Linux are they gonna use? Windows? Maybe BSD would fit better with their lineage, but Linux has far better enterprise vendor support.
- KerrAvon 4y agoIt’s not unreasonable from the outside to think a custom server-tuned version of Darwin would make sense for Apple’s in-house server needs.
- metadat 4y agoThe reality of Apple internal systems: Things are mostly stuck together with duct tape. There is no Temple of Purity. It's a beautiful fantasy, though.
- ThePowerOfFuet 4y agoIt shows.
- pjerem 4y agoTo be honest, I have yet to see a company where internal things are not mostly stuck together with duct tape.
- mghfreud 4y agoProbably Google?
- WastingMyTime89 4y agoDoubtful. Even their customer products used different OS. It’s probably a controlled mess.
- 4y ago
- heavyset_go 4y agoLack of native Linux-like containers would be a big one, in the age of container orchestration and clusters.
- yjftsjthsd-h 4y agoOkay, but they're Apple. They could add jails. They could even hack it in by dropping in FreeBSD code, again. (Yes, XNU isn't really BSD, but they're kind of BSD when facing towards userspace so it should work.)
- flatiron 4y agoThey could. Then what software would run on it. What sort of tech talent would operate it.
- yjftsjthsd-h 4y agoIf it only made Darwin jails, then it could still run any native software, and would likely end up running a lot of homebrew/macports. (This started by discussing Apple internal servers, so just running their own stuff plus nginx et al. would be fine.) Or, they could take another cue from FreeBSD and illumos and add a Linux personality, or do like illumos and NT and bake in a VM that was seamlessly integrated and use an actual Linux kernel to run stuff.
- gglitch 4y agoMan it would be so awesome if MacOS had jails. I’m off Mac, and that wouldn’t get me back on it, but it would be amazing.
- jbhouse 4y agowhy would they create their own version of spring boot? so they have more code to maintain and it takes longer for new devs to get ramped up?
- flatiron 4y agoIt’s really just the same. The name is escaping me. It basically rips out the parts they didn’t want people to use, configures it how apple wants, and is pulled from the repositories. Just like Java it’s the same shit with some patches. It’s not a true fork.