6/10/2026 at 1:13:28 AM
To clarify a few comments here: this is not only OCI containers: container machines add support for persistence and filesystem mounting, making container machines a great lightweight Linux environment for developers using macOS. More details here: https://developer.apple.com/videos/play/wwdc2026/389by timsneath
6/10/2026 at 10:13:11 AM
Still feels like a apple-ified microvmby CaptainCyber99
6/10/2026 at 4:58:34 AM
> ... highly integrated Linux environment that works seamlessly on your Mac. ...Which kernel is running, and is it hosted in hypervisor.framework, as is done with UTM (when not using the qemu mode)?
by jjtheblunt
6/10/2026 at 5:22:58 AM
The katas container kernel by default.by Scarbutt
6/10/2026 at 6:54:39 AM
> filesystem mountingHow is this different to bind mounts
by bogantech
6/10/2026 at 8:31:33 AM
Very different: Linux running in a virtual machine can't bind mount into a macOS host's filesystem. So they use virtiofs.by jdub
6/10/2026 at 9:12:07 AM
This applies to both containers and container machines though, right?by lxgr
6/10/2026 at 8:41:35 AM
how does that compare to something like, eg, Orbstack?by oulipo2
6/10/2026 at 1:34:33 AM
Ah, the Darwin/BSD Subsystem for Linux.by Onavo
6/10/2026 at 1:55:19 AM
Not quite, it’s still a VM. And while it supports virtio balloon for growing RAM, it doesn’t yet support releasing that RAM back to the host. And there isn’t a convenient way to shrink the sparse disk images as they grow yet, either.by CGamesPlay
6/10/2026 at 2:00:58 AM
Isn't the Windows subsystem for Linux (the reference there) also a VM?by AlexB138
6/10/2026 at 2:03:17 AM
Only WSL2; WSL1 was an actual subsystem.by gsnedders
6/10/2026 at 2:09:20 AM
So this is Darwin/BSD Subsystem for Linux 2.by selcuka
6/10/2026 at 4:26:11 AM
Yes.by rvz
6/10/2026 at 2:37:57 AM
WSL1 was so cool, WSL2 made it boring and isolated.by LoganDark
6/10/2026 at 8:08:38 AM
WSL1 was very conceptually appealing, and ended up working very poorly because of the poor matching between Linux syscalls and the Windows kernel. Git suffered terribly as a result. The inverse is also somewhat true - there have been cases where Wine is much slower than native Windows because Linux simply doesn't provide a simple way to achieve the same outcome, and interestingly the Wine developers have had reasonable (if tediously slow) success in making it possible to express the same semantics to Linux and have it handle things fast. It would be fascinating to know whether WSL1 developers didn't have enough traction to get Windows internals altered to match, or whether it's just way harder to do the same under Windows.by mjg59
6/10/2026 at 8:34:11 AM
Wine achieves better performance these days due to things like... adding a module to the Linux kernel that implements NT-like synchronization primitives. So, Linux subsystem for NT synchronization basically. (a.k.a. NTSync)Maybe this works out better because Linux is more flexible, while Windows/NT is more "set in its ways" and therefore more difficult to implement Linux on top of... Maybe?
by LoganDark
6/10/2026 at 2:42:32 AM
Back in my day you to to download a couple GB worth of cygwin, and that wasn't an actual environment, basically just a GNU toolchain compiled for windows. But it got you like....grep and bash and stuff that ran natively on windows which was kinda cool.by TylerE
6/10/2026 at 5:48:30 AM
Does any older folk here remembers when NT was the Cool New Thing (TM) and it had by design support to multiple subsystems plopped over the NT API, and Win32 was just one of them alongside POSIX (Interix) and OS/2? There was even a _very short_ time span when Interix was actually usable (it was extremely short though)by qalmakka
6/10/2026 at 9:46:43 AM
I guess that makes me square within the 'older folk' subset - I continued to use the NT core with LiteSTEP alongside the SGI/IRIX Octane2 well after Y2K.Those days I was working on a rework of the TRO PLATO learning system which was a real beast but essential for the individual learning project of a charter school i was supporting.
PLATO had been taken from it's dedicated mainframe world and made 'runnable' on W95 workstations with an NT server - but it really didn't run well, and the kids could really get behind the interface into regular Windows environment too readily. In combination the workstations were crazy hard to keep running cleanly.
So in the end; we had to take the software out of Windows, wash it clean in the waters of Silicon Graphics System-V with BSD extensions (X11) Unix and BSD - NeXTSTEP, just so we could bring it back to Windows properly using LiteStep.
Life happened and I lost touch with the outcome of it all, moving on to my next project; but, I kept a LiteSTEP desktop until moving entirely over to Linux in 2004.
Haven't used Windows for anything but a gaming load since '05 and stopped doing even that in about 2010, nothing later than XP.
by naishoya
6/10/2026 at 6:27:56 AM
Yes, the only reason I cared for Linux in first place was that the POSIX support wasn't that good.I am convinced that if POSIX subsystem was UNIX serious, GNU/Linux would never taken off on PC, and the whole would be divided between SGI, HP-UX, Solaris, Aix and Windows NT.
by pjmlp
6/10/2026 at 6:40:50 AM
There were already better free options than Linux when Linux first started gaining traction.The reason Linux grew in the 90s was because it was part of the hacker culture. Not because better options didn’t exist.
Kids liked the fact that Linux was a free-for-all, anything-goes, platform. It wasn’t stuffy like Unix and it wasn’t proprietary like Windows.
Then those kids grew up and became decision makers themselves. And we started to see Linux replace FreeBSD and commercial Unixes.
by hnlmorg
6/10/2026 at 7:15:12 AM
Which ones? BSD was tied in a lawsuit that left doubts on its future.Minix was a toy OS for university teachings.
Coherent was commercial.
Nothing else was there on the PC market.
by pjmlp
6/10/2026 at 3:17:36 AM
Cygwin was fun. I'd done zero development on Windows, but about 10 years ago I had to figure out how to deploy some nightly shell scripts across a bunch of local computers in a few dozen offices, where about 80% were MacOS and the rest were Windows. I don't remember exactly how I rigged it, but basically cygwin allowed me to keep the scripts as they were and trigger them in place, with a few small modifications.I never want to deal with that again ;)
[edit] fwiw, Termux on Android is similarly a fun pseudo-environment. It's a nice and helpful toy.
by noduerme
6/10/2026 at 3:25:13 AM
The biggest issue I remember is directory seperators... windows of course using \ which bash would then interpret as an escape. Cygwin mostly papered over that from what I can recall, but it could lead to some weirdness, like sometimes you'd get C:\\path\\es\\like\\thisby TylerE
6/10/2026 at 5:06:07 AM
We should be using the baguette emoji for path separators for cross-platform compatibility.https://old.reddit.com/r/ProgrammerHumor/comments/96ufiz/pro...
by bschwindHN
6/10/2026 at 3:41:13 AM
You could also use forward slashes, like C:/path/subpath, which has worked since Windows 1.0/DOS 2.0.That's handy when you're entering paths in a Cygwin/MSYS Bash shell, but might not help much if you're trying to parse or otherwise work with existing patgh variables composed with backslashes.
by rpeden
6/10/2026 at 3:59:11 AM
Yes, you could if you were entering them manually, but some apps that generated file names would screw it up. I think they were using some sort of stdlib function to get the path seperator. Forward slash paths working in native windows apps also wasn't quite a given, either. Keep in mind this was a loooong time ago... like windows xp era maybe, even.by TylerE
6/10/2026 at 6:07:40 AM
Yeah, I recall directory paths being the biggest PITA with running scripts in cygwin. But I mean, that was a very minor set of things to fix compared to what would've had to be written in anything else available at the time.Doing retail office deployments of custom code on employee computers is a weird niche, and you find whatever works and hope you can maintain it somehow. Cygwin was awesome though, saved me a ton of time and the client a lot of money for the moment. (The client later stipulated to all future franchisees that they had to buy only Macs, lol)
by noduerme
6/10/2026 at 9:06:25 AM
Always used / and it worked for both cygwin/windows lands.by coldtea
6/10/2026 at 6:17:37 AM
> Back in my day you to to download a couple GB worth of cygwinYou still can, and it still works exactly the same way.
by kergonath
6/10/2026 at 7:22:09 AM
what do you mean? that's still the only way to work as a human in windows. wsl1 almost replaced it, but obviously they scrapped it.if you must use windows, it's because you will compile for windows. so you install MSYS, which is a linux distro-ish compiled native for windows. and do your work.
wsl2 (and this apple thing) is just a meme. if you're working in it, you're better of just installing Linux or ssh'ing to a server.
by iririririr
6/10/2026 at 8:23:35 AM
shrug. I haven't owned a Windows machine in years at this point. It's one of those things like PHP that I just decided my life was better off without.by TylerE
6/10/2026 at 2:49:55 AM
... Now it's just called git bashby _blk
6/10/2026 at 2:55:41 AM
Just install and use MSYS2, git bash is derived from it anyway, and a regular MSYS2 installation offers a lot more.by michaelsbradley
6/10/2026 at 6:23:25 AM
It was soooo slow though. Practically unusable for anything i/o heavy.by kevinminehart
6/10/2026 at 7:13:40 AM
Those issues could have been fixed…by dented42
6/10/2026 at 5:01:18 AM
WSL 1 is long gone for all practical purposes, yet it still dominates conversations.Also everyone on FOSS gets it wrong, WSL wasn't a subsystem like classical Windows NT ones.
It was based on Drawbridge research using picoprocesses, a new approach for library OSes.
https://learn.microsoft.com/en-us/archive/blogs/wsl/pico-pro...
by pjmlp
6/10/2026 at 2:03:07 AM
Mac Subsystem for Linux 2by jayd16
6/10/2026 at 6:23:44 AM
Exactly what I thought. The Mac equivalent to WSL. Which is a great thing for Mac devs. Lots of stuff expects Linux these days, not POSIX. Mach isn’t Linux.by pseudosavant