Remix.run Logo
▲ mahboi 4 hours ago

I use a Mac, so the CLIs are the BSD versions. I don't have any opinion on which is better, but it's just annoying that it's different from GNU, so a lot of my work ends up being on a Linux VM or server instead. POSIX compliance doesn't seem to buy me anything. I like the BSD license though.

▲thesuitonym 22 minutes ago | parent | next [-]

POSIX compliance doesn't buy you anything because you're trying to use GNU extensions, which aren't in POSIX.

▲mahboi 8 minutes ago | parent [-]

I'm not trying to. I don't care about any of this. And it's not even like GNU/Linux/whatever is a superset of POSIX, there are mutual differences in all the default CLIs.

▲jonhohle 2 hours ago | parent | prev | next [-]

The GNU versions work fine in macOS. Apple doesn’t want to distribute them, but that’s mean you can’t use them.

▲duskwuff an hour ago | parent | next [-]

> Apple doesn’t want to distribute them

Apple can't distribute them - coreutils is GPLv3, which is incompatible with Apple's immutable system volume.

▲mahboi an hour ago | parent | prev | next [-]

Of course, but any script meant for Mac is going to assume Mac core utils, even assume zsh instead of bash. You don't want to be the one person on the team with a non-stock setup.

▲collinfunk 2 hours ago | parent | prev [-]

> The GNU versions work fine in macOS. Apple doesn’t want to distribute them, but that’s mean you can’t use them.

We also test GNU coreutils on macOS. It is a bit tricky since the other maintainers and I don't own any macOS machines for testing. But we seem to do well enough with a shared system that Adélie Linux kindly allows the compile farm [1] to use, along with some additional CI machines.

[1] https://portal.cfarm.net/

▲frumplestlatz 2 hours ago | parent | prev | next [-]

If you stick to POSIX, things generally work everywhere. It's not really a question of what is better, just what is portable.

▲mahboi an hour ago | parent [-]

I don't know how compatible my Mac will really be with a Free/OpenBSD machine. Last time I tested this theory, some C code I was building on Mac clang didn't build on FreeBSD clang cause I was unknowingly using some extension enabled by default. But that was about 12 years ago.

▲Y_Y 2 hours ago | parent | prev [-]

Sounds like it's Apple who's behind

▲mahboi an hour ago | parent [-]

In some cases they are, but that's not the cause for the mismatch vs GNU.