Thoughts on a more modular, choice-driven installation via Agama

Proposal: Make Tumbleweed a Modular Base OS with Truly Minimal Installation Options

I’d like to propose a change to the way openSUSE Tumbleweed is presented and installed through Agama.

The basic idea is simple:

Separate the operating system, desktop environment, and applications into independent choices.

Tumbleweed is already an excellent rolling-release operating system, and Agama’s current product definition appears to be moving in this direction: the base system is separated from selectable desktop patterns such as KDE Plasma, GNOME, Xfce, LXQt, Hyprland, etc.

I think this architecture should be taken one step further and exposed explicitly to the user.

Proposed installation model

The installer could present three independent choices:

1. System

  • Tumbleweed — traditional/mutable
  • Tumbleweed — transactional/immutable

2. Desktop

  • KDE Plasma
  • GNOME
  • Xfce
  • LXQt
  • Other supported desktops
  • No desktop

3. Software profile

  • Minimal
  • Standard
  • Full
  • Custom

The important part is the definition of Minimal.

If I select KDE Plasma + Minimal, I should receive:

The Tumbleweed base system + the packages necessary for a functional KDE Plasma desktop.

I should not automatically receive games, KDE PIM, an office suite, multimedia applications, graphics applications, or other software simply because somebody decided those applications constitute a typical Plasma installation.

Those applications could remain available through the Standard or Full profiles.

Explicit deselection should persist

There is also a more subtle issue with the current pattern system.

There is already a recent openSUSE forum discussion from a Tumbleweed user who wanted a minimal GNOME installation but found that applications such as games could return during subsequent zypper dup operations because of the dependency/recommendation chain surrounding the GNOME patterns.

This suggests that simply providing checkboxes in the installer isn’t sufficient.

If the user explicitly says:

I do not want GNOME games.

then that decision should remain respected during subsequent distribution updates unless the user explicitly reverses it.

Otherwise the installer gives the user an apparent choice that isn’t actually persistent.

Why I think this matters

This isn’t primarily about saving disk space or removing a few games.

It’s about the philosophy and positioning of Tumbleweed.

One of the things that attracts technically sophisticated users to distributions such as Arch Linux is the feeling that the distribution provides a clean foundation while allowing the user to decide what their system becomes.

Tumbleweed could provide a similar experience while offering substantial advantages:

  • openSUSE’s automated testing infrastructure
  • rolling-release updates
  • Btrfs and snapshot integration
  • rollback capabilities
  • mature packaging infrastructure
  • OBS
  • excellent KDE and GNOME support
  • optional transactional/immutable deployment
  • SUSE’s broader Linux ecosystem

In other words:

Give users the control and minimalism they like about Arch, while giving them the infrastructure and safety that openSUSE provides.

What about Aeon and Kalpa?

I don’t think this proposal needs to replace or eliminate Aeon or Kalpa.

Quite the opposite.

Aeon and Kalpa could continue to exist as curated, opinionated experiences built around an immutable Tumbleweed foundation.

For example:

  • Immutable Tumbleweed + curated GNOME experience → Aeon
  • Immutable Tumbleweed + curated KDE experience → Kalpa

Users who want an opinionated desktop would still have that option.

Users who simply want:

Immutable Tumbleweed + KDE Plasma + nothing I didn’t ask for

would have that option too.

That seems like a healthier distinction between a base operating system and a curated desktop product.

Why Agama seems particularly well suited to this

Agama already appears to be moving toward a modular installation architecture.

The current Tumbleweed product definition has a mandatory base pattern and separate user-selectable desktop patterns. That suggests much of the underlying architecture required for this approach already exists.

Rather than adding more distribution variants, I think openSUSE could simplify the user-facing model by making Tumbleweed itself the common foundation.

The goal

Ultimately, I’d like to see the installer allow something as straightforward as:

openSUSE Tumbleweed

Deployment: Immutable

Desktop: KDE Plasma

Software: Minimal

Applications: None

Filesystem: Btrfs

Install.

Done.

No games to remove afterward.
No unwanted application bundles.
No pattern archaeology.
No need to learn which distribution variant happens to provide the system architecture I actually want.

Just a clean Tumbleweed system that I can make my own.

I think that could make openSUSE considerably more attractive to experienced Linux users who currently gravitate toward Arch and similar distributions specifically because of their emphasis on user control and minimalism.

Given that this concerns the design and implementation of Agama itself, perhaps the Agama project would be the appropriate place to raise these ideas as well?

https://agama-project.github.io/

1 Like

Will do, thanks for the suggestion.

That is just plain old MicroOS, there will never be a Immutable Tumbleweed.

You can install/configure anything you want via Agama Profiles, I’ve used it to install a Hyprland only Tumbleweed…

Agreed, Agama profiles is the pragmatic way forward if you want a tailored install to suit your needs…

I absolutely get what you are proposing, get the logic of your ideas, but I personally would rather see that Agama’s core gets to a state where the devs say “We have we aimed for and we can now allow any feature request since none of those would break the core.”. What you propose has big implications for something that is still under heavy development. But like said by @deano_ferrari feel free to post on the github project

3 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.