Hacker News new | ask | show | jobs
by chazeon 1250 days ago
I am confused about this:

> Haiku, like BeOS before it, is not a Unix. If you actively like Unix, and what you want to do already works well on Unix – any Unix, and that includes macOS, as well as Linux and FreeBSD – then you probably won't see much appeal here.

Don’t they support the same set of terminal command as in other Unix-like systems? From what I saw [1] there aren’t much difference. Well that is what what people care about unix, right?

[1]: https://www.haiku-os.org/docs/userguide/en/applications/list...

4 comments

(Haiku developer here.) This is actually a very common misconception that Haiku is not a UNIX, and it's sad to see The Register get it wrong.

It's debatable whether or not BeOS was a UNIX, but I think by most standards it is: the `fork()`-based process model, UNIX-style file descriptors (but no `mmap`), etc.

Haiku has all the bits BeOS had, of course, but we have far extended our POSIX compliance: of course we have mmap, but also pthreads, and /dev/ (including all the staples, like /dev/null, etc.) These aren't mere compatibility wrappers, but often the "native" APIs; some of the Be APIs are implemented on Haiku using them (while others use lower-level APIs.) There is no "POSIX compatibility layer" in the kernel, it's just natively POSIX all the way down.

One big difference with POSIX/UNIX is the lack of multiple users. My understanding is Haiku is working to add support for multi-user/privilege separation of some kind, but at least for BeOS this was a fairly big difference.
Haiku already has support for multiple users at the kernel and filesystem level. You can `useradd`, `passwd`, and then `su` (or even SSH into your newly-created user on your Haiku install from another machine), and also `chown`, `chmod`, etc.

What isn't properly supported yet is running GUI applications as anything other than UID 0. Adding support for that will require some careful refactoring across a few different components. Actually, if you added a handful of hacks in a few places it might work already...

Technically UNIX being a trademark only the following systems are UNIX

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

Many systems are definitely UNIX-like and many are to different degrees POSIX-compliant

Unix is not just a set of terminal commands, it's the whole system architecture, and the fact that all those derive from the original old AT&T Unix. If I run the Bash shell on Windows, it won't turn it into Unix either..
Most people probably don’t care about Unix, but rather POSIX user space.
> Don’t they support the same set of terminal command as in other Unix-like systems? From what I saw [1] there aren’t much difference. Well that is what what people care about unix, right?

You can use bash so yes most builtin shell commands are supported. You won't have all the linux specific commands though.