17 ms·
Sixos: A nix OS without systemd [video]
- transpute 2y agoSlides: https://cfp.cccv.de/media/38c3-community-stages/submissions/8QZKGS/resources/sixos-talk_AeFJi9n.pdf https://cfp.cccv.de/media/38c3-community-stages/submissions/... > On NixOS, either the initrd "secrets" or the software that decrypts them is stored unencrypted on writable media. Ownerbooted sixos closes this loophole without any "trusted computing" voodoo, eliminating all unencrypted storage except for an eeprom whose hardware write-protect pin is connected to ground... coreboot [loads] an immutable pre-kexec kernel from write-protected SPI flash... authenticate the user, decrypt writeable storage, kexec into the post-exec kernel... The speaker runs ownerbooted sixos on his workstations, servers, twelve routers, stockpile of disposable laptops, and on his company's 24-server/768-core buildfarm. (via https://news.ycombinator.com/item?id=42881772 https://news.ycombinator.com/item?id=42881772)
- mtillman 2y agoFor those looking for a Linux that works like BSD, https://voidlinux.org/ https://voidlinux.org/.
- nucleogenesis 2y agoIs the XBPS thing kinda like BSD ports?
- cbsks 2y agoAlso see https://www.gentoo.org/ https://www.gentoo.org/
- resonious 2y agoOr a linux that actually uses the BSD coreutils https://chimera-linux.org/ https://chimera-linux.org/.
- gigatexal 2y agoDoes it make ZFS on root stupid easy and has ZFS boot environments?
- ssl-3 2y agoNope. Void generally plays well with ZFS, including kernel updates, but installing on ZFS root is very much a DIY process.
- kennysoona 2y agoAlpine does. Just boot from the extended ISO and modprobe zfs and install zfs tools.
- gf000 2y agoThe normal, systemd NixOS does actually make it "stupid easy". It will fetch the latest kernel that is compatible with ZFS and has single-line config options for auto-snapshots, and the like.
- gigatexal 2y agoDid not know this. Very cool. Does it also make it easy to replace grub with zfsboot environments?
- gf000 2y agoI don't have personal experience with zfsboot - I have used UEFI/systemd-boot previously with ZFS root, and now use an initrd which loads the encryption key to ZFS root. But NixOS itself does something similar, it has generations and if you change some setting and rebuild your system, the previous' link will be available in the boot menu, so you can easily try out stuff and just revert if it doesn't work - it is file system independent, but it only handles nix-specific stuff.
- plagiarist 2y agoI am struggling to get systemd to cooperate with a TPM on boot right now, let alone ZFS. I'll probably drop back to initrd. I just want encryption at rest for when it comes time to dispose of the disk, there's not supposed to be unencrypted sensitive data on it anyway.
- kennysoona 2y agoBetter yet just use Alpine IMO.
- seany 2y agoI wish more distros would start picking this up. Systemd is awful
- dredmorbius 2y agoWhy or how specifically?
- snvzz 2y agoA nix OS w/o Linux would be interesting as well. Microkernel multiserver systems could use more exposure.
- anotherhue 2y agohttps://github.com/nixos-bsd/nixbsd https://github.com/nixos-bsd/nixbsd
- Coolbeanstoo 2y agoGuix can run on top of the hurd https://guix.gnu.org/en/blog/2024/hurd-on-thinkpad/ https://guix.gnu.org/en/blog/2024/hurd-on-thinkpad/
- likeabatterycar 2y agoWhy do people insist on living in the 1980s? systemd has enabled so much missing and previously convoluted functionality. There is a small but vocal coalition of admins that refuse to learn new skills. As if we didn't have enough "systemd free" novelty distros. If you want to live in the past, go run SunOS. You might need a dusty old tape drive, though.
- dijit 2y agothe dismissal of systemd criticisms by saying they’re unimportant (for you) or that admins are living in the past has got to be one of the most annoying things about the topic. It devolves into a flamewar because of it, since nobody can actually engage constructively once that happens. I’ve laid my actual criticisms bare multiple times on this site. 1) The tight coupling of the userland with systemd means that while systemd replaced a pleathora of inits (not just sysv): the target is now too large to be replaced even if there are better ones. Systemd is the last init linux will have, and increases the barrier to port software to other unix-likes. 2) The non-optional/default features have been buggy and difficult to replace. Journald has no replacement; systemd-networkd is one of the most common causes of failure for my desktop due in part to being flakey when dnssec is not available. 3) The overreliance on dbus turns the “the unix philosophy” ;) away. Text as a universal communication medium, everything is a file, etc. There are more, but these are my main ones. Throwing away the corpus of admin muscle memory is not an an issue anymore. To be blunt, I was using Fedora when systemd was coming out, I know how it works intimately because it was constantly broken. Part of what gives me pause is that I know how utterly undebugabble it is when it fails: it just hits those causes less frequently as the world is forced into using it. It becomes battle hardened. Oh, and the obvious criticism agains the maintainers who have been very unapologetic to bugs and undesired behaviour, in a much worse way than the Apple “you’re holding it wrong”. Did you ever consider that it’s also free software nerds who are the most likely to hate being told what to do?
- likeabatterycar 2y ago> Systemd is the last init linux will have, and increases the barrier to port software to other unix-likes. Why would you write portable software that has a dependency on an init system? > systemd-networkd is one of the most common causes of failure for my desktop What is objectively worse than buggy networking in systemd is having 26 different incompatible ways to configure networking in Linux. It is easier to settle on one method (like literally every other OS) and fix the bugs than continually come up with newer, equally buggy and broken, ways of doing it.
- __MatrixMan__ 2y agoThis is pretty cool. I especially like the better encrypted boot support and that it seems to harmonize better with nixpkgs (https://discourse.nixos.org/t/sixos-a-nix-os-without-systemd/58141/15 https://discourse.nixos.org/t/sixos-a-nix-os-without-systemd...). Curious about the infusions bit. It not having systemd seems like a bit of a distraction from all of the other stuff that has gone into it.
- likeabatterycar 2y agosystemd already has encrypted boot support. I suppose when you rip something out you have to reinvent all its functions. At that point, any rational person would question the reasons for doing so. Like removing the transmission from a car out of spite then realizing you need a way to switch gears.
- jeffrallen 2y agoOr ripping the combustion engine out to make a better car with electric and then realizing you ALSO don't need the transmission!
- imp0cat 2y agoAnd then later finding out that a transmission in an electric car will help you both with top speed and mileage, so you have to put it back. This is just the same old "systemd sucks, let's rip it out" and then later reinvent everything it provides, because it was needed. Also commonly known as reinventing the wheel, the curse of any IT project.
- wtetzner 2y ago> Also commonly known as reinventing the wheel, the curse of any IT project. Continuing with the vehicle metaphors, the wheel has been reinvented many times for different purposes. The wheel on a tractor is different from that of a Formula One car.
- 2y ago
- ethagnawl 2y agoIt's a shame there isn't a distribution (at least that I'm aware of) which is dynamic and modular enough to allow choosing your own "process manager" at install or even on boot.
- jchw 2y agoI believe Gentoo supports multiple init systems, but it's definitely a challenge no matter what.
- colechristensen 2y agoGentoo is fun and does indeed give you the choice but…
- edoceo 2y agoBut.... nothing. Gentoo is awesome. I have free KoolAid.
- isatty 2y agoCompilation is so fast on modern processors that it’s not even much of a hassle. Portage is the best package manager out of any distribution. There are no buts. Gentoo is awesome.
- imp0cat 2y agoI am told that there actually are precompiled packages available in Gentoo now.
- blaerk 2y agothis is correct, there's even a precompiled kernel (dist-kernel), it works great! and when packages doesn't match your system settings, portage will pull the source and compile them. it's great!
- tmtvl 2y ago
- deleted 2y ago[deleted]
- deleted 2y ago[deleted]
- 123nameuser 2y agoWhy everything is inflated and bloated? It is foundational to our computer systems.* There is alternative way, functional programming, that is much harder to learn than Object-Oriented, but makes cleaner code without side effects. So Six/NixOS is very promising and going to install it when I have learned Haskell first to understand it's foundations more deeply. * "Can programming be liberated from the von Neumann style?" https://dl.acm.org/doi/pdf/10.1145/359576.359579 https://dl.acm.org/doi/pdf/10.1145/359576.359579
- otabdeveloper4 2y ago> but makes cleaner code without side effects No, that is an urban legend. > when I have learned Haskell first to understand it's foundations more deeply Nix is nothing like Haskell. Also, the functional and lazy nature if Nix is not an ideological decision, it's a necessity when you have a giant monorepo config for 200000 packages. (Without laziness you'd have to wait for an hour just to evaluate the config options.)
- 123nameuser 2y agoWell Haskell was mentioned many times in presentation, sixos is “Gentoo with Haskell instead of Python” https://cfp.cccv.de/media/38c3-community-stages/submissions/8QZKGS/resources/sixos-talk_AeFJi9n.pdf https://cfp.cccv.de/media/38c3-community-stages/submissions/... But thank you for insights, I have learned Haskell basics and in awe already. Maybe "functional code is going to fix the world" not the full truth when I get more experienced ;-)
- lofaszvanitt 2y agoThe new dead end is approaching, fast.
- mongol 2y agoThe good thing about this that it is a Nix OS without systemd, not NixOS without systemd. systemd is so well integrated in NixOS that any attempt to introduce an abstraction to make it pluggable would come with serious disadvantages. I am all for an alternative Nix OS trying new approaches though, and sixos seems quite innovative.
- sidkshatriya 2y agoCan anybody explain to me again why systemd is so bad ? Genuinely I'm not sure anymore: It is chock full of features and it gets the job done. Since it is used in a lot of big distributions it gets a lot of fixes, updates, testing and feature improvements regularly. Yes, it is maybe monolithic (but so is the Linux kernel). Its philosophy may differ from unix's "get one thing done well" too but integration of various functionalities comes with its benefits. Some people say it is bloated. The substitutes to systemd are lightweight but less featureful. Maybe some of them will get bloated as they achieve feature parity. People have a right to build substitutes and replacements -- I believe in the "Let a hundred flowers bloom" philosopy. However I can't understand why systemd is the point of so much disagreement.
- Xiol32 2y agosystemd has done nothing but make my life easier. The people still moaning about it simply haven't used it and refuse to learn.
- tazjin 2y agoAn important skill in life in general is to understand that your personal needs and requirements are not the same as everyone else's.
- megous 2y agoSome people may be at the other side of bell curve of "understnanding systemd on X axis" and "liking it on Y axis" of the graph. :)
- egorfine 2y agoNothing makes my life easier than pulling my hair on why tf sshd listens to port 22 after editing /etc/ssh/sshd_config and restarting multiple times. Oh, of course, it's now systemd that listens to port 22, not sshd. Nothing makes my life easier than cleaning out crontabs of things that wake my box in the night and find out that something still gets launched. Oh yes, systemd now has timers no one asked for. Nothing makes my life easier than disabling a service then masking a service then masking it's sockets, then blanking files then chattr +x those files and end up having broken ubuntu instance because there are so many ways to launch a service it's not even funny at this point. Nothing makes my life easier than finding out multi gigabytes /var/log/journald folder that has exactly zero reasons to exist because text-based logs are still collected and properly rotated in a place where any sane person would expect them to be. Shall I continue or do you get the gist? :-)
- minhoryang 2y agoIs there any video demo of the booting sequence?
- sudarshnachakra 2y agoI had tried chimera-linux with dinit (on a VM with GNOME desktop) it was a good experience while it lasted and loved the TL; DR that chimera writes and it was DIY distro which was quite good like arch in it's initial days. But now I'm back on fedora for want of packages and not being on a mainstream distro is all rainbows and unicorns until we hit the corner case or a missing package which is available only as flatpak and won't integrate with the look and feel of the desktop environment.
- yjftsjthsd-h 2y ago> But now I'm back on fedora for want of packages You'll still be off the beaten path, but you could fix this particular complaint by running Chimera and then putting nix the package manager on top of it
- kombine 2y agoGuix also does not use systemd, but its own service manager Shepherd. Edit: the author of sixos mentions it, boils down to personal preference of not liking Scheme.
- poulpy123 2y agoAs a simple linux user that recently tried nixos to power a very small server, I would say that systemd wasn't part of the issues I encountered at all. It was the confusion tooling, the documentation all over the place, and the lack of ressources on specific topics.
- __MatrixMan__ 2y agoI struggled through that phase and now nixos is pretty comfortable to me. Some of the improvements in sixos are attractive, but I'm afraid to try it because it's going to be the same thing but way worse. There's no sixos community, there's just this video, a forum post or two, and the codeberg repo. That's it.
- t43562 2y agoI have to admit I'm not a big fan of s6 - I found it very hard to understand the scripting language execline. So in Hacker News fashion: dinit is the one I find easiest so far. It has a declarative syntax but it's not a monolith. For me it solves every thing I didn't like about SystemV and yet it's not embrace, extend, smother.
- _fsql 2y agoAnother fork, similar to what happened with other Linux projects regarding systemd. The difference is that in NixOS and now SixOS (SexOS), things are more dramatic, and they love piling up a bunch of complex and unnecessary crap on top of Linux. :D