Impermutable boot

This is a feature that has been on the TODO list for already more than 15 years, and finally we have it avaialble for all! :happy_dance: :happybounce:

New Boot mode:

image

As you can see, you have now a new boot entry, if you select it, you can boot into a temporal system, this means that your system is equally the same, with your users and all, just like you left it the last time... but all the changes that you will do on this boot will be lost after your next reboot

This is perfect if you want to experiment with things and you don't want to save your changes, for example:

  • install suspicious software
  • install a lot of packages to play with them and discover new applications
  • run dangerous commands
  • doing massive changes in your system
  • security testings

Following the changes

What if you want to see what exactly is happening in your system? There's also a special feature for that:

When you boot your desktop, a filemanager will open pointing to a specific place that will only show the changes that will happen, for example downloading a new file or modifying existing ones, from this point you can do many things like:

  • seeing exactly what is being modified on your files
  • open the "size of directory" feature to see how much grows in size the changes you are doing
  • going backwards in the root tree to also see what has been modified on the rest of the OS
  • selecting easily the exclusive files that you want to save, for example in a USB, as the resulting work done in your tests

How to enable this feature?

Don't worry, your Elive system will be automatically updated next, including it :happybounce:


Do you want more fun? you can hit the power-button or even run the magic kernel hotkeys like "altgr + print + b" (don't do that in your normal system!) to force a hard, instant reboot... nothing in your system will be damaged!

3 Likes

My Elive Retrowave computer just got the update. Perfect

Thank you

1 Like

This is a great feature ....... sort of like "snapshots" but then the other way round. :happybounce:

Not too sure if it'll really help ironing out bugs considering that my daily workhorse has lots of programs and quirks that a standard Elive doesn't have .... but still.

Lots to discover I think.
I'm wondering how this works exactly and what gets saved and what not ... i.e is 'only' the system impermutable or the user files too ........ and how this does or does-not affect my fully encrypted installs. :thinking:

Heh, makes me all excited as if it's an all new shiny distro. :happy_dance:

1 Like

As a warning: :warning:
I just noticed that "impermutable mode" does not keep zsh or bash 'history'.

It would seem logical not to but if you're like me and use .zshistory as a sort-of command database or merely want to reiterate what you did before, it might bite you after a reboot into "normal mode" if you're not careful.
It also does not keep downloaded/created files or any changes which is actually a feature but does have its downsides. :thinking:

Suggestion
Personally I think I would like some sort of "flag", like a color scheme (like some distros did if one used X11 as root) to mark that you're in "impermutable mode"... or the way QubesOs does to mark trusted and untrusted windows.
At the least a way of finding out if i.e you've left the machine running for a while (like days or weeks) and forgot in what mode its running. Thus risking a lot of data loss.

Not really in a hurry just that I've waited to "repair" anything in case you wanted to know specifics or needed logs. :innocent:
Apparently you've seen the issue ..... do you want any tests done or shall I just upgrade?

As an addition: I cannot access the system files either not as the user nor as sudo.

Definitively the issue happens when the root partition is encrypted only (not tested with extra partitions like /home or similar), the issue seems to be in the tool that manages this feature itself (bilibop), im sending an email to the author now to report the issue, for now I have disabled the feature from elive-upgrader, so affected users should:

FIX:

If you suffered from an unusable normal boot (encrypted installations), the solution is simple:

  • reboot your computer, press the "e" key while the normal boot is preselected
  • edit the boot parameters: search the words "quiet splash" and add after it the word "nolockfs"
  • press F10
  • back in your desktop, run the command "apug"
  • reboot, your system should be fixed now and included this amazing feature! :applause:

UPDATE 2: there's a simple fix for the issue in the previous comment that doesn't require installation @triantares

1 Like

OK, this works :happy_dance: ...... would you care to explicate what the bilibob packages and elive-upgrader actually do here?
By that I mean that I would like to understand what went wrong, in the first place.

Now to get my Firefox back to where it was before. :work:

Mind you:
The gksu issue is still there.

elive-upgrader is just a tool that includes updates and fixes in elive, not related to the issue

about the issue itself, its solved here and so you can read the comment to understand it :slight_smile:

which is in fact a bilibop issue, but having defined specifically enabled or disabled it doesn't happens (so basically an issue with how bilibop manages its defaults or something similar)

1 Like

or just a query on the terminal: "echo status impermutable" which gives a true or false....or a notification in the systray :thinking:

New Feature: Wallpaper automatically changed when in Impermutable mode :dealwithit:

2 Likes

NOT happening on my machine where I've got a custom wallpaper set. I think a custom setting gets prevalence. :thinking:

I think the above is a better solution.
Like I mentioned: Sometimes I just close the lid of a laptop and use it again days later. So it would be nice to be able to see in what state/mode it is in.

Yes, it was just a word of warning for others.
Like if I'm testing something I always do that via the command-line and if possible look back to see exactly what I did and how in my 'history'... a backlog, so to speak.

The solution is to make a copy of the backlog and post it to another machine or server before logging out and rebooting.

did you run apug before to reboot in impermutable mode?

Yes on both machines.
I'm fairly sure that custom wallpaper gets prevalence. Same when changing an E16 theme that comes with its own wallpaper.
That theme wallpaper doesn't get shown in that case.

What we can do (and will always show) is change the colour scheme but frankly I'm still in favour of a "warning" notification :warning: in systray and certainly a CML query option.

I haven't looked into how "impermutable mode" works yet but ..... I'm sure it can be done. :thinking:

Nah, basically it calls elive-wallpaper-set which with the last update it actually SET the wallpaper too in E16 (before, it just added it on your backgrounds list), so basically the impermutable mode calls this command to switch to it

Let's see what is happening, you should have an entry here:

grep lockfs ~/.e16/startup-applications.list

Then rebooting when in Impermutable, that entry should be run which will show you a notification message and also change the wallpaper, if not, then:

  • the "lockfs-notify" command is not run
  • it is not updated including the wallpaper changes
  • the wallpaper changing doesn't works for you

I just tried again with the last updates and it works on my side, you can try to debug what is happening with the tool, see also that you have the wallpaper code:

grep wallpaper /usr/bin/lockfs-notify

Yes it will work when you're using the default wallpaper .... but if you use/set your own wallpaper it stays there. (and that is actually a good choice IMO)
I've noticed that a few years ago when I was making E16 themes.

Anyway the wallpaper change (or not) is totally unimportant if there's a notification to be had elsewhere...simple as that.

The notification always worked, thats why im thinking that maybe you didn't had it well installed, check the previous details to find the issue

And about the wallpaper no, it should work even if you have a custom wallpaper configured, its a direct E call to set the wallpaper and that's the purpose of elive-wallpaper-set which should work no matter what (for example when a user right click in an image and "set wallpaper", or in impermutable which should change it, so its also a temporal state of your system which will be deleted later), if doesn't works, then is a bug in E that should be reported

It works running the command(s) directly but does NOT show up on reboot.

BTW,
This is my encrypted machine.

Ok, what about these other details? Impermutable boot - #22 by Thanatermesis