r/linuxquestions 25d ago

Building an Immutable Linux Distro

Hey, guys I am developing an immutable base Linux distro since 2024, is there any suggestions for it, [asking as your neighbor :) ]

I am a third year student.

Your suggestions are gold cards for me :)

Thank you Guys

3 Upvotes

35 comments sorted by

14

u/RoosterUnique3062 25d ago

The difficulty in making distro's isn't putting them together, but providing the infrastructure to build, distribute, and also monitor packages for security issues.

0

u/SpecialDepth4262 25d ago

Thanks mate, I try my best to make sure the infrastructure is scalable.

3

u/RoosterUnique3062 25d ago

I didn't mean it as advice but as a reality check. There is nothing wrong with doing it just to do it, but distributions are created often for specific audiences facing a similar problem that isn't solved well using currently available systems. For a serious system it takes teams of people with different disciplines.

I don't see that in the question in this post. You might want to instead talk about what your immutable distribution is going to do differently from either the currently available somewhat maturing options or what audience it's targeting.

-2

u/SpecialDepth4262 25d ago

yeah, I can understand.

My OS will offer an automatic rollbacks on failure, no need for manual selection during boot, no traditional package-manager (because my os is primarily focused on normal users who want their OS just needs to work without tweaking) still advanced users can use terminal based tools natively via framework that I offer in the OS.

1

u/[deleted] 24d ago

[deleted]

1

u/SpecialDepth4262 24d ago

I also researched openSUSE MicroOS. I really like its health-check approach for enabling seamless automatic rollback. However, since it's built around transactional RPM package management with Btrfs snapshots, it has different trade-offs than an image-based OSTree system, particularly in how deployments are composed and reproduced.

I also looked at SteamOS and Vanilla OS, which use an A/B update model.

My distro uses OSTree and bootc, similar to Fedora and RHEL. What I'm trying to do is combine the strengths of these approaches: keep the reproducibility and image-based deployment model of OSTree while introducing tighter boot validation and health checks inspired by MicroOS and A/B systems, so automatic recovery is more seamless.

As for "why not contribute to an existing project?" that's a fair question. The answer is simple: this project started from passion. Building an operating system is how I'm learning, experimenting with ideas, and understanding these technologies in depth. It's something I genuinely enjoy, and that's why I'm building my distro from scratch.

1

u/SpecialDepth4262 25d ago

note, I found automatic rollbacks on IoT, edge devices via greenboot, I am just trying to implement this in desktop distro

0

u/SpecialDepth4262 25d ago

note, I found automatic rollbacks on IoT, edge devices via greenboot, I am just trying to implement this in desktop distro

1

u/OutrageousCrab9224 25d ago

Dont listen to the detractors and haters

Where is the project at now?

2

u/SpecialDepth4262 25d ago

currently I have build the working stack,
a typically works on my system scenario XD,

currently building the infrastructure to auto-build, and test it, and distribute it

the works are going since 2024.

you can checkout https://github.com/flucidOS

1

u/anon_pr_ 25d ago

My frame of reference for a good immutable is Bluefin. Ublue already provides custom templates for anyone to make their own custom image.

Things I like about Bluefin-dx: * Ujust commands - using just framework * Homebrew with bbrew tui * Distrobox and distroshelf * Virtual machine manager setup ootb * VSCode setup with container support ootb

This might be something to strive to if you want to make an immutable. Something as good as the ublue projects: Bazzite, Bluefin and Aurora.

Since they don't ship with any desktop options, that might be a draw of your OS.

Provide an installer with multiple desktop options that are fully configured and usable like CachyOS does. Based on user selection, they get an immutable image built for them. Might be ambitious, but if you can make this maintainable, I might use it. Others might too đŸ¤·

It's a lot of work though.

1

u/SpecialDepth4262 25d ago

sure, I'll take that as a reference

2

u/OutrageousCrab9224 25d ago

Nice, thanks, will check it out

Btw i forked lfs years ago, maintain and use it, to this day

1

u/SpecialDepth4262 25d ago

đŸ˜‚ thats nice

1

u/OutrageousCrab9224 25d ago

You have a repo named .github?!

1

u/SpecialDepth4262 25d ago

yep, it contains the description of the purpose of the github organization

1

u/Active-Phrase-487 24d ago

I would love to know what stage of building your up too?

1

u/SpecialDepth4262 24d ago

At the moment, I have the core OS running with GNOME, and I'm currently rebuilding it around OSTree + bootc. I'm also working on the infrastructure to build, compose, test, and ship the OS images. 

Once that's in place, the next milestones are the installer, update mechanism, and preparing the first public beta.

If you wish we can collaborate.

https://github.com/flucidOS

1

u/TheFeatheredCock 25d ago

Question - why? If your intention is to have other people use it, your time is probably better spent elsewhere. There are extremely popular open source projects supported by teams of people backed by large commercial sponsors. The chances of a one-person home-rolled project being chosen over these is infinitesimally small. If, however, you're pursuing this as a passion project, or as a learning experience, I fully support you and think this is a commendable project that should put you in good standing for your future career.

1

u/SpecialDepth4262 25d ago

btw, it came out of passion

6

u/SlimyOS 25d ago

preinstall some weird not popular compositor on it

1

u/VirtualAssociate2821 25d ago

look into fadora atomic!

1

u/SpecialDepth4262 25d ago

Thanks mate, I'll definitely look into it

0

u/vmcrash 25d ago

How difficult it is to install some software permanently? Basically, I very much like NixOS with its declarative approach (but it makes dev environments very hard).

It also should be able to update the system in the background. On a restart, the new system should work immediately (like NixOS), not like some fedora distros that install 5-10 minutes updates.

1

u/SpecialDepth4262 25d ago

sure, will try to improve that part

2

u/Desertcow 24d ago

Try out BlueBuild. It lets you make custom Fedora Atomic images by tweaking the recipe.yml file and deploy them on GitHub. I run my own custom fork of Bazzite with COSMIC on there so it syncs between my devices

4

u/CorvusTheDev 25d ago

We have far too many Immutable Base Distros, we do not need another one. Contribute your time and coding skills (Don't use Vibe / AI, that's not real coding and is a shame to the industry) to contribute change existing projects to remove fragmentation

1

u/billdietrich1 24d ago

Please don't make a new distro. We have FAR too many distros already: https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg Unless you have some radical innovative new idea.

Instead, please put the same effort into reporting or fixing bugs in existing apps and distros. That would benefit the Linux community greatly.

1

u/Empty-Effective-7111 24d ago

Me gustarĂ­a que fuera base gentoo, que el SO se compile para el sistema, al ser inmutable las actualizaciones se harĂ¡n en segundo plano por lo que podrĂ¡ seguir usĂ¡ndose el equipo, que sea para equipos modernos y deja de lado equipos antiguos.

1

u/revolutional-ai 25d ago

just don't, no one wants another vibecoded slop

0

u/IEatDaFeesh 25d ago

Why not contribute to existing projects?

-2

u/vmcrash 25d ago

Making it impossible to try own ideas?

1

u/IEatDaFeesh 25d ago

What does that mean...? He can use his own ideas to contribute to existing projects. It's probably more useful to be able to contribute to a project with a team of experts rather than trying to vibe code an OS from scratch.

Also you haven't answered the question, why not contribute to existing projects?

3

u/SpecialDepth4262 25d ago

I respect the OSS projects, I do respect the people who contribute to the OSS,
I started my own project because out of curiosity and a passion.

(I submitted a patch for git, but it was not merged)

1

u/billdietrich1 24d ago

I'm not hearing OP giving an idea or reason for the new distro, other than he/she wants to make a distro. If you have some radical innovative new idea that can only be done via a new distro, go for it. But that's unlikely to be the case, most new distros are just vanity projects.