Well Unix as a standard is completely dead. macOS as a Unix is completely dead. I expect another branch in the already complicated as hell tree of Unixes.
Well Unix as a standard is completely dead. macOS as a Unix is completely dead. I expect another branch in the already complicated as hell tree of Unixes.
macOS as Unix is not dead – the compatibility with developer and unix infrastructure it has is an important reason why the company I work for uses MacBooks (at least I believe so).
Does your company care about compatibility with UNIX® infrastructure or that it's compatible with Linux/BSD infrastructure?
People care that macOS has a lot of compatibility with Linux/BSD, but most don't care that it's UNIX® - just as people don't care that Linux/BSD aren't UNIX® compatible. Yes, Linux/BSD are very similar to UNIX® and mostly compatible, but they don't conform to the specification.
You (probably) don't care about the UNIX® specification. You care that your MacBook has good compatibility with Linux/BSD infrastructure. Many people assume that Linux/BSD are UNIX® and just don't pay for certification. They aren't UNIX® compatible. They are extremely similar, but they don't follow the spec 100%.
Sorry for putting the ® everywhere, but people often use UNIX when they mean nix-like operating systems and when we're talking about whether people care about macOS as a UNIX® or not, it matters whether were saying "people want macOS to be UNIX®" vs "people want macOS to have good compatibility with nix-like operating systems such as Linux and BSD like it does today." People usually care a lot about the latter and not about the former.
The relevance of Open Group and the UNIX brand has been a walking corpse for decades.
I would guess that your company isn’t actually interested in the UNIX compatibility specifically, more that they’re interested in laptops that can run a similar toolset.
They probably also buy MacBooks since they’re reliable, performant, high-endurance (battery life) general purpose business laptops that employees like using and see good productivity with.
I think he means macOS as official, certified Unix is dead.
macOS as a more Linuxy-friendly place to work on Linuxy-type software, sure. Definitely true compared to Windows. But no one cares if macOS is blessed as Official UNIX.
How many people are writing software that they need to be able to run on Linux, Solaris, AIX, and HP-UX in 2026?
We've found it to be a much worse experience than windows for dev stuff. It's a different OS and architecture to the target env (Linux). Aligning with that makes life considerably easier.
If you're using a language compiled to bytecode or interpreted, then the OS and arch don't matter a whole lot (so long as you don't have to deal with Window's weird filename conventions or other oddnesses). If you're using compiled-to-bytecode languages, there's a huge advantage in forcing your code to be cross-arch safe from day one, lest ye accidentally end up with something that can only build on the exact CPU in your devs' laptops or can only run on the flavor of WSL you're using that year.
Writing on Mx Mac and deploying on Intel Debian is a little harder in the beginning, but spares you oh, so many footguns down the road. Eventually you might want to deploy to a different OS or arch for cost or convenience reasons. That's a really bad time to find out that your project can't be made to work there without heroics.
Why not develop on the same env? I mean if I were you my macbook would just be an ssh client to the x86-64 dev box that emulates the target env. So many advantages to offshoring the compute to some server (my preference is your own hardware ofc but theres flexibility in cloud). For one, the laptop is not getting hot just being a dummy ssh client. I can spill a coffee on it during a build and nothing happens, build goes on and I am just out a thin client I can replace immediately with anything with ssh installed, my cellphone included if I am so desperate.
Linux doesn't have an "architecture".
You know what I mean. ARM vs x86-64 -and- macOS API vs Linux API.
And yes, they are different even at the user end on the shell.
All of our production Linux systems are running on Graviton these days, i.e. they’re arm64.
Your production is not going to be the same as everyone else's. It's also not going to be the ideal for everyone else's, or even possible for everyone else's.
The differences between ARM and x86 are probably less relevant for the majority of server-side development than API and admin interface differences.
In practice, anyone seriously developing Linux software on either macOS or Windows is using VMs or containers running the actual Linux kernel, at least for testing, and the difference is that Microsoft has put far more effort into integrating specific support for these things into the OS.
Indeed.
I just wonder if macOS will stop being UNIX like.
That is, whilst it still has home brew and a BSD core it’s great. If that goes away it’s no longer a viable alternative to Linux.
I've been a software engineer for 25 years, doing Linux stuff at startups and big companies (the biggest even). In all my time as a software engineer, I've seen maybe 3 people who didn't use a MacBook Pro for work. Apple makes the bulk of its money from tech companies and schools and they cater very well to both. If it stops being Unix-like, they lose the thing they make the most money from. They are smarter than that.
I don't think apple makes the bulk from professionals at all, the iphone is their flagship product and their laptop line has been expanding towards casual markets with budget models.
They absolutely do not want their developers to mass migrate to another platform. Walk into any SF startup and you'll see 100% Mac laptops, except for the Finance guy who needs Excel on Windows, and that one dev who insists on Linux, and all those devs build webpages that work on Safari, and iOS apps before they (maybe) eventually get around to making an Android app.
Apple is highly incentivized to keep devs on Macs, even if it turned out to be a loss leader for them.
Right but in this thread it is pretty clear we are talking about the money they make from MacOS.
They don't make any money on macOS anymore. You get it preinstalled on their computers, you can't buy it separately, you can't install it on other computers, and major upgrades are free.
It is a part of the computer that people pay for. This is like saying they don't get any money from Apple Silicon because its already installed on the motherboard.
The money they make from MacOS is a footnote compared to the money they make from phone hardware, the app store transaction tax, and ads. To a first approximation, the only reason that Apple cares about MacOS is so that people can make iOS apps.
This is a poor approximation, as there would be no need for such an extensive Mac product lineup if this were true. The Mac mini and one laptop product line with two or three sizes would be more than sufficient, and continuing development of first-party Mac applications like Logic and FCP would serve little purpose.
Backend developers are already conditioned to use Linux VMs when developing in Mac OS.
And so are developers on Linux. 99.5% of your backend stuff will run just fine on macOS without any modification, but it's been a good practice for a long time now to run stuff in containers (Docker/OrbStack/podman/etc.) in order to have a reproducible environment free of contamination. My development process in macOS is basically no different than it was on Linux.
I bet you are located in US.
You’re in a bubble. Windows is still huge, especially in middling companies that dictate it and standard HP/Dell/Lenovo hardware for all 3k staff.
It’s insanely common.
His point isn’t that it’s common, it’s that a unix-like environment is a key selling point.
Given that Windows made WSL in an attempt to capture developer mindshare, that tends to support his comment
You still end up in uncanny valley often enough, with commands that are missing, or working unexpectedly differently. It often feels like macOS could be made so much better for developers, but Apple just doesn't care because people buy their devices anyway.
It’s not that. It’s that their lawyers won’t let the engineering side distribute gnu tools. Period.
At Apple, if you even use GPL tools in your workflow you have to seek approval, and most often there’s pushback of “why won’t this (alternative that isn’t GPL) work ?”
Their lawyers aren’t stupid, they understand the GPL and its limits, but they’re simply doing a risk assessment- which one is less risky, the GPL variant or the BSD. For a corporation, that’s generally BSD.
The problem is that being a developer is not a synonymous with UNIX.
In deeply saddens me to think that there is a developer who has not installed gnutils and put them earlier in the PATH.
The remaining differences are related more to systems stuff - managing daemons with launchd for example. These aren't really a distraction day-to-day.
It really is that simple. No different from a BSD or even a non-GNU (busybox, etc.) Linux distribution. If you like GNU tools, use them.
It’s a computer. I can make a computer go beep if I want, that is not the issue.
The fact that someone who didn’t grow up at the time when open source was an idealistic concept instead of free support to corporations needs to learn about the gnutils and how to install them with homebrew is what makes me sad.
Why do we seriously not have a command-line package manager on macOS yet? Windows has one by now. It’s just sad to me that you need a manual checklist of post-setup steps to turn a Mac into a useful machine for software development.
I don't think you have to grow up in some idyllic era that never existed. Its more like you type 'ls', notice that its total crap, and google it.
The point I was making was that knowing what GNU means in the first place probably requires some cultural background that many people lack, especially younger ones.
Right, and the point I'm making is that you can learn this from Google once you notice there is a difference from how common commands work on Linux and MacOS. You don't need to know about GNU, you just have to wonder why its different.
It already feels a bit like it's two separate operating systems on one machine. It's still usable, but I am starting to notice odd behaviours. Files created in the terminal not showing up in the UI, there seems to be no notification from the filesystem to Finder, informing it that the terminal has created a file.
Developers and operations people are already starting to move to Linux. More and more I see colleague either switching to Linux, or have a mac laptop for administrative tasks and then a Linux workstation, or VMs, where they do their actual work.
> Developers and operations people are already starting to move to Linux.
I’ve been in this industry for a long time now. Linux always had more credibility among devs and ops folk. This “starting to move” view is weird.
My view is that OS X was acceptable by these teams because it was close enough to Linux and corporate could deal with it.
When I worked in corporate IT Linux was simply not an option for a primary workstation because there was no standard configuration or management tooling that made everyone happy. Macs were an easy compromise.
I personally don’t see macos anyhow competing with Linux or to be anyhow comparable to Linux in each others sweat points. linux dominated server side, so be its fair victory but it’s continually shit kind of clone of many things done in MacOs desktop experience. It just kept cloning Apple since forever to repeat a glimpse of that experience even during Next times with WindowMaker and then with many incarnations of modern desktop systems to compare with OSX and MacOs continually and in that direction. Linux is open, it’s different, that comes with value but still a little handicapped brother to MacOS desktop experience with continually f*up fundamentals even if you include wayland as the base. So is MacOs in servers but there Apple just resigned last year and stopped pretending they have servers. Both have only one thing in common, shell with base posix tools. Nothing else. And none are as open as original idea for Unix as this idea is long dead and linux tries to make Stallman’s wet dream about GNU system come true as his own kernel implementation did not move forward much it at all since mid 80s.. that’s the only UNIX reality that matters.. rest is bureaucracy and 5000 pages of POSIX standard nobody cares about as this is more about C libraries than kernel’s internals.
You may be interested to learn that Apple does in fact have servers internally.
https://wccftech.com/apples-private-cloud-compute-server-m5-...
I don’t think it makes business sense for them to mass produce these for a consumer market but a data center of M5 chips sounds amazing for the workloads they’re running.
I don’t think the open source model will ever make an Apple quality UI because that’s the result of highly opinionated executives like Steve Jobs who don’t need to compromise or allow customization.
I’m glad both exist. I use them both and my life is good
Microsoft just shipped a full-fledged first class Linux container runtime as part of Windows[1]. I don’t think it even made front page of HN, which shows how far windows has fallen as a developer environment, but it is absolutely something Apple should be offering as a first class capability on OS X. The compatibility of the host OS file system with being mounted into docker images makes it a better environment for running such things.
[1] https://blogs.windows.com/windowsdeveloper/2026/09/29/wsl-co...
https://github.com/apple/container
Well… that’s handy.
Has it really, though? Because outside the HN bubble, Windows still seems to be the most common developer environment for most things that don't specifically target Linux or Apple platforms, and a popular option even then (e.g., in game dev).
> Files created in the terminal not showing up in the UI
You might wanna look into that because that’s not how it works at all. I frequently switch between terminal and GUI apps and have not once noticed Finder failing to catch up with whatever it is I’m doing in the terminal.
Strange, because I have the same issue on two different machines. It doesn't happen all the time, but frequently enough that I assumed that Finder does some re-scan every now and then (or when you open a new Finder window).
Finder windows subscribe to filesystem events, so the reaction is pretty much instantaneous.
Game and app developers certainly not.
I'm suspecting some forces at Apple would be perfectly content with ripping most of the BSD core and the assorted CLI out and just have Linux containers spawned in VMs, WSL2-style.
Of course they were, even NeXTSTEP was designed to be compatible with UNIX only to compete with UNIX workstations like those from Sun.
Neither Apple nor NeXT had a UNIX culture, and efforts like A/UX and mkLinux were never that much serious.
Had they acquired Be, BeOS was even less UNIXy than NeXTSTEP.
Its called colima and its excellent.
https://colima.run/
and they have a first-party one now as well
https://github.com/apple/container
I haven't tried it. colima also simplifies linux VMs which is more of an analog to WSL2 than just running containers. It has really nice integration with Incus as well, if you like persistent system containers.
I also use colima mostly, it‘s great! (the Apple container thing de facto requires macos 26+)
would be awesome
In some alternative dimension Ternus decides to realize the full potential of the Mach kernel by embracing Hurd in place of XNU. Users are discouraged because the new system is not enough like GNU/Linux.
What would that going away look like?
Swift on Mach
yeah I guess there isn't really much to move to... a new custom Kernel and Userspace? extremely unlikely - I guess it's here to stay, despite not being formally Unix.
It's distinctly problematic there unfortunately. Particularly the moment you add any UI toolkits to it. I've had so many problems with stuff that uses Qt because Qt takes a while to catch up with things Apple broke inside their Cocoa internals. Very irritating platform to work on.
Edit: love how I get downvoted for facts?! They literally broke Cocoa so it was throwing hopeless useless exceptions at the bottom of the stack when they changed the native file open boxes to run in another process. Two bits of software I use couldn't raise an open file dialog window any more.