Manjaro Immutable Out Now for Community Testing

Powered by Arkdep from the Arkane Linux project this exciting new Manjaro variant is available for public testing right now!

The goal of this release is to gather community feedback on the technology powering Manjaro Immutable.

Note that this is only an experimental release and not representative of the final version, there is also no support guarantee, so hold off on installing it as your primary operating system, at least for now.

We are hugely interested in gathering your feedback on Manjaro Immutable. Join the Matrix channel or leave a reply down below!

Getting Started

Here is a simple series of actions you can perform to touch upon most major user-facing functionally.

System Requirements

  • 32GB of storage minimum, 64GB or more recommended
  • UEFI boot

Know issue: Ventoy will fail to boot the ISO, dd the ISO directly to a USB stick if intend on running it on real hardware.

The download link is here (updated 16-09-2024): https://download.manjaro.org/arkdep-gnome-installer/20240916/manjaro-gnome-immutable-2024.09.16-x86_64.iso

Checksum: https://download.manjaro.org/arkdep-gnome-installer/20240916/manjaro-gnome-immutable-2024.09.16-x86_64.iso.sha256

0. Install

Download the live ISO and simply install it using the graphical installer. Watch this short video to see how you can try it out with vanilla QEMU:

Alternatively you can use VirtualBox, a QEMU front-end such as gnome-boxes, or install directly to physical hardware. Just make sure to enable UEFI support in the virtual machine configuration or that you are testing on UEFI enabled hardware.

Schermafdruk van 2024-07-31 19-30-22
Rigorous discussion by the team on which VM solution to recommend

1. Run an Update

If you have just installed Manjaro Immutable it should say there are no updates available. If it does update, give the machine a reboot when it completes.

sudo arkdep deploy

2. Get Package Diff Comparing Two Images

It should print a nice diff on upgraded (Or downgraded), new and removed packages.

# If an update is available for the default variant will compare current version to new version
arkdep diff

# Compare current version to another image variant
arkdep diff test-manjaro-kde

3. Switch To The KDE Image

To switch to another image run;

Update: We have since also made test-manjaro-xfce and test-manjaro-cosmic available.

sudo arkdep deploy test-manjaro-kde

Note that after switching it will still default to the GNOME version when updating with sudo arkdep deploy.

To make test-manjaro-kde the default branch for future updates you will have to change repo_default_image in /arkdep/config. If left to test-manjaro-gnome it would download the latest GNOME image when an update becomes available, even if you are currently running the KDE one.

Reboot the system to boot in to the new KDE deployment.

4. Do a Rollback to the GNOME Deployment

Reboot and select the image you wish to boot in the bootloader.

5. Remove The KDE Deployment

Find the KDE image ID, it will be the first item in the list;

cat /arkdep/tracker
8da5433c34d8633d686c0c6cdc8b0d7d0c77d0d5f7 <--- This one
1b07985e7fd28c5722f73ed6937b0c6afedfba33d6

Now remove it;

sudo arkdep remove 8da5433c34d8633d686c0c6cdc8b0d7d0c77d0d5f7

# It can work with an impartial version definition also
sudo arkdep remove 8d

For fun and giggles try also removing your currently active GNOME deployment, it should not allow it;

sudo arkdep remove 1b07985e7fd28c5722f73ed6937b0c6afedfba33d6

Building Your Own Images

One of the primary differences between Arkdep and other immutable solutions is its ease of use, it was purposefully build to make it as easy as possible for other people build personalized configurations for either themselves or a community with a specific use case or preference.

This is a topic we will spend more dedicated time on later, but you can experiment with it already if you wish. Check out the Arkane Linux arkdep-build docs on how to build images, you can use our configurations as a template for your own work. Happy hacking!

Rough Technical Overview

Arkdep is a simple shell script script only dependent on a few GNU Coreutils, Bash, Btrfs, wget, curl and Systemd. To utilize it you require no dedicated infrastructure, no weird dependencies and no magic.

Images are build by an image provider, this could be you building images for yourself or a distro which prebuilds and tests images before releasing these to a wider community.

These images are uploaded to a simple HTTP repository and downloaded by Arkdep. Alternatively, self-made images can also be deployed entirely locally directly from Arkdep’s cache.

The downloaded images are exported Btrfs subvolumes, they will be imported by Arkdep and made bootable by configuring a bootloader entry for it to mount said subvolume as root.

24 Likes

I’m very interested in immutable versions, I’ll will try it on Monday at work.

https://forum.manjaro.org/t/creating-the-unbreakable-manjaro-in-the-keep-it-from-breaking-sense/147304/7/

Can we know which are Manjaro’s plans regarding immutable versions? Do you think they will become more “official” or they will remain just a curiosity? Thanks. :slightly_smiling_face: :+1:

4 Likes

Our plan is definitely for it to become an official variant of Manjaro. With the community testing version we’re now gathering some feedback on what people expect from such a variant and what should still go in there or what could be slimmed down.

12 Likes

Hi !
I try to grasp what an immutable is.
Is it close to having two root an an independent /home ?
Can it have several kernel versions like in the legacy Manjaro ?

1 Like

That is a fairly accurate description indeed.

On top of that it does atomic updates and keeps the old pre-update version around for rollbacks. Atomic means the system will only apply an update if it is successful, the rollback allows you to still fall back should the new update introduce some type of issue.

Regarding kernels, each deployment has its own kernel, right now only a single kernel per deployment is supported. But this is something we could quite easily change should more people voice a desire to have more than a single kernel per deployment.

9 Likes

I wonder what Immutable is, and in case others are as well https://www.howtogeek.com/what-is-an-immutable-linux-distro/

4 Likes

I know eventually someone is going to point it out, so allow me to be the one to do it.

Immutable as a term is controversial. Most other distros (VanillaOS, ChimeraOS, Silverblue, Ublue) are all moving away from the term arguing that the system is technically not immutable and referring to it as such is inaccurate, since you can easily unlock it. So they are instead calling it atomic which is considered more accurate, or they avoid both descriptions all together and pretend to just be another distro.

Yet at the same time the community almost universally calls it immutable, whenever these distros are covered by media it is almost immediately referred to as such even if the distro itself never calls itself immutable.

Over at Manjaro we discussed this topic, I also discussed it with the Vanilla OS devs and did some digging in the marketing material of other distros and the socials of well known people from the immutable scene like Jorge Castro.

I think the name immutable will stay, it will just be another one of those names which may not be entirely accurate yet due to historical reasons we are stuck with it, it has taking on a meaning of its own in the context of Linux. This is not a unique situation within tech.

I have been trying to make up a name for Manjaro Immutable as to not do the opposite of what the ecosystem is trying to do, Emerald, Evergreen etc… but nothing so far has stuck.

What are the community’s thoughts on this?

8 Likes

Testing Fedora Kinoite (immutable KDE) one thing I didn’t like were huge system updates (800MB) each two days, and these updates were much slower than usual. How are immutable Manjaro updates?

And the apps? Can we install packages as usual or everything should be containerized via flatpak/snap?

2 Likes

~1.4GB for GNOME, ~1.9GB for KDE Plasma. Once the download is completed it usually takes less than 20 seconds to deploy on reasonable specced hardware.

If you can maintain a reasonable download speed such as 15MB/s, it is much faster than rpm-ostree, even though it is much heavier on bandwidth. rpm-ostree typically taking 5+ minutes to do a deployment, Arkdep does it in 2.

For apps you will rely on Flatpaks and Podman/Distrobox. Unless you want to build your own images, in which case you will have full flexibility on what you ship with your image.

You can at any time invoke pacman which will prompt you to unlock root and install stuff if you must. But these changes are lost when updating.

5 Likes

I think Manjaro Atomic sounds pretty cool, but maybe that’s just my age…

7 Likes

I fear the community may view that as copying Fedora’s “Atomic Desktop” branding.

5 Likes

I had Bluefin installed on this old Chromebook (4Gb RAM, 32Gb ssd, Celeron processor), which I use playing with new or different distros.

Found Bluefin a bit clunky and slow compared to stock manjaro gnome so trying Immutable was of interest.

First discovery - the installer didn’t seem to work with Ventoy, so made a normal usb installer instead.

It feels way snappier than Bluefin did (to be fair, probably because Bluefin offered to use a micro USB stick plugged into one of the ports to extend the system storage, may have slowed things down compared to using the internal ssd only).

Will stick with this for a while. But with the limited software repos available, it doesn’t seem quite like manjaro…

2 Likes

I have seen other people also report issues with Ventoy, might have something to do with it only being EFI bootable.

Current idea is to build an ecosystem around it, so you don’t have to be limited in configuration. You can use a stock Manjaro config if it suits you, or find a config maintained by the community which is more in line with your preferences and needs.

Or maybe you want to be an image maintainer yourself.

An AUR for immutables you could call it.

2 Likes

I second Manjaro Atomic. Wonky names get too hard to follow after two versions. I don’t think there will be an issue with Fedora Atomic as they chose to forgo that for their primary DEs and kept the wonky names.

Manjaro Atomic Gnome
Manjaro Atomic KDE
Manjaro Atomic (fill in DE/WM of choice)

Besides that, are there plans for an ARM version?

4 Likes

ala ‘atomic’

Manjaro Fission
or
Manjaro Fusion

4 Likes

+1 for Evergreen

2 Likes

It should, in theory, work on any ARM platform which includes a UEFI. But this is completely untested. I can’t think of any blockers which may prevent it from running.

At the moment nothing is planned yet, but we may attempt building something in the future.

When I suggested the name, the first reply was “Do you mean that ship which got stuck in the Suez Canal?”.

Ooookay, i guess you can make that association too. What i actually meant was something that is always green and fresh like on first install, like a pine tree in winter, because it cannot be made dirty with customizations in the root filesystem.

2 Likes

That was also the intended reference I was trying to make. Evergreen trees.

3 Likes

So you may have the same issue with Evergreen:

https://en.opensuse.org/openSUSE:Evergreen

1 Like