image-based Linux desktops
This guide is for people looking for information on running image-based Linux distributions and associated tools and goodies. Note that these systems aren't totally immutable, but no one would ever click on an awesome-anti-hysteresis
list. For this list server distributions like CoreOS and Flatcar are not included, this is intended for users who have been using traditional linux distributions on their desktop and need consolidated information.
Blogs
These should be enough to get you started.
- “Immutable” → reprovisionable, anti-hysteresis- Colin Walters
- The Birth of the Kubic Desktop - Richard Brown
- Project Atomic + Docker: A post package world? - Colin Walters - it's an older post but it checks out
- Introducing flox - Nix for simplicity and scale- Barry Plunkett
Talks and Videos
- Kubic - openSUSEs Container Starship - Richard Brown
- openSUSE MicroOS - Richard Brown
- Can MicroOS Desktop be your Daily Driver? - Dario Faggioli
- MicroOS Desktop: The Road to Daily Driving - Richard Brown
- 19 talks on Fedora Silverblue and related technologies - many recorded talks here, too many to list here, but worth it!
- ostree CLI for OS management - Denis Pynkin
- Let's try Fedora Silverblue - Adam Šamalik
- How Nix and NixOS Get So Close to Perfect - Xe
- Fedora Silverblue: is this the FUTURE of Linux? - Project of the Month - older video but an excellent review of the major components
- Learning the difference between Red Hat distributions and what Fedora Silverblue is - JJ Asghar
🆕 Linux After Dark – Episode 07 - the hosts try silverblue and did an episode on their experiences.🆕 Fedora Silverblue: An Immutable OS🆕 What's new in (rpm-)ostree - 2022 edition! - DevConf.CZ 2022
Distributions
- Fedora Silverblue - Silverblue is a variant of Fedora Workstation. It looks, feels and behaves like a regular desktop operating system, and the experience is similar to what you find with using a standard Fedora Workstation.
- Fedora Kinoite - Similar to Silverblue, but based on KDE.
- openSUSE MicroOS - a variant of openSUSE Tumbleweed and serves as a base of openSUSE Kubic, a Container as a Service platform.
- NixOS - a Linux distribution based on Nix package manager
🆕 awesome-nix - A curated list of the best resources in the Nix community.
- Guix System - a Linux distribution based on the Guix package manager based on Nix
- EndlessOS - A Debian derivative distribution with a read-only root filesystem managed by OSTree and Flatpak for application delivery and update
- rlxos - A immutable, independent general-purpose distribution with primary focus on single file per application.
- carbonOS - An open operating system designed from the ground-up to be intuitive and robust. The blog post explains the goals
Tools
- Toolbx - Tool for containerized command line environments on Linux
- Distrobox - Tool for containerized command line environments on Linux, distribution agnostic, supports a wide variety of containers , works both with podman and docker - This is a great tool to start with on your existing distro to learn working with day-to-day container workflows.
- silverblue-nix - Andrew Hayzen's steps for getting nix working on Fedora Silverblue.
- podman - Podman is a daemonless container engine for developing, managing, and running OCI Containers on your Linux System.
- gnome-shell-extension-containers - This neat extension lets you see what containers you have, start/stop/restart, pause, and shell into them right from the notification area.
- Podman desktop companion - graphical management of your desktop containers
- libostree - Operating system and container binary deployment and upgrades
- Toolbox Visual Studio Code Integration - Toolbox Visual Studio Code integration
- Endless OSTree Builder - Stripped down Endless ostree builder for Debian
- Flatpak - a utility for software deployment and package management for Linux. It is advertised as offering a sandbox environment in which users can run application software in isolation from the rest of the system.
- ChromiumOS - Good design document on how Chromium implements its autoupdate mechanism
- osbuilder - Build-Pipelines for Operating System Artifacts
- flatpak-ostree-dedup-stats.py - script to show you how well the ostree deduplication is working, this one is neat
Configs from the Community
If you're automating the config on systems like this please PR your config to share:
- ostree-pitti-workstation - Fedora minimal sway developer desktop
🆕 ostree-xfice-desktop - This is an rpm-ostree-based Fedora Xfce desktop.- zepyros-dev's config
- JayDoubleau's config (ansiblue)
- castrojo's config (ublue) - A familiar(ish) Ubuntu desktop for Fedora Silverblue.
🆕 ansible-silverblue - Jim Campbell's ansible playbook for silverblue🆕 Sodalite: A Pantheon Experience for Silverblue
Tips
Contribute
Contributions welcome! Read the contribution guidelines first. We need more nix resources so if you have good ones please consider PRing one.
If you don't know how to use git then file an issue and leave a link, I'll integrate it into the list!