Remix.run Logo
Luc 16 hours ago

> To the Unix purist, this might appear wasteful and unnecessary, but macOS isn’t, and never has been, Unix.

I get what they mean, but macOS is even Unix certified. https://www.opengroup.org/openbrand/register/

1vuio0pswjnm7 7 hours ago | parent | next [-]

"I get what they mean, but macOS is even Unix certified."

What do they mean?

To me the blog author is primarily focused on the issue of _control_, i.e., being able to control the hardware that he purchased as opposed to letting a company control it, e.g., through pre-installed software, remotely installed "updates", default settings, etc.

He cannot control its default behaviour hence he wants to "slim MacOS down"

"UNIX" was a pun on the name of another OS that allegedly was accused of being too large and complex. That OS, Multics, was designed to run only on specific hardware from GE and later Honeywell

UNIX was a smaller, less complex alternative that, after its rewrite in C, could more easily run on a variety of hardware and be modified by the people using it

Apple does not allow people using MacOS to modify it

MacOS is proprietary; unlike AT&T's UNIX it has not been released into the research community resulting in non-commercial, open source "MacOS-like" OS projects (HackIntosh notwithstanding)

A user cannot write programs for MacOS without restriction by the company, e.g., prior approval, "developer" fees, etc.

MacOS cannot easily be used on a variety of hardware, only on Apple's proprietary hardware

Compared to non-commercial UNIX-like OS, MacOS is larger and more complex

https://eclecticlight.co/2023/12/04/macos-sonoma-is-setting-...

kergonath 6 hours ago | parent | next [-]

> To me the blog author is primarily focused on the issue of _control_, i.e., being able to control the hardware that he purchased as opposed to letting a company control it, e.g., through pre-installed software, remotely installed "updates", default settings, etc.

Which has absolutely nothing to do with the OS being an UNIX or not. It's a bit weird to see the allusion to UNIX to be fair: Howard Oakley is deep enough down the rabbit hole that I would expect him to know that History is full of proprietary and closed UNIXes.

1vuio0pswjnm7 5 hours ago | parent | prev | next [-]

NB. The blog refers to (a) the "Unix purist" and (b) MacOS not being Unix. Arguably, (a) is more important, irrespective of whether (b) is true (IMO it's ambiguous)

For example, the "Unix purist" might refer to someone who identifies with the "ideals" associated with that OS, e.g., relatively small, portable to potentially any hardware, free to study and modify, etc. And (b) might refer to MacOS not conforming to those "ideals" (despite having a limited license to use a "UNIX" trademark)

At this point, (b) is ambiguous; what is "Unix". It might mean different things to different people

Ironically, Apple took the "Unix" parts of MacOS from open source, non-commercial "UNIX-like" OS projects such as NetBSD and FreeBSD that are not "Certified UNIX"

nikanj 4 hours ago | parent [-]

HP-UX and IBM AIX are probably shocked to learn that they, too, are not Unix

nxobject 4 hours ago | parent [-]

Sadly, HP-UX just reached EOL. I think their Integrity servers let you choose between RHEL and SLES now?

1vuio0pswjnm7 5 hours ago | parent | prev | next [-]

NB. I do not use a graphical layer or "terminal emulator". I only use textmode

9rx 6 hours ago | parent | prev [-]

> MacOS is proprietary

Some of the drivers are. The core is open source, though. macOS' particular choice for its graphical user land is proprietary as well, but AT&T's UNIX had no such equivalent, aside from some experiments, so that doesn't make sense to use as a point of comparison. Not to mention similar systems in the UNIX-esq space, like SunView, NeWS, VUE, NeXTSTEP, etc. were proprietary too. That has always been par for the course in the world of "graphical UNIX". The so-called "Linux desktop" is the aberration.

You can, of course, run an open source graphical user land, like Gnome, instead on top of macOS' UNIX-y fashioned bits if you so wish.

sgjohnson 7 hours ago | parent | prev | next [-]

The next sentence is also interesting actually.

> It’s a closed-source proprietary operating system

Most UNIX systems were proprietary & closed source though?

MisterTea 6 hours ago | parent [-]

All of the commercial Unix operating systems were closed source.

The first open Unix-like is 386BSD which predates Linux. It was said that if 386BSD didn't get mired in a lawsuit, Torvalds would have used it and Linux would not exist.

kps 4 hours ago | parent [-]

And the reason BSD survived is the maligned ‘advertising clause’ that most later BSD-type licenses dropped. Berkeley countersued that AT&T had promoted that System V included vi, without the required attribution.

paulddraper 5 hours ago | parent | prev | next [-]

> macOS isn’t, and never has been, Unix.

MacOS is the most UNIXy of the UNIXes

1. Comparatively heavyweight

2. Proprietary

3. UNIX APIs

nxobject 4 hours ago | parent [-]

To beef up the historical comparisons, "creates their own workstations on RISC-derived processors" is also (historically) a sign of a (commerical) UNIX, too. It isn't to jarring to mentally replace "macOS Tahoe" with "NeXTSTEP 26".

timeon 15 hours ago | parent | prev [-]

Yes on paper. Submitted version differs from what customers run at home/work.

greggsy 15 hours ago | parent | next [-]

The compliance trope that a point-in-time-assessment can't be used to support a claim is kind of a lazy take. The certification explicitly states macOS v26.0 Tahoe.

While it's true that it wasn't always truly UNIX compliant, they put in the hard yards to become so (albeit to avoid a $200M lawsuit from The Open Group) [1]

[1] https://www.quora.com/What-goes-into-making-an-OS-to-be-Unix...

p_ing 8 hours ago | parent [-]

To certify any version of macOS as UNIX, the security had to be significantly altered (disabling SIP) among a few other things. This is why what is shipped is not what is certified as UNIX. You can /make/ it match what is certified as an administrator, but that would be inadvisable.

https://www.osnews.com/story/141633/apples-macos-unix-certif...

EDIT: And really, UNIX certification means nothing except to potentially government agencies and people who don't understand what UNIX and/or UNIX certification is. Or why being "certified UNIX" is generally meaningless: see the BSDs, which are much closer to "UNIX" origins than macOS will ever be.

Or Windows, which is frankly just has better architected internals and abandons legacy UNIX ;-)

rayiner 8 hours ago | parent | next [-]

> is. Or why being "certified UNIX" is generally meaningless: see the BSDs, which are much closer to "UNIX" origins than macOS will ever be

MacOS is BSD over Mach, which is itself derived from BSD.

p_ing 8 hours ago | parent [-]

Yes, that's the point. It's further removed from UNIX than the BSDs are.

macOS contains BSD userland, networking, file system, POSIX, and a couple of other things. But XNU, the kernel, is "X is Not UNIX", if there ever was a statement to be made about the underpinnings of macOS.

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

inkyoto 4 hours ago | parent | next [-]

You have just described OSF/1 (and later – Tru64) – a certified UNIX with a hybrid kernel operating over a Mach microkernel, BSD userland, POSIX conformance etc.

What is the point that you are making?

KerrAvon 6 hours ago | parent | prev | next [-]

This is a very silly argument.

There were several actual Unixes released based on Mach, and some of them more purely Mach than macOS/NeXT ever have been.

sbuk 6 hours ago | parent | prev [-]

The people that certify it say that you are wrong. What you think and what actually is are two entirely different things in this case. The fact remains that, according to the OpenGroup (and they are the one that matter here), macOS 26 is UNIX.

p_ing 4 hours ago | parent [-]

macOS 26 that is /altered/ is UNIX. macOS that ships on every Mac is not certified UNIX -- but it can be made to match if you're willing to give up security.

You should read through the actual certification - https://www.opengroup.org/csq/repository/noreferences=1&RID=... (there are a couple more in the repo).

To run the VSX conformance test suite we first disable SIP as follows: [...]

Feel free to disable SIP on your Mac. I certainly won't be doing so on mine.

sbuk 5 minutes ago | parent | next [-]

You’re confusing operating mode with operating system.

SIP/SSV don’t create a different macOS, they restrict mutation and introspection. They don’t change the POSIX surface, the SUS semantics, or the kernel interfaces being certified. They just stop test harnesses from instrumenting the system without elevated privilege.

By your logic, no modern OS is anything it claims to be unless you run it in an insecure debug configuration. Linux isn’t POSIX because you need root. Windows isn’t Windows because kernel debugging exists. That’s obviously nonsense.

The Open Group certifies macOS 26 as shipped. Temporarily relaxing protections to run a conformance suite does not produce a “different OS”, it produces a different trust configuration of the same one.

Saying “it’s not really UNIX because SIP is on” is like saying a container isn’t Linux because it doesn’t let you mount /proc without extra privileges.

31 minutes ago | parent | prev [-]
[deleted]
runjake 7 hours ago | parent | prev [-]

> Or Windows, which is frankly just has better architected internals and abandons legacy UNIX ;-)

Current macOS user, and former NT kernel dabbler and VMS user here. That's highly debatable.

On the kernel side, Windows is still filled with legacy VMS-isms. Eg: Object Manager (object/resource model), named objects, handles, how processes and threads work, vmem, scheduling etc etc

On the userspace side, Windows is still filled with legacy DOS-isms.

Don't me wrong, I love the underlying Windows OS, despite its many quirks, but it's filled with perhaps even more legacy cruft and definitely isn't any sort of step above anything else.

I also don't believe anyone actually runs macOS in a UNIX-compliant configuration. Rather, it's a checkbox on some RFP and nobody is clued into why it's actually there, because all the people that did know have since retired.

p_ing 6 hours ago | parent [-]

What lineage of OS predates both DOS and VMS? :-)

runjake 5 hours ago | parent [-]

As the popular phrase goes: "It's legacy, all the way down". What matters is what's left of those legacies in current revs.

In both cases: "Quite a bit", but I wish the base Windows OS would evolve away from legacy as much as macOS has. Start with eliminating drive letters.

p_ing 4 hours ago | parent [-]

> Start with eliminating drive letters.

Drive letters are there for the presentation layer and of course backwards compat. Windows refers to them using device paths internally. You can too, if you wish.

https://learn.microsoft.com/en-us/dotnet/standard/io/file-pa...

yokoprime 15 hours ago | parent | prev [-]

Im sorry, but i dont buy that. Unix certification has nothing to do with number of processes running or "efficiency"! The OS must be SUS compliant, i.e have all the core interfaces in place, all the correct utilities (awk, grep, vi, sed etc) and theres something about header files, filesystem requirements etc. even if the macOS submitted for certification is super trimmed down, it does not matter as long as its a true subset of what is shipped to consumers.

MacOS is certified UNIX i.e its "UNIX", like it or not. On this point the article is just wrong.

timetopay 15 hours ago | parent [-]

Unix is both a family of operating systems and also a trademark. The name is overloaded - "Unix" is more than one thing at the same time. In addition, the trademark is "UNIX" and the operating system family is "Unix"

MacOS is both UNIX and also not Unix at the same time.

If the trademark holders decided to UNIX certify my cat, which is well within their legal right to do so, would that make her UNIX?

greggsy 14 hours ago | parent | next [-]

Unlike macOS, your cat does not, and will not, meet the industry-accepted standard that describes unix as we know it today.

https://www.opengroup.org/openbrand/register/xym0.htm

shiomiru 6 hours ago | parent | next [-]

> as we know it today

An important nuance you seem to be missing is that SUSv3 is equivalent to "IEEE Std 1003.1-2001" (that is, POSIX 2001).

In practice, I've had to work around more POSIX compatibility issues in macOS than in all other actively developed (Free) Unix-likes, combined.

bigyabai 8 hours ago | parent | prev | next [-]

Like macOS, my cat does not qualify for the UNIX standard out-of-the-box and I'm far too lazy to configure my cat for an OS standard that's 25 years obsolete.

remix2000 14 hours ago | parent | prev [-]

Mayhaps not with a `cat(1)` alone, but really they just need to expand their menagerie now.

remix2000 14 hours ago | parent | prev [-]

Or perhaps they just won't certify your cat just as Apple won't start making Windows PCs…?