AstrOS - an immutable, secure-by-default distribution built on Arch Linux and the COSMIC desktop
▲ 64 r/linux

AstrOS - an immutable, secure-by-default distribution built on Arch Linux and the COSMIC desktop

The short version:

As said in the title, it is an immutable, secure-by-default distro based on Arch Linux and the COSMIC desktop environment. It uses similar tooling as GNOME OS and KDE Linux. Unlike most immutable / atomic distros that use rpm-ostree or bootc, we use systemd-sysupdate which is most known from GNOME OS. It is currently at beta and considered stable enough for daily use.

What makes AstrOS special is its immutable base, which is shipped as a hashed and signed /usr image that is booted by signed UKI images. Root is LUKS protected and unlocked by TPM2. This combination protects your system from outside modification.

AstrOS base can be extended with currently five extensions, including a Steam gaming extension with the SteamOS gamescope session.

Homepage

Beta announcement

The long personal version:

Why:

Okay you are probably reading this and asking yourself, "What's the point in another distro?". Considering that multiple new distributions get released every week I can't blame you, but I can try to explain it. :) So let me start at the beginning. I always loved the concept of GNOME OS. Later, KDE Linux came to the list of distributions using the systemd tooling. Systemd sysupdate being that low level tool that was simple and just seemed to work, was a massive plus point imo. Then COSMIC went stable and I was fascinated by that desktop. It has the simplicity I loved about GNOME and the tiling and customizability I always wished GNOME had. After using it for a while on Arch, I got to a point where someone asked me to install Linux on his device, and he wanted COSMIC. In my opinion immutable distros are just better for beginners (which doesn’t mean the distro is only for beginners). I mean take a look at smartphones, it is what most "normal users" prefer using nowadays. So I went ahead and wanted to create the distro combining what I love about the rolling release of Arch, the user friendliness & stability of immutable distros, and the simplicity of systemd sysupdate.

The Distro Model:

AstrOS consists of the usual ESP and LUKS root partition. Root is using btrfs and perfectly writable. What's making the distribution immutable (or atomic if you want so) are two (A/B) sets of /usr partitions. Each set consists of 3 partitions: the erofs /usr partition itself, a partition containing its hash, and lastly a partition containing the signature of the hash. The system is booted using signed UKI images. This partitioning model promises a boot sequence that is completely verified. If someone tries to tamper with the partitions / uki's from the outside, then the signature / hash won't match anymore, and the system refuses to unlock the root partition. This raises the bar considerably against offline tampering.

The TPM and recovery key both get enrolled on first boot using systemd-repart. Yes that means we require a TPM2.0 chip. We think that's acceptable for a new distribution, as we force no one to upgrade to it. A workaround to install AstrOS without a chip may or may not be added in the future.

I wanted to keep the base minimalistic, while allowing people to do more advanced stuff. That's why we offer system extensions (systemd-sysext). For example, most people prefer system-packaged installed Steam over the Steam Flatpak. For that, we have the steam-gaming extension. Additional extensions provide virtualization tools, firewalld, waydroid, and most important: Nvidia drivers.

For most GUI apps software can be installed using flatpaks. For non-flatpak apps / terminal applications we have distrobox.

Generally, the whole distro is designed to just work, without the user having to take care of it. Because everyone has a byte-for-byte identical /usr partition, fixing bugs applies to everyone.

Mini FAQ

Here's the complete one: https://astros-linux.org/astros/faq/

Is this vibe coded?
- Nope, our contribution guidelines even forbid it. I want to write all the code / configs etc. myself. Our contributing guidelines require people to know what they are doing

Is nvidia supported?
- yes

What about secureboot?
- currently only with our own custom keys

Dualboot?
- not officially, there's an unofficial guide for dualbooting with windows in the docs

The projects future

The biggest goal is to build a bigger community. Getting more contributors.

I additionally plan to write a small GUI utility using libcosmic to graphically update and install system extensions. Once we are stable, auto-update probably gets enabled.

And yeah, just improving the distro.

Please consider joining our discord :)

Wanna try in a vm first? https://astros-linux.org/guides/installing-in-a-vm/

u/linux-universe — 9 days ago
▲ 160 r/AstrOS_Linux+2 crossposts

We are now in beta!! 🎉

But what is AstrOS?

It is an immutable, secure-by-default Linux distribution based on Arch Linux and the COSMIC desktop environment. It uses similar tooling as GNOME OS and KDE Linux.

What makes AstrOS special is its immutable base, which is shipped as a hashed and signed /usr image that is booted by signed uki images. This combination protects your system from outside modification.

AstrOS base can be extended with currently four extensions (or your own). Including a steam gaming extension with the steamos gamescope session.

Technical details:

- Built using mkosi

- Uses systemd-sysupdate (rollbacks too!)

- Read-only /usr with signed dm-verity

- Full disk encryption is enforced (tpm required)

- Systemd-sysexts and confexts (system extensions)

- Highly opinionated

Who is AstrOS for?

Anyone who wants a secure system out of the box without having to configure anything. It's a system that just works, and you don't have to worry about it.

What has happened since our first announcement?

- Restructured the codebase into mkosi subimages.

- Four new system extensions (NVIDIA, gaming mode, virtualization, and Firewalld).

- Migration to systemd-confext for /etc

- Installer improvements (TPM2 check etc).

- Display keymap list during first boot instead of entering it manually

- Our own theme: Orbital

- Many bug fixes

- Safe mode uki profile

- Package additions

- Compressed images and a new download infrastructure

- We moved from GitHub to Forgejo.

- Our docs/homepage: https://astros-linux.org

- And way more

Links:

Homepage: https://astros-linux.org

Our socials: https://astros-linux.org/#get-involved

Discord: https://discord.gg/f38pGadC2a

Forgejo: https://code.astros-linux.org/AstrOS/AstrOS

GitHub (mirror): https://github.com/astros-linux/AstrOS

u/linux-universe — 20 days ago

Goodbye Github! Welcome Forgejo

Our github repo now is a mirror

We believe that Forgejo aligns much more closely with our values of independence, and we are happy to announce that we have moved to it. To keep the barrier to contribution low, you can log in using your existing GitHub account, which makes account creation much faster and easier.

You can still make issues on GitHub, though we would prefer you to use Forgejo. Pull requests are forgejo only

Thanks!

code.astros-linux.org
u/linux-universe — 22 days ago
▲ 0 r/git

Would you still contribute to a project hosting its own Git platform (e.g., Forgejo, Gitlab)?

Why and why not? Does the option to log in using github make a difference?

I am developing my own Distro currently (AstrOS Linux) and think of switching to a selfhosted Forgejo instance

View Poll

reddit.com
u/linux-universe — 22 days ago
▲ 78 r/AstrOS_Linux+1 crossposts

[COSMIC] AstrOS Orbital theme & Frosted Glass

Heyy, AstrOS dev here

Our Distro has had our own Cosmic Theme for a few days now.

Showcase Infos:

Theme: https://raw.githubusercontent.com/astros-linux/AstrOS/refs/heads/main/system/mkosi.images/base/mkosi.extra/usr/share/cosmic-themes/orbital-dark.ron

Clock: tty-clock

Bonsai: cbonsai

Cava as the audio visualizer

The slightly customized panel and the disabled dock are not part of the default theme. I also increased the transparency slightly for this showcase.

AstrOS Infos:

It's my own immutable Cosmic Distro. Currently Alpha but I've been using it for a while as my daily driver & only distro.

It uses the same technologies as GNOME OS or KDE Linux: sysupdate, confext, sysext, repart etc

Learn more at https://docs.astros-linux.org/, our reddit announcement post or github or course.

u/linux-universe — 27 days ago

⚠️ Breaking Changes: we use systemd-confext now

Manual intervention required!!! See the docs

/etc used to be populated at boot by a hand-maintained list of way too many symlinks pointing back into /usr/share/factory/etc. Every new config file required in /etc meant another line in that list, and anything not listed silently didn't show up. That was a hell to maintain.

Now each image ships its config as a confext and systemd-confext merges it into /etc at boot. /etc stays writable, so your own edits still work and now on every file. Editing symlinks was kinda broken before

docs.astros-linux.org
u/linux-universe — 30 days ago
▲ 9 r/AstrOS_Linux+1 crossposts

Introducing System Extensions & Nvidia support

I‘m happy to announce that we got our first four system extensions.

Steam: this was our first extension introducing system-wide installed Steam and the gamescope session from the Steam Deck we all know and love.

Firewall: while this may get baked into the base image in the future, it is now possible to enable firewalld including a gui to configure it.

Virtualization: libvirtd & virt-manager. We don’t want to be another immutable distro not supporting a proper vm tool allowing gpu / USB passthrough, etc.

Nvidia: we now offer Nvidia drivers as a system extension. While I couldn’t test it myself due to me not owning any Nvidia GPU, this was reported as working.

But what are system extensions and why do they exist? System Extensions are our answer for programs that can’t easily be installed using flatpak or distrobox. While we want to keep our base unbloated and minimal, this allows us to deliver packages needing deeper system access to the users who need it. 

How do I install them?

https://docs.astros-linux.org/astros/installing-software/#system-extensions 

As always, feel free to join our Discord :)

u/linux-universe — 1 month ago
▲ 12 r/AstrOS_Linux+1 crossposts

Steam with gamescope gaming mode: AstrOS has received its first extension!

You may read this and wonder? What is AstrOS. Read our Announcement: https://www.reddit.com/r/AstrOS_Linux/comments/1uqam1b/astros_an_immutable_securebydefault_linux/

As teased before, one item on the roadmap were system extensions, which allows users to add more "features" to the immutable base. Our first is Steam.

This whole update is purely optional. The extension is opt-in.

After enabling the extension as described in our github readme, you can now select the Steam Big Picture Gamescope session in cosmic-greeter (or just use the system wide installed steam in your desktop as you are used to). I plan to add an auto-login option for the gaming session soon while also improving switching between gaming mode and cosmic which is currently only doable by navigating through cosmic-greeter. 32bit libraries are only in the extension, the base image is 64bit packages only.

More extensions are planned, with libvirt probably coming next. An extension for the Nvidia driver is also planned for the indefinite future. (It exists now but is untested as I don’t own a Nvidia gpu)

Keep in mind: AstrOS is still in alpha, so is its new extension :)

Links:

Github

Discord

u/linux-universe — 1 month ago
▲ 91 r/AstrOS_Linux+3 crossposts

AstrOS - an immutable, secure-by-default Linux distribution built on Arch Linux and the COSMIC desktop

I am pleased to announce that AstrOS now has its own subreddit.

⚠️Warning: it is still alpha software!

But what is AstrOS?

You might have heard of KDE Linux (formerly known as Project Banana) or GNOME OS. Both are immutable, image-based Linux distributions for desktop use, powered by the systemd-sysupdate A/B update model.

I have been impressed by their system architecture since their inception, but switched to the COSMIC desktop a while ago. As there wasn't yet a COSMIC distribution using systemd-sysupdate, I created one myself. That's how AstrOS was born!

Technical details:

  • Built using mkosi
  • Using systemd-sysupdate.
  • Read only by signed dm-verity.
  • Full Disk Encryption enforced
  • Highly opinionated

Rough roadmap:

  • Sysextension for Libvirt with Virt Manager.
  • Sysextension for Steam with Gamescope Session Steam
  • Website and documentation-site
  • Improving the whole project

What you can do:

While it is still in the alpha stage, you can install AstrOS right now in a VM (uefi enabled!) or on a device that you don't depend on.

Write bug reports and feature requests

Links:

https://astros-linux.org (still redirecting to the repository)

https://github.com/astros-linux/AstrOS

https://discord.gg/f38pGadC2a

u/linux-universe — 1 month ago