Lennart Poettering: Fitting Everything Together
The blog post explores integrating systemd components for Linux OS development, emphasizing hermetic /usr/ design, image-based OS with security features, self-updating systems, and community-driven desktop OS with advanced security measures.
Read original articleThe blog post discusses the concept of fitting various systemd components together to build Linux-based operating systems. The author emphasizes the importance of hermetic /usr/ design for immutability, security, adaptability, and uniformity in OS development. They propose an image-based OS approach with modern security features like SecureBoot and TPM2. The post outlines design goals such as cryptographic validation, self-updating systems, robustness against failures, and clear separation of resources. The focus is on building a desktop OS that is open source, hackable, and community-driven, contrasting with closed systems like ChromeOS. The author highlights the need for a clear trust chain, offline security measures, and self-descriptive, self-updating components. They advocate for a hermetic /usr/ structure for OS resources, enabling atomic updates, factory resets, and cryptographic integrity checks. The post also touches on partition table design, discoverable partitions, and booting mechanisms for such OS architectures. Overall, the author's vision is to create a modern OS based on existing distribution models while incorporating advanced security and adaptability features.
Related
Show HN: EtchaOS – Secure, immutable, in-memory remixes of popular Linux distros
EtchaOS is a secure, minimal, and immutable Linux distribution for cloud, on-premise, and embedded systems. It prioritizes security, consistency, automatic upgrades, flexibility, and customization. Developed by Candid Development LLC.
Booting Linux Off of Google Drive
A programmer's competitiveness leads to booting Linux from Google Drive, facing challenges like networking setup and mounting an Arch Linux root from an S3 bucket. Despite setbacks, Linux boots successfully, integrating Google Drive but facing performance issues and complexities.
Booting Linux Off of Google Drive
The author successfully booted Linux from a Google Drive root independently, using FUSE programs and custom initramfs on Arch Linux. Challenges with networking, permissions, and dependencies were addressed through manual solutions.
WASI API: Capabilities and Filesystems
The blog post delves into WASI's filesystem API design, focusing on handles, sandboxing, and avoiding absolute paths for security. It discusses ambient authority, access control, typed APIs, and future authority evolution. Emphasizes enhancing compatibility with existing tools.
The Linux desktop is self-destructive
The blog post criticizes the Linux desktop community for self-destructive behavior, urging a shift towards constructive criticism and cooperation to advance software development. Emphasis on respectful communication and collaboration for a more positive environment.
Why? Because that's what the big boys at Android and Microsoft are doing?
> 4. Everything should be cryptographically measured, so that remote attestation is supported for as much software shipped on the OS as possible.
Just no. Remote attestation is an unacceptable concept for me, full stop.
> 6. Everything should be self-updating. Today we know that software is never bug-free, and thus requires a continuous update cycle. Not only the OS itself, but also any extensions, services and apps running on it.
Be able to? Sure, I don't object to that. But I have learned that I, personally, really hate continuously-updating software, so being able to avoid it and do manual updates instead is mandatory. Continuous updates are one of the reasons why I don't use SaaS.
> 11. Things should not require explicit installation. i.e. every image should be a live image. For installation it should be sufficient to dd an OS image onto disk. Thus, strong focus on "instantiate on first boot", rather than "instantiate before first boot".
This isn't a strong objection for me, but I really do want things to require explicit installation rather than something like dd'ing an image. I value the ability to customize installations to fit my way of doing things.
The rest of his design goals seem relatively benign to me, although a number of them are things I don't consider important at all.
I simply don't understand what he means by this:
> 5. Everything should be self descriptive, have single sources of truths that are closely attached to the object itself, instead of stored externally.
A tangential note:
> Given that on Linux flatpak (or on servers OCI containers) are the established format that pretty much won they are probably the way to go.
I really dislike flatpaks and similar, personally. I suppose that I could live with a requirement to use them, but it would be very irritating. I suppose I could also work around the issue by building everything from source rather than using prebuilt binaries. I'd prefer to be able to ignore the entire issue from the get-go, though.
All in all, considering how much I dislike about the systemd way of doing things, I was pleasantly surprised that I found most of what he said here to be reasonably unobjectionable. Much of it is stuff that I don't particularly desire, but wouldn't make me angry at its existence (although some of it would increase the irritation level a bit just because of the extra complexity it brings).
Seeing "security" and "auto-updating", in the same sentence, makes me suspicious. /s
Related
Show HN: EtchaOS – Secure, immutable, in-memory remixes of popular Linux distros
EtchaOS is a secure, minimal, and immutable Linux distribution for cloud, on-premise, and embedded systems. It prioritizes security, consistency, automatic upgrades, flexibility, and customization. Developed by Candid Development LLC.
Booting Linux Off of Google Drive
A programmer's competitiveness leads to booting Linux from Google Drive, facing challenges like networking setup and mounting an Arch Linux root from an S3 bucket. Despite setbacks, Linux boots successfully, integrating Google Drive but facing performance issues and complexities.
Booting Linux Off of Google Drive
The author successfully booted Linux from a Google Drive root independently, using FUSE programs and custom initramfs on Arch Linux. Challenges with networking, permissions, and dependencies were addressed through manual solutions.
WASI API: Capabilities and Filesystems
The blog post delves into WASI's filesystem API design, focusing on handles, sandboxing, and avoiding absolute paths for security. It discusses ambient authority, access control, typed APIs, and future authority evolution. Emphasizes enhancing compatibility with existing tools.
The Linux desktop is self-destructive
The blog post criticizes the Linux desktop community for self-destructive behavior, urging a shift towards constructive criticism and cooperation to advance software development. Emphasis on respectful communication and collaboration for a more positive environment.