I'm rather new to the idea of Immutable Linux, and as Solus will become one I'm worried I might get misconceptions about it. What are the differences that we might encounter in a Immutable OS vs Mutable?

My biggest worry is that it might prevent me from building programs/software from source and installing them. Would that be an issue?

I've never used an Immutable Linux distro before, so this will be new step ahead as I want to go back to using Solus which was my first distro I've used since I made a jump from Windows.

    There's some reading you can do on the internet that explains things rather well, like this post on Distrowatch.
    What it boils down to is that on an immutable system, the core of the OS or root file system is unchanging/unchangeable by the user. There are quite a few distros like this, and they are becoming more popular too. Fedora Silverblue, Nix, openSUSE microos just to name a few. One thing these all have in common is the heavy utilization of containers or containerized applications.
    These systems are great for security, DevOps, and for enterprise Linux. With Nix for example, you can have one config script that will build and load countless identical Nix endpoint machines or servers, making the management of them much simpler for a smaller team. Other areas of enterprise have shifted to container strategies long ago using services like Docker, Podman or LXD.
    Having not used one of these distros myself yet, I'm not sure how the average user experience will change. They are exploding in popularity, and it can't all be security and enterprise related, so there's got to be something there. I feel like you'll have all the capability and customization you have with Solus or many other distros now, it will just be at the user level. Apps, icons, themes, all of this will live in userspace, and the base system is essentially segmented from this. It would allow for things like atomic updates too, which could be really helpful.

    My only worry is how it could affect my development on Solus. As I would need to install or build quite a plethora of static or shared libraries which would normally go to somewhere in /usr/ directory.

    From my understanding, immutable would prevent that from happening. Other worry is, if I can’t change anything in the root, I won’t be able to give any alternative locations to the linker?

    It would be great if someone correct me if I’m missing out on something here.

      Soutaisei from my reading, and experience with fedora immutable sericea, any and all surface level changes (font size, color, other personalization) can be done by editing .config files, but you will lose the big freedom to tamper, cajole, pester, update, and irritate your operating system, as I like to do. Plus the whole flatpack wedding....
      ....I can't say anything better than Bruce^ up there, but I don't think it's a 'perfected' thing yet, and it does feel like handcuffs....I would advise you not to worry or have anxiety: by the time Solus makes this happen the whole thing will probably be re-imagined by them (Ikey Josh etc) and fun.
      It seems state-of-the-art security is the game here...and its early in the immutable game methinks. 2 cents

      Thanks for the reassurance. I love Solus and I want to get back to using it, but if it's something that will hinder my ability to do stuff that I normally need to, it would be difficult...

      I wouldn't worry much about it. If you can run your dev workflows in something like toolbox, podman, or docker, then you should be able to run them on the newer Solus. It will just live in userspace. Someone much more intelligent will be able to explain better, but look at how many developers are working on Serpent or using something like MicroOS or Silverblue as their primary environment. There's obviously ways that this all works well that Brent and I just aren't doing a good job of communicating.

        Brucehankins yeah conceptually I get it but to articulate is madness! who's to say this immutable thing won't evolve 100X by the time serpent rolls out? can you imagine devs moving beyond flatpaks and finding a way to silo their own curated distro packages making the distro even more unique? and somehow evolving system permissions into something more negotiable? they might be too strict in immutables and too lax in regular distros so a 'need to know' criteria might have to be hashed out. it's fun to see play out. I ain't scared of it and I don't believe in a million years it would wreck Solus, which I think is the OP's fear. and that's understandable if one had to be married to flatpaks...

        Soutaisei Well I'm pretty sure the team will find a proper way to dish a suitable way to immutable to us.
        I mean, i'm a full time OpenSUSE user and cannot touch or cope with MicroOS in the proper way, which make me think the way immutable is proposed is more for admin, servers etc. Geek people, but I know that Solus do care about users and people and the team will find a way to make it immutable without killing our expectations or shake us too hard ... and, it is not for now, we still have a long way till immutable become our daily bread, so, take it and load Solus now or after 4.4 is in town and you'll be fine

        It’s partially with what Brent added. While I have nothing against flatpak, I really don’t want to get full on marriage with flatpak. Setting them up sometimes, depending on the app is… Painful.

        My other worry which I mentioned on initial post is installing libraries built from source. Since root will be locked from any modification, I’m beyond lost how I would install static/shared libs or languages built from source.

        Yes, I can put them somewhere else, but the linker will have to be told of the new location which is done with ld, but it also lives in the root

        And I’m weary of changing LD_LIBRARY_PATH

        If you're interested in the direction Solus is heading, I'd check out the SerpentOS tooling and blog posts.

        I don't think Solus will go in a "flatpak only" direction. Based on what Ikey has been talking about, it seems more like we're approaching an evolution of the stateless idea. That said, I'm not working on Solus infrastructure, and I don't believe any devs have chimed it yet, so we may just have to wait and see.

        No, we're definitely not going flatpak-only or anything like that. Serpent has its own packaging format for a reason. When it comes to details about from-source builds (which Serpent definitely supports) in combination with immutability I'm not 100% sure about the details. (I'm mostly a fan of Serpent tooling for it's ability to ease the burden on package maintainers, especially when it comes to huge rebuild stacks, and not too familiar with the other benefits)

        Something I've been wondering about is no legacy boot for Serpent. Will this apply to Solus as well?

        Granted, we are probably a decade out from this mattering anymore (my P3 config finally died with no reasonable replacements, so that chapter has ended), but I still have some older machines that will be doing the dual boot with Win.

          qsl A number of ideas have been floated when it comes to support legacy boot systems, but nothing set in stone yet.