Remix.run Logo
mikece 3 days ago

I'm curious why Apple doesn't support this effort: they have done a lot of the work and it won't exactly harm their market share.

dzogchen 3 days ago | parent | next [-]

I'm curious why you think Apple would support any effort that does not benefit their bottom line?

justin66 3 days ago | parent | next [-]

There's a case for it when it comes to FreeBSD specifically, since macOS uses some code from FreeBSD.

stackghost 3 days ago | parent | next [-]

There's zero business case because they want to sell you a laptop and subscription to iCloud.

Improving FreeBSD will make it easier to run BSD on non-apple hardware which will eat into their bottom line.

The number of people who will buy a Mac to run BSD is a rounding error, and those people won't buy iCloud subscriptions anyway.

justin66 3 days ago | parent [-]

> Improving FreeBSD will make it easier to run BSD on non-apple hardware which will eat into their bottom line.

The number of people who want to run FreeBSD on their laptops probably numbers in the hundreds. Not exactly a threat to Apple's bottom line.

On the other hand, some of those people are FreeBSD developers who create and maintain code that Apple would like to have the option of using. That relationship is worth something to Apple.

stackghost 2 days ago | parent [-]

>On the other hand, some of those people are FreeBSD developers who create and maintain code that Apple would like to have the option of using. That relationship is worth something to Apple.

It wasn't that long ago that we used to have to endure HN commenters spamming the same copypasta every time BSD was mentioned: "did you know BSD runs your playstation and netflix and <...>. You should donate money!"

Evidently it's not worth more than the cost of assigning engineers to this, otherwise Apple would already be doing it.

justin66 2 days ago | parent [-]

I don’t really follow any of this cynical humor but

> otherwise Apple would already be doing it.

The gap between what Apple ought to be doing, even if for no other reason than its own good, and what Apple actually does is sometimes pretty wide.

reactordev 3 days ago | parent | prev [-]

NeXTSTEP did but that was in the 90s. When Apple bought NeXTSTEP (and Jobs returned to the helm of Apple), they used that OS as the basis for macOS X.

Due to GPL, they release the sources to the BSD code they use. Everything else is proprietary.

Likewise Sony used BSD for PlayStation OS. They publish the sources to the changes to BSD they made, the rest is proprietary.

bitwize 3 days ago | parent | next [-]

There's no GPL in the BSD sources used by Apple or Sony. They are free to release their operating systems as closed source; Sony does this. Apple releases Darwin sources "out of the goodness of their hearts", meaning, back in the 2000s they wanted to capture mindshare amongst the tech community for whom Linux was the strongest contender. Now that the future has refused to change, the year of the Linux desktop never materialized, and macOS has become the default developer's workstation OS, Apple has been much more sparing with Darwin source drops and may cease them altogether.

reactordev 2 days ago | parent | next [-]

https://www.playstation.com/en-us/oss/ps4/

https://opensource.apple.com/

GPL where applicable. If it's MIT or just "as is" then no, they won't but they definitely publish the sources to what they are required to. Since FreeBSD is "as is" 4.4BSD licensed, they aren't required to publish the sources of Orbis.

2 days ago | parent [-]
[deleted]
3 days ago | parent | prev [-]
[deleted]
p_ing 2 days ago | parent | prev | next [-]

Why would BSD use GPL?

BSD has a BSD license. It doesn't require source code releases.

reactordev 2 days ago | parent [-]

Only the kernel is BSD licensed, other tools in user land are GPL. Don’t be dense.

LeFantome a day ago | parent | next [-]

This is a wonderful self-own.

Perhaps the person you are responding to is dense enough to know that Apple uses a BSD licensed userland: https://github.com/apple-oss-distributions/file_cmds

Or perhaps they know that the entire system is built with Clang and LLVM and not GCC.

Apple distributes very little GPL code (like bash) and even then it is only GPL2 (older versions).

p_ing a day ago | parent | prev [-]

BSD utils in macOS are BSD licensed.

3 days ago | parent | prev [-]
[deleted]
themafia 2 days ago | parent | prev [-]

I'm curious why you think Apple making their hardware work with more operating systems does not benefit their bottom line.

Aside from that the answer is "Corporate Goodwill." That actually is a bottom line number that gets reported.

user_7832 2 days ago | parent [-]

> I'm curious why you think Apple making their hardware work with more operating systems does not benefit their bottom line.

Because they sell and advertise MacOS. Not "compatible with a wide range of OSes" (like say raspberry pis).

People buying a laptop due to goodwill and openness does happen (I bought my framework 13 due to that), but that's not a game Apple has played since Woz left - and for the worse, I think.

wpm 3 days ago | parent | prev | next [-]

Users buying Macs to put BSD on them are less likely to buy things in the Mac App Store.

jandrese 3 days ago | parent | prev | next [-]

Apple's attitude towards other OSes running on their hardware is less "supportive" and more "barely tolerates". Also as a general rule Apple doesn't contribute much to open source outside of some high profile projects like Swift and Webkit.

LeFantome a day ago | parent [-]

As somebody using a Linux distro compiled with Clang, I consider the work on LLVM to be Apple’s greatest contribution to Open Source.

I have seen others say that CUPS is.

And there is libdispatch, mdns, etc.

Anyway, they contribute more than you think.

OsrsNeedsf2P 3 days ago | parent | prev | next [-]

I still remember when MacOS being based on BSD had the community excited about the future

ndiddy 3 days ago | parent | next [-]

Interesting article on the failure of Darwin as an open source project: http://www.synack.net/~bbraun/writing/osfail.html

bluGill 3 days ago | parent | prev [-]

MacOS was never based on BSD. Apple developed the USB drivers for BSP so they could copy it into their OS, but that very different from based on BSD. (It is likely some other parts are copied as well)

reactordev 3 days ago | parent | next [-]

MacOS was absolutely derived from BSD through NeXTSTEP.

AdieuToLogic 2 days ago | parent | next [-]

> MacOS was absolutely derived from BSD through NeXTSTEP.

The OS-X (now branded as "macOS") kernel was not, and is not, a derivative of the FreeBSD kernel, or any other BSD, even though macOS/OS-X has a FreeBSD kernel component due to its Mach heritage. The userland tools are however BSD. OS-X's kernel is XNU and from the XNU GitHub repo[0]:

  XNU kernel is part of the Darwin operating system for use 
  in macOS and iOS operating systems. XNU is an acronym for X 
  is Not Unix. XNU is a hybrid kernel combining the Mach 
  kernel developed at Carnegie Mellon University with 
  components from FreeBSD and a C++ API for writing drivers 
  called IOKit. XNU runs on x86_64 and ARM64 for both single 
  processor and multi-processor configurations.
I recommend the book "Mac OS X Internals"[1] for a detailed analysis of same.

EDIT:

In theory, XNU could simultaneously run the existing FreeBSD subsystem alongside Linux and/or MS-Windows ones. In practice, this would be a herculean effort fraught with difficulty.

See QNX[2] for another example of a micro-kernel OS architecture.

0 - https://github.com/apple-oss-distributions/xnu

1 - https://books.apple.com/us/book/mac-os-x-internals/id4343583...

2 - https://en.wikipedia.org/wiki/QNX

p_ing 2 days ago | parent [-]

Apple outlines the architecture here - https://developer.apple.com/library/archive/documentation/Da...

reactordev 2 days ago | parent [-]

>Darwin is based on proven technology from many sources. A large portion of this technology is derived from FreeBSD, a version of 4.4BSD that offers advanced networking, performance, security, and compatibility features. Other parts of the system software, such as Mach, are based on technology previously used in Apple’s MkLinux project, in OS X Server, and in technology acquired from NeXT.

Exactly.

AdieuToLogic 2 days ago | parent [-]

>>Darwin is based on proven technology from many sources. A large portion of this technology is derived from FreeBSD, a version of 4.4BSD that offers advanced networking, performance, security, and compatibility features. Other parts of the system software, such as Mach, are based on technology previously used in Apple’s MkLinux project, in OS X Server, and in technology acquired from NeXT.

> Exactly.

  Darwin != XNU
  userland tools != Darwin
Also, Mach[0] was created by CMU 40 years ago and is not "based on technology previously used in Apple’s ..." no matter what Apple claims.

Since you quoted from the provided archive, so shall I.

  The fundamental services and primitives of the OS X kernel
  are based on Mach 3.0. Apple has modified and extended Mach
  to better meet OS X functional and performance goals.[1]
Apple named the above "XNU". Since Mach[0] is a micro-kernel architecture, which FreeBSD is not and never has been, there must exist:

  The BSD portion of the OS X kernel is derived primarily
  from FreeBSD[2] ...
What I originally stated was:

  The OS-X (now branded as "macOS") kernel was not, and is
  not, a derivative of the FreeBSD kernel, or any other BSD,
  even though macOS/OS-X has a FreeBSD kernel component due
  to its Mach heritage.
In response to your assertion of:

  MacOS was absolutely derived from BSD through NeXTSTEP.
Note my identification of the FreeBSD kernel component being a component, not the kernel itself.

0 - https://en.wikipedia.org/wiki/Mach_(kernel)

1 - https://developer.apple.com/library/archive/documentation/Da...

2 - https://developer.apple.com/library/archive/documentation/Da...

reactordev 2 days ago | parent [-]

I think you’re getting hung up on semantics and you’re hyper focused on the kernel.

Nothing you said contradicts my point and in fact, corroborates it. So I’m not sure what your point is.

Yes, Darwin is a mix of Mach, xnu, and BSD code. No where did I say macOS is the FreeBSD kernel. No where do I mention kernel. So while you argument for why I’m wrong is lengthy, it still says it was derived from BSD. Which is exactly what I said. There are parts of FreeBSD in macOS kernel. There are parts of XNU and Mach. There are parts OpenBSD and NetBSD. Majority of the base OS (including userland) is BSD.

lukeh 2 days ago | parent | prev | next [-]

The first version of MacOS X Server was based on an unreleased version of NEXTSTEP which in turn used 4.4BSD and Mach 2.5. Around BBB 1997-1998 a lot of userland was synced with bits from not just FreeBSD but the other BSD distributions, if my memory serves me correctly. MacOS X moved to Mach 3. That’s a very very long time ago though, and Apple obviously did a _lot_ of their own CoreOS engineering, things like launchd and XPC don’t have FreeBSD equivalents.

But hey, Darwin is open source so if someone wants to do go on a provenance archeological dig, it could be done!

bluGill 2 days ago | parent | prev [-]

Large parts have been rewritten: they very different and don't show any BSD heritage.

reactordev 2 days ago | parent [-]

That may be true but a large core of it is still BSD. In fact, it’s so BSD that one could create a BSD distro based off FreeBSD and achieve binary compatibility on x86. Which is exactly what RavynOS [0] has done. There’s a lot of BSD under the hood of macOS still today in Darwin. A mix of FreeBSD, NetBSD, and OpenBSD.

[0] https://github.com/ravynsoft/ravynos

3 days ago | parent | prev [-]
[deleted]
2 days ago | parent | prev | next [-]
[deleted]
reactordev 3 days ago | parent | prev | next [-]

Apple publishes the sources to the GPL BSD code they have to but that’s where the support ends.

Apple has no interest in assisting a competing operating system.

2 days ago | parent [-]
[deleted]
E39M5S62 3 days ago | parent | prev | next [-]

Apple is struggling to make MacOS functional, why would they contribute engineering time to another OS?

3 days ago | parent | prev | next [-]
[deleted]
rjsw 3 days ago | parent | prev | next [-]

Apple hasn't done any work that would be useful.

bluGill 3 days ago | parent | next [-]

Any is a bit too strong. Apple has does (and still does) some useful work with clang/llvm, and a few other tools that BSDs use. However this is indirect at best.

Lammy 3 days ago | parent | prev [-]

Weird to see this downvoted, because it's totally true. Apple imports FreeBSD's userland periodically but not its kernel/drivers, and thus has nothing to do with how well FreeBSD works on PC hardware: https://wiki.freebsd.org/Myths#FreeBSD_is_Just_macOS_Without...

AdieuToLogic 2 days ago | parent [-]

> Apple imports FreeBSD's userland periodically but not its kernel/drivers ...

OS-X/macOS runs an entirely different kernel called XNU[0][1], which is why userland tools can be imported whereas FreeBSD kernel and device driver code cannot.

0 - https://en.wikipedia.org/wiki/XNU

1 - https://github.com/apple-oss-distributions/xnu

xp84 3 days ago | parent | prev [-]

I would expect if anyone even considered it, they’d immediately reject the idea, as they clearly believe that Apple retains ownership of the computers they “sell” and should control the software you could run on them.