Live data from Hacker News

Serpent OS Pre-Alpha-0 released

serpentos.com

41–50 of 54 posts

Re: Serpent OS Pre-Alpha-0 released

#41
post #38

Earlier quoted context omitted.

MacOS

macos is an actual operating system, a variant of mach

It is true that macOS is a bad example here because it is not using a Linux kernel.

But Apple also names operating systems that use the same kernel different "OSes": iOS and iPadOS share a kernel with macOS, and for all I can tell, so do watchOS and tvOS.

An operating system consists of both a kernel and a userland. The Linux kernel by itself does not make an OS. I think this makes it legitimate to call CentOS, NixOS, SerpentOS, iOS, watchOS, etc., OSes.

Re: Serpent OS Pre-Alpha-0 released

#42
post #37

Earlier quoted context omitted.

> We're creating Serpent OS, an independent Linux distribution built from the ground up to look after itself.

where did you get that text? the page linked doesn't say "linux" anywhere

...there's an "about" link at the top...

Re: Serpent OS Pre-Alpha-0 released

#43
post #41
post #38

Earlier quoted context omitted.

macos is an actual operating system, a variant of mach

It is true that macOS is a bad example here because it is not using a Linux kernel. But Apple also names operating systems that use the same kernel different "OSes": iOS and iPadOS share a kernel with macOS, and for all I can tell, so do watchOS and tvOS. An operating system consists of both a kernel and a userland. The Linux kernel by itself does not make an OS. I think this makes it legitimate to call CentOS, NixOS…

i think the ios and centos people are putting on airs because they wish they were ken thompson

Re: Serpent OS Pre-Alpha-0 released

#44
post #34

Why someone would want an imperative distro over a declaratively configured one?

This is true, there are already a plenty of imperative distros to choose from and they offer more or less similar experience. If I ever want to switch to something else, this would be NixOS or another declarative one.

Plenty? I'm aware of only two.

Re: Serpent OS Pre-Alpha-0 released

#46
post #38

Earlier quoted context omitted.

macos is an actual operating system, a variant of mach

Without being too pedantic, MacOS was to Unix what ChromeOS/AndroidOS is to Linux so I stand by my comment.

unlike, say, illumos, macos doesn't contain anything genetically descended from the v6 unix kernel; the darwin kernel is mach, with chunks of freebsd grafted into it, chunks that carefully reimplemented without copying the functionality in original unix

by contrast, 'chromeos' and android run on fairly normal linux. they even keep up with linus's tree, and though they do have their own patches, they try to get them merged back into linus's tree

Re: Serpent OS Pre-Alpha-0 released

#47

Earlier quoted context omitted.

No idea. It seems to have gone off in the direction of "shiny and new" without deeply considering more practical architectural decisions like isolating system vs. userland, configuration management, or manageability. It's unfortunate because there are zillions of Linux distros, and most of them (numerically) are terrible, insanely impractical, user hostile, and/or poorly documented. If you're going to create a distro…

> It seems to have gone off in the direction of "shiny and new" Ikey's last foray into distro-building also left same impression on me. > without deeply considering more practical architectural decisions like isolating system vs. userland, configuration management, or manageability I dunno, FWIW, Solus was very well regarded in UX for a while. It had the best steam integration, and the whole thing felt fairly well th…

> That is unfair. The developers felt there is a gap between fully imperative state-modifying mudball and fully declarative purity-land, which is true, and decided to try their hand at it. How well they did is yet to be seen.

What I meant was: the thesis has to be crystal clear rather than building into the aether "organically" by hope and wishes rather than practical need. This is a similar failure of coding away on a "startup" without sales only to discover no one needs or wants to buy the result.

Time and time again, Linux distros create messy, commingled system with user dependencies that increase system entropy and footgun stability. Even Alpine isn't immutable or really self-contained. The major, novel departure in this area was Core OS.

As an example under-served category in the marketplace: If one wanted to create a more resilient server OS, I would evaluate bringing together aspects of the following:

- Qubes - app isolation

- RHEL - kernel

- Rocky/Alma - governance

- Core OS - system isolation

- NixOS - package management

- FreeBSD - development, integration, and QA as a system

- (N/A) - fleet management (missing in 99.999% of Linux distros)

Re: Serpent OS Pre-Alpha-0 released

#48

Why someone would want an imperative distro over a declaratively configured one?

> Why someone would want an imperative distro over a declaratively configured one?

Perhaps most people are not aware of the difference or why it should matter?

After years of reading and study I only have a vague and hazy understanding of functional vs imperative languages, and what one can do in a functional language.

I have not seen any project built around functional programming that really makes a serious effort to explain why it is different or why anyone should care. My overall impression is that most take the attitude of IYKYK -- "if you know, you know" -- and don't even try.

While this is an understandable response to years of incomprehension and lack of interest, it's still a poor response.

I have spent _hours_ talking with Nix folks trying to get a better understanding and for the most part I have failed.

I would guesstimate that 99% of programmers do not understand FP vs imperative programming and so neither know nor care about FP.

So when the definition of efforts such as Nix and Guix is "we specify configuration using a pure functional language", most readers won't know or care what that means.

The Reddit-ism of "explain it like I'm 5" is a powerful criterion.

I look for people who can give me clear, simple, lucid explanations of what their software is and how it works. When nobody can, I tend to suspect that the software is either not much general use, or that advocacy for it is not based on facts and understanding but by clan loyalty.

Projects which few people can cogently clearly explain to me without jargon and bafflegab include Kubernetes, OStree, and OpenShift. It is, notably, a hallmark of Red Hat, and I speak as a former employee. I was hired to work on one product's documentation. I found that nobody in the company could explain what the product was or did, until I met the 1 person who came from the company that wrote it and which RH acquired.

I think I have an extremely sketchy understanding of the point of Nix and I have tried to explain it, but I am sure it is a weak, poor understanding.

More effort to explain what it means and why it matters would go a long way.

If people were clearly told what "declarative configuration" meant, what it was and what it did and how it worked and why they might want it, then maybe they would care.

I suspect, but do not know, that most do not.

Re: Serpent OS Pre-Alpha-0 released

#50

Why someone would want an imperative distro over a declaratively configured one?

Because most real-world problems are subject to hysteresis [1], and declarative systems fail very badly at modeling history.

A very simple example:

* install a server program, which for security is run as a dedicated (newly-created) user

* run the server program, which generates logs owned by that user.

* uninstall the server program - but the user must not be deleted while the log files exist

This example is simple enough that many declarative systems don't require too much massaging to handle it, but many more complicated examples exist.

[1] https://en.wikipedia.org/wiki/Hysteresis

Post reply on HN