KLA-Manjaro LXDE

Kennel Linux Arch-based


Moderator: Forum moderators

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

KLA-Manjaro LXDE

Post by josejp2424 »

Image

LXDE Desktop Environment

* Kernel Puppy Linux: 6.9.9

* Midori Web Browser: A lightweight and user-friendly browser.

* Blueman Bluetooth Manager: Easily manage your Bluetooth devices with Blueman, providing a convenient interface for connecting and configuring Bluetooth peripherals.

* SFSLoad: Efficiently manage SFS files.

* Chatbot: Interact with an intelligent chatbot.

* Gdmap: Visualize and manage disk usage.

* Hardinfo2 QT: Get detailed hardware and system information.

* Pamac Package Manager: Manage your packages with ease using Pamac, the graphical package manager that simplifies software installation and updates.

* Grub2Config: Easily manage your bootloader, which supports recognizing both Puppy Linux and KL distributions.

* ROX-filer: A highly configurable file manager designed to be simple yet powerful.

* PCManFM: Another versatile file manager that complements the LXDE environment.

* LXmusic: A lightweight music player for easy playback of your audio files.

* MPV: A versatile media player with support for a wide range of audio and video formats.

* QEMU GUI: Manage virtual machines with the QEMU GUI for an easy-to-use virtualization experience.

These are just some of the tools included in KLA Manjaro, designed for users who value a minimalist approach.

Download Link: Download KLA Manjaro.

https://sourceforge.net/projects/kla-ma ... DE-1.1.iso

MD5 d36bc81e166e85bb4d77924474b6ea39

Last edited by josejp2424 on Wed Sep 18, 2024 1:25 pm, edited 1 time in total.
User avatar
wiak
Posts: 4006
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 60 times
Been thanked: 1159 times
Contact:

Re: KLA-Manjaro LXDE

Post by wiak »

Impressed by the inclusions yet minimalise style approach I'm planning to give this distro a try today. Ive always been fond of Arch based distros.

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

@josejp2424

Download Link: Download KLA Manjaro.

https://sourceforge.net/projects/kla-ma ... DE-1.1.iso

When I download from here, is there a checksum I can use for this as well?
Thanks

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

JusGellin wrote: Wed Sep 18, 2024 1:22 pm

@josejp2424

Download Link: Download KLA Manjaro.

https://sourceforge.net/projects/kla-ma ... DE-1.1.iso

When I download from here, is there a checksum I can use for this as well?
Thanks

Sorry, you're right, I didn't include the MD5 in the post. It has now been added
MD5 d36bc81e166e85bb4d77924474b6ea39

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

@josejp2424
Thanks for the quick response. :thumbup:
I'm looking forward to try this out.

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

wiak wrote: Tue Sep 17, 2024 11:56 pm

Impressed by the inclusions yet minimalise style approach I'm planning to give this distro a try today. Ive always been fond of Arch based distros.

I also like Arch distributions. And in this case, I like that I can use the Puppy Linux kernels. Honestly, your work on creating KL is really good. @wiak

geo_c
Posts: 2846
Joined: Fri Jul 31, 2020 3:37 am
Has thanked: 2140 times
Been thanked: 859 times

Re: KLA-Manjaro LXDE

Post by geo_c »

josejp2424 wrote: Wed Sep 18, 2024 1:34 pm

Honestly, your work on creating KL is really good. @wiak

KL setups are really versatile, especially when learning how to work with layers and the multi-install script. I basically do a multi-install of all my KL daily drivers with 4 instances. In instance3 I create layers of things like desktop configs, special desktop files, pipewire configs, network connections, printer configs, etc, and I symlink those layers to the other three instances.

This allows me to do things like install large doc files in /usr/share/docs, but instead of storing them 4 times in the upper_changes of each instance, they are stored in one instance and linked to the others. Makes for easy editing and tweaking of multiple instances and different machnes. For instance have a 53_NetworkConnections layer for a certain machine, but on another machine I would have the same layer, but containing the NetworkConnections created on that machine.

The layers allow for creating and maintaining configs that are universal to all machines, while having configs specific to one machine but without storing them in the root filesystem or upper_changes.

That arrangement allows to migrate the tweaked base OS as it's developed from machine to machine without having to do things like setup the network and printers every time, or re-do the theme elements like terminal colors, task bars and so forth.

Similar things are done using pupsaves and .sfs layers in puppy, but not quite as versatile.

geo_c
Old School Hipster, and Such

User avatar
wiak
Posts: 4006
Joined: Tue Dec 03, 2019 6:10 am
Location: Packing - big job
Has thanked: 60 times
Been thanked: 1159 times
Contact:

Re: KLA-Manjaro LXDE

Post by wiak »

I tried it. Very nice and neat distro. Has great selection of apps and tools.

Didn't have all the firmware included for my newest laptop (e.g. wifi), but that's fine I can add the extras tomorrow (easiest for me just to put the few missing firmware in a new uncompressed layer).

I really like the distro. Thanks for all that effort.

I'm going to first put it into a pseudo full install KL/FR arrangement prior to updating packages and then I'll take the frugal install directory, put it in a subfolder that I'll make into a multi-instance install arrangement such as geo_c talks about. Then I can more easily mess about with it whilst keeping a pristine working version.

EDIT: By the way, I like that wood plank wallpaper. You don't happen to work in the South America timber industry do you? Taeda Pine? Taeda seems to be used a lot in Philippines now.

Attachments
KL_ManjaroLXDE.jpg
KL_ManjaroLXDE.jpg (72.16 KiB) Viewed 452 times

https://www.tinylinux.info/
DOWNLOAD wd_multi for hundreds of 'distros' at your fingertips: viewtopic.php?p=99154#p99154
Αξίζει να μεταφραστεί;

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

Coming over from using and installing BookwormPup64, I haven't been able to install this distro.
I've tried using the following link, but haven't been successful:

I tried putting it on a USB stick, an internal drive and also as a vm using virt-manager.
I set the drive for each of these as ext4 with a boot flag.
There it says to copy what's in the iso to a folder on a partition and then run a script called wd_grubconfig found there as well.

Perhaps the problem is the boot loader, which I don't have experience for since I've used the automatic thing BookwormPup64 provided before.

What is the proper way to install this on a USB stick or elsewhere?

Thanks

stevie pup
Posts: 243
Joined: Mon May 10, 2021 7:40 pm
Location: Derbyshire, UK
Has thanked: 18 times
Been thanked: 58 times

Re: KLA-Manjaro LXDE

Post by stevie pup »

JusGellin wrote: Wed Sep 18, 2024 6:52 pm

What is the proper way to install this on a USB stick or elsewhere?

I would also like some pointers in the right direction. I've had a few previous attempts with Kennel Linux, but always failed miserably. :roll:

TerryH
Posts: 614
Joined: Mon Jun 15, 2020 2:08 am
Has thanked: 151 times
Been thanked: 151 times

Re: KLA-Manjaro LXDE

Post by TerryH »

JusGellin wrote: Wed Sep 18, 2024 6:52 pm

There it says to copy what's in the iso to a folder on a partition and then run a script called wd_grubconfig found there as well.

Thanks

What wd_grubconfig does is generates several boot stanzas to be able to boot KL's depending on how you wish to boot in grub4dos and grub2 formats for your system. You copy the stanzas which match the style of booting you want to use to your boot config file (menu.lst /grub.cfg). It also gives you options for how you want persistence to work, i.e. changes=RAM2, allows you to determine if you want to save / not save when you shutdown/reboot.

This is the basics, somebody may give a more thorough explanation.

New Laptop - ASUS ZenBook Ryzen 7 5800H Vega 7 iGPU / 16 GB RAM

User avatar
bugnaw333
Posts: 311
Joined: Wed Jul 20, 2022 11:04 pm
Location: Cebu, Philippines
Has thanked: 492 times
Been thanked: 58 times

Re: KLA-Manjaro LXDE

Post by bugnaw333 »

@josejp2424
I encountered error on mounting an NTFS partition. :(

Attachments
screenshot_20240919_101502.jpg
screenshot_20240919_101502.jpg (143.4 KiB) Viewed 393 times
JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

I got it to work!

@TerryH Thanks for the information you gave.
It got me to think in the right direction for what to do.

I wanted to first try it out using qemu virt-manager to set up a vm for it.
Since I was more familiar with BW64, I used it to set up the drive in the vm I configured.
I first set up the drive to be ext4 with boot flag
Then ran Grub4dos bootloader config since I'm just using bios boot for the vm.
I attached a USB containing the Manjaro-LXDE-1.1.iso to the vm.
Made a folder called Manjaro-LXDE on the vm drive from the root.
Copied the iso contents to here.
Ran the script wd_grubconfig.
Copied the menu.lst information.
Pasted this into the root menu.lst.
Shut down the vm and booted to the vm drive.
It came up. :thumbup:

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

bugnaw333 wrote: Wed Sep 18, 2024 10:18 pm

@josejp2424
I encountered error on mounting an NTFS partition. :(

Thank you for the report, I haven't experienced it with an NTFS partition, but I will keep it in mind and check it out.

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

JusGellin wrote: Wed Sep 18, 2024 11:24 pm

I got it to work!

@TerryH Thanks for the information you gave.
It got me to think in the right direction for what to do.

I wanted to first try it out using qemu virt-manager to set up a vm for it.
Since I was more familiar with BW64, I used it to set up the drive in the vm I configured.
I first set up the drive to be ext4 with boot flag
Then ran Grub4dos bootloader config since I'm just using bios boot for the vm.
I attached a USB containing the Manjaro-LXDE-1.1.iso to the vm.
Made a folder called Manjaro-LXDE on the vm drive from the root.
Copied the iso contents to here.
Ran the script wd_grubconfig.
Copied the menu.lst information.
Pasted this into the root menu.lst.
Shut down the vm and booted to the vm drive.
It came up. :thumbup:

If you're on KLA-Manjaro, you can use gru2config, it will recognize all the Puppy and KL distributions.
Gru2config, when used from Puppy Linux, does not recognize
them.
To install it, I create a folder called kla-manjaro. Keep in mind that the folder name should not contain spaces. Once the folder is created, copy all the files from the kla-manjaro ISO into it. Then, run gru2config.
You can do the same on a USB, and this way, you create a bootable USB.

User avatar
Sofiya
Posts: 2142
Joined: Tue Dec 07, 2021 9:49 pm
Has thanked: 1387 times
Been thanked: 1429 times

Re: KLA-Manjaro LXDE

Post by Sofiya »

Hi @josejp2424

Note:decided to try your Grub2 installer
the installation was successful, but after exiting the distribution I was unable to boot any of my systems. After booting from the flash drive I checked the folders with my OS and found links in them, after deleting the links from the folders I was able to use my OS again. THANK GOD! :ugeek:

KL
PUPPY LINUX Simple fast free

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

Sofiya wrote: Thu Sep 19, 2024 8:24 am

Hi @josejp2424

Note:decided to try your Grub2 installer
the installation was successful, but after exiting the distribution I was unable to boot any of my systems. After booting from the flash drive I checked the folders with my OS and found links in them, after deleting the links from the folders I was able to use my OS again. THANK GOD! :ugeek:

The new grub2config of kla-manjaro does not create links. The one I posted in the forum did. On the machines where I tested it, I didn’t experience the issues you mentioned. But I will keep looking into it and will take it into consideration.
Thank you @Sofiya

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

josejp2424 wrote: Thu Sep 19, 2024 10:40 am

The new grub2config of kla-manjaro does not create links. The one I posted in the forum did. On the machines where I tested it, I didn’t experience the issues you mentioned. But I will keep looking into it and will take it into consideration.
Thank you @Sofiya

That's what I experienced for the grub2config in the new install. It worked fine.
I installed this on my qemu virt-manger as a vm.
When I ran this, it required ext3 or less for the mbr. I didn't have to do this on other vms I made and used ext4 on them.
It wouldn't run the grup2config unless I changed it to ext3.

Also only as a note, this and other vm installs would work only if I made the the internal drive a sata drive and not a virtio drive.

That grub2config application makes it a lot easier than manually making the boot work like I did before.
Thanks

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

@josejp2424
I'm not very experienced for all of this, but I noticed this:

Code: Select all

└>df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        15G  1.1G   13G   8% /media/root/sda1
overlay_result  2.0G   74M  1.9G   4% /
rootfs          980M     0  980M   0% /mnt/layers
inram           2.0G   74M  1.9G   4% /mnt/layers/RAM
/dev/loop0      256K  256K     0 100% /mnt/layers/01
/dev/loop1      752M  752M     0 100% /mnt/layers/07
/dev/loop2       87M   87M     0 100% /mnt/layers/10
/dev/loop3      115M  115M     0 100% /mnt/layers/00m
devtmpfs        4.0M     0  4.0M   0% /dev
tmpfs           984M     0  984M   0% /dev/shm
tmpfs           394M  792K  393M   1% /run
tmpfs           984M  8.0K  984M   1% /tmp
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-journald.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-udev-load-credentials.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev-early.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-sysctl.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-vconsole-setup.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/getty@tty1.service
tmpfs           197M   56K  197M   1% /run/user/0

Does this mean that this runs systemd?

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

JusGellin wrote: Thu Sep 19, 2024 11:32 am

@josejp2424
I'm not very experienced for all of this, but I noticed this:

Code: Select all

└>df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        15G  1.1G   13G   8% /media/root/sda1
overlay_result  2.0G   74M  1.9G   4% /
rootfs          980M     0  980M   0% /mnt/layers
inram           2.0G   74M  1.9G   4% /mnt/layers/RAM
/dev/loop0      256K  256K     0 100% /mnt/layers/01
/dev/loop1      752M  752M     0 100% /mnt/layers/07
/dev/loop2       87M   87M     0 100% /mnt/layers/10
/dev/loop3      115M  115M     0 100% /mnt/layers/00m
devtmpfs        4.0M     0  4.0M   0% /dev
tmpfs           984M     0  984M   0% /dev/shm
tmpfs           394M  792K  393M   1% /run
tmpfs           984M  8.0K  984M   1% /tmp
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-journald.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-udev-load-credentials.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev-early.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-sysctl.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup-dev.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-vconsole-setup.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/systemd-tmpfiles-setup.service
tmpfs           1.0M     0  1.0M   0% /run/credentials/getty@tty1.service
tmpfs           197M   56K  197M   1% /run/user/0

Does this mean that this runs systemd?

Yes, it's normal. The /dev/loop are the layers created when loading the SFS files.

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

@josejp2424
Thanks, I really appreciate the info on this.
Another thing I was wandering.
I like the save2flash feature to save when settings are made.
If this is a file, can it be saved also as a back-up that could be restored if needed as well?

Thanks

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

JusGellin wrote: Thu Sep 19, 2024 12:28 pm

@josejp2424
Thanks, I really appreciate the info on this.
Another thing I was wandering.
I like the save2flash feature to save when settings are made.
If this is a file, can it be saved also as a back-up that could be restored if needed as well?

Thanks

@JusGellin

Yes, it can be done; in fact, I do it often. When you save the session, a folder called upper_changes is created. I use packit to turn that folder into an SFS. That SFS can then be mounted or added to the system.

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

josejp2424 wrote: Thu Sep 19, 2024 1:08 pm

Yes, it can be done; in fact, I do it often. When you save the session, a folder called upper_changes is created. I use packit to turn that folder into an SFS. That SFS can then be mounted or added to the system.

So I made an sfs of the upper_changes and can see how to mount/unmount it, but didn't know how to put this back into effect again. Do I delete or rename the existing upper_changes folder or do something else?

Thanks

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

JusGellin wrote: Thu Sep 19, 2024 4:37 pm
josejp2424 wrote: Thu Sep 19, 2024 1:08 pm

Yes, it can be done; in fact, I do it often. When you save the session, a folder called upper_changes is created. I use packit to turn that folder into an SFS. That SFS can then be mounted or added to the system.

So I made an sfs of the upper_changes and can see how to mount/unmount it, but didn't know how to put this back into effect again. Do I delete or rename the existing upper_changes folder or do something else?

Thanks

If the upper_charger folder is present, it will always use that configuration.

JusGellin
Posts: 465
Joined: Fri Jan 19, 2024 11:12 pm
Has thanked: 41 times
Been thanked: 43 times

Re: KLA-Manjaro LXDE

Post by JusGellin »

If I rename the upper_changes and then mount the sfs that I made, it should go back to the sfs, right?

I thought I new how to mount the sfs that I made, but I guess I don't. How do I mount/unmount the sfs that I made?

Thanks

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

JusGellin wrote: Thu Sep 19, 2024 5:12 pm

If I rename the upper_changes and then mount the sfs that I made, it should go back to the sfs, right?

I thought I new how to mount the sfs that I made, but I guess I don't. How do I mount/unmount the sfs that I made?

Thanks

What I usually do is the following. Notice that there is a file 10KLA-Manjaro.sfs. The SFS I created, I rename it to 13KLA-Manjaro.sfs. This makes it start with the system.

User avatar
rockedge
Site Admin
Posts: 6353
Joined: Mon Dec 02, 2019 1:38 am
Location: Connecticut,U.S.A.
Has thanked: 2538 times
Been thanked: 2514 times
Contact:

Re: KLA-Manjaro LXDE

Post by rockedge »

JusGellin wrote: Thu Sep 19, 2024 5:12 pm

If I rename the upper_changes and then mount the sfs that I made, it should go back to the sfs, right?

I thought I new how to mount the sfs that I made, but I guess I don't. How do I mount/unmount the sfs that I made?

Thanks

This type of SFS should be loaded at system startup.

To mount an SFS during the boot cycle, add a 2 digit prefix to the SFS name. Any directory(uncompressed) or SFS can be loaded during the boot cycle with the 2 digit number placed at the beginning of the file name.

examples:

  • The 2 digit prefix 51 added to some_name.sfs to create 51some_name.sfs, this WILL load during system startup.

  • No 2 digit prefix like this: some_name.sfs will NOT load during the boot cycle.

  • The 2 digit prefix can be 00 - 99, with 00(modules), 01(firmware) ,07(file system) reserved for system modules.

This makes it possible to just rename the upper_changes to this: 50upper_changes, 51upper_changes.sfs and both will be mounted at system startup.

Making it possible to work with the 50upper_changes and edit files directly within it.

User avatar
josejp2424
Posts: 200
Joined: Sun Jul 12, 2020 11:40 pm
Has thanked: 226 times
Been thanked: 118 times

Re: KLA-Manjaro LXDE

Post by josejp2424 »

rockedge wrote: Thu Sep 19, 2024 5:56 pm
JusGellin wrote: Thu Sep 19, 2024 5:12 pm

If I rename the upper_changes and then mount the sfs that I made, it should go back to the sfs, right?

I thought I new how to mount the sfs that I made, but I guess I don't. How do I mount/unmount the sfs that I made?

Thanks

This type of SFS should be loaded at system startup.

To mount an SFS during the boot cycle, add a 2 digit prefix to the SFS name. Any directory(uncompressed) or SFS can be loaded during the boot cycle with the 2 digit number placed at the beginning of the file name.

examples:

  • The 2 digit prefix 51 added to some_name.sfs to create 51some_name.sfs, this WILL load during system startup.

  • No 2 digit prefix like this: some_name.sfs will NOT load during the boot cycle.

  • The 2 digit prefix can be 00 - 99, with 00(modules), 01(firmware) ,07(file system) reserved for system modules.

This makes it possible to just rename the upper_changes to this: 50upper_changes, 51upper_changes.sfs and both will be mounted at system startup.

Making it possible to work with the 50upper_changes and edit files directly within it.

Thank you very much for the explanation.

@rockedge

geo_c
Posts: 2846
Joined: Fri Jul 31, 2020 3:37 am
Has thanked: 2140 times
Been thanked: 859 times

Re: KLA-Manjaro LXDE

Post by geo_c »

rockedge wrote: Thu Sep 19, 2024 5:56 pm

This type of SFS should be loaded at system startup.

To mount an SFS during the boot cycle, add a 2 digit prefix to the SFS name. Any directory(uncompressed) or SFS can be loaded during the boot cycle with the 2 digit number placed at the beginning of the file name.

examples:

  • The 2 digit prefix 51 added to some_name.sfs to create 51some_name.sfs, this WILL boot during system startup

  • No 2 digit prefix like this: some_name.sfs will NOT load during the boot cycle.

  • The 2 digit prefix can be 00 - 99, with 00(modules), 01(firmware) ,07(file system) reserved for system modules.

This makes it possible to just rename the upper_changes to this: 50upper_changes, 51upper_changes.sfs and both will be mounted at system startup.

Making it possible to work with the 50upper_changes and edit files directly within it.

The use of layers with numbered prefixes is the real versatile power of KL distros. First of all, @fredx181 has a Backup/Restore script called restore-sys which may or may not be included in the KLA-Manjaro iso. It can be run easily from anywhere while booted into an upper_changes, and it will backup the upper_changes with a timestamp in the directory name. The directory can be compressed or left uncompressed.

restore-sys

Code: Select all

#!/bin/bash
# fredx181, 2023-11-21
# changes 2024-02-24:
# - more error checking
# - exit when booted with save file (only savefolder supported)
# - exit when trying to restore twice (only once supported during a session), but creating restorepoints is unlimited
# - .bak directories showing also now in restore list
# - dialog to add extra info (will show in history log) when creating restore point
# - button 'History log'  added to the CREATE/RESTORE dialog

if findmnt | grep -q "/mnt/layers/uc_ro"; then
RAM_2=yes
export UC="$(findmnt | grep "/mnt/layers/uc_ro" | awk '{print $3}' | sed 's#[][]##g; s#dev#mnt#g')"
#echo $UC
if [ $(echo "$UC" | grep "loop") ]; then
export SFILE=yes
fi
else 
export UC="$(findmnt | grep -o "upperdir=.*/upper_changes" | head -1 | sed 's#upperdir=##g')"
[ "$UC" = "/mnt/layers/RAM/upper_changes" ] && RAM_0=yes
if [ $(echo "$UC" | grep "loop") ]; then
export SFILE=yes
fi
fi

if [ "$RAM_0" = "yes" ]; then
yad --center --borders=10 --title="RAM0 mode detected" --text="\n Looks like you are running the system without changes \n Cannot create a restore point, sorry \n Exiting..." --width=500 --button="Close:0"
exit
fi

echo $UC
if [ "$UC" = "" ]; then
yad --center --borders=10 --title="No changes found" --text="\n Could not find save storage on this OS \n Exiting..." --width=500 --button="Close:0"
exit
fi

if [ "$SFILE" = "yes" ]; then
yad --center --borders=10 --title="Save file not supported" --text="\n Looks like you are running the system with a savefile\n It is not supported at this time, only savefolder, sorry \n Exiting..." --width=500 --button="Close:0"
exit
fi

if [ "$RAM_2" = "yes" ]; then
yad --center --borders=10 --title="RAM2 mode detected" --text="\n Looks like you are running the system with w_changes=RAM2 mode (save on demand) \n If you want to include the current changes in a restore point to be created: \n Click 'Cancel' and run <b>save2flash</b> first \n Or: click 'OK' to continue" --width=600
ret=$?
[[ $ret -ne 0 ]] && exit
fi

create_restore () {    # create restore point
s=$(date +"%Y%m%d%H%M%S")
mkdir -p $(dirname "$UC")/upper_changes_$s
ss="${s::4}-${s:4:2}-${s:6:2}"
t="${s:8:2}:${s:10:2}:${s:12:2}"
yad --center --borders=15 --text=" <b><big><big>Copying...</big></big></b>  \n <b><big><big>Please wait . . .</big></big></b>  " --height=70 --no-buttons --undecorated --on-top & 
cp -a "$UC/"* "$(dirname "$UC")/upper_changes_$s/"
echo "Restore point: $(dirname "$UC")/upper_changes_$s created !"
echo "Point of Time: $(date --date=$ss +"%d %h %Y") $t"
sleep 2
kill $!
EXTRA_INFO=$(yad --title="Extra Info" --borders=8 --entry --center --width=550 --text="Add some extra info about this restore point\n(will show in the log file),\nor leave empty as you wish" --button="OK:0")
echo -e "[At: $(date --date=$ss +"%d %h %Y") $t] Created: upper_changes_$s \n $EXTRA_INFO\n--------------------------------------------------------------------------------" >> "$(dirname ${UC})/restore_history"
yad --center --title="Restore point created" --text="\n Restore point: $(dirname "$UC")/upper_changes_$s created ! \n Point of Time: $(date --date=$ss +"%d %h %Y") $t \n\n See also info in created history log: \n $(dirname ${UC})/restore_history" --width 600 --button="Close:0"
}; export -f create_restore


history () {
if [ ! -f "$(dirname ${UC})/restore_history" ]; then
yad --title="No history found" --text="No history log found (yet)                         " --button="Close:0"
exit
fi
cat "$(dirname ${UC})/restore_history" | yad --center --title="History Log (read-only)" --text-info --width=780 --height=500
}; export -f history

if [ "$(find "$(dirname "$UC")" -mindepth 1 -maxdepth 1 -name "upper_changes_*")" ]; then
yad --center --item-separator=":"  --title="Create or Restore ?" --text="\n Would you like to CREATE a restore point ?\n Or RESTORE to a point in history ?\n" \
--button="History Log:bash -c history" --button="CREATE:0"  --button="RESTORE:2" --button="CANCEL:1"
ret=$?

if [[ $ret -eq 0 ]]; then
create_restore

elif [[ $ret -eq 2 ]]; then
#rm /tmp/RESTORElist 2> /dev/null
if [ -e /tmp/RESTORElist ]; then
echo "Restoring can be done only once during a session"
yad --center --borders=10 --title="Already restored" --text="\n Looks like you have restored already (can be done only once during a session) \n Cannot continue unless you reboot, \n Exiting..." --width=600 --button="Close:0"
exit
fi
#set -x
while read s; do
echo $s >> /tmp/RESTORElist
s="$(echo "$s" | sed 's#upper_changes_##')"
ss="${s::4}${s:4:2}${s:6:2}"
t="${s:8:2}:${s:10:2}:${s:12:2}"
echo "$(date --date=$ss +"%d %h %Y") $t" >> /tmp/RESTORElist
done <<< "$(find $(dirname "$UC") -mindepth 1 -maxdepth 1 -name "upper_changes_*" | sed "s#$(dirname ${UC})/##g")"

result=$(cat /tmp/RESTORElist | yad --title="Choose restore point" --text="Choose restore point" --list --column Name --column Date --width=520 --height=400)
ret=$?
if [[ $ret -ne 0 ]]; then
rm -f /tmp/RESTORElist
exit
fi
export rest="`echo $result | cut -d "|" -f 1`"
export d="`echo $result | cut -d "|" -f 2`"

if [ -z "$rest" ]; then
yad --center --title="Nothing selected" --text="\n Nothing selected\n Exiting..." --button="Close:0"
rm /tmp/RESTORElist 2> /dev/null
exit
fi

echo "$rest will be renamed to upper_changes, applied after reboot"
# rename original upper_changes to upper_changes<timestamp>.bak 
s=$(date +"%Y%m%d%H%M%S")
ss="${s::4}${s:4:2}${s:6:2}"
t="${s:8:2}:${s:10:2}:${s:12:2}"
mv -f "$(dirname ${UC})/upper_changes" "$(dirname ${UC})/upper_changes_${s}.bak"
echo -e "[At: $(date --date=$ss +"%d %h %Y") $t] Restored: $rest $d \n Original upper_changes renamed to upper_changes_${s}.bak\n--------------------------------------------------------------------------------" >> "$(dirname ${UC})/restore_history"
# rename 'timestamped' upper_changes to upper_changes
mv -f "$(dirname ${UC})/$rest" "$(dirname ${UC})/upper_changes"
#rm -f /tmp/RESTORElist
yad --center --borders=10 --title="Restored..." --text=" Restored to: \n Point of Time: $(date --date=$ss +"%d %h %Y") $t \n <b>Reboot to apply</b> \n (the original upper_changes folder is renamed to <b>upper_changes_${s}.bak</b>)\n \n Do <b>NOT</b> remove it as it's the new mountpoint for the changes (during this session) \n (for next session, after reboot, it will be part of history, can be chosen from the restore list again)\n\n See also info in created history log: \n $(dirname ${UC})/restore_history \n\n <b>Note:</b> Direct reboot is adviced ! \n Because any change you make in the system before rebooting  will <b>NOT</b> have any effect \n <b>Reboot Now ?</b>" --width=700 --button="YES:0"  --button="no:1"
[ $? -eq 0 ] && reboot || exit

else
exit
fi

else
yad --title="Create Restore point ?" --text="\n No restore points found yet. \n Would you like to create a restore point ?\n (will create a timestamped upper_changes folder)\n"
ret=$?
[[ $ret -ne 0 ]] && exit
create_restore
fi

At that point the backup can be numbered, and become a layer loaded at boot, creating a new upper_changes (But the current upper_changes should be deleted first, Not a problem if you're booting w_changes=RAM, but if not you may need to boot another OS, or another instance in a KL-multi-instance install to delete it). So the thing to keep in mind is that the numbers have to be sequential as so not to mess up the package manager. The backuped layer should be mostly on the top layer right under the new upper_changes.

I have layers which are above my backed up upper_changes, BUT, they only contain non-package manager related files, like application config files, scripts, etc.

This is where experimentation becomes easy even for laymen like myself.

I have a KLV-spectr install that looks like this (It's a multi install, so many of the layers are linked.) Notice there a layers numbered 50-57 which contain non-package manager related stuff. Because of that I could backup an upper_changes and name it 20_upper_changes-Updates and there would be no conflicts, because the 50+ layers contain only configs and things like .desktop files, Network connections.

Notice also, that I have layers named _52_Desktop-u2-1920x1080, which doesn't get loaded on this machine because of the underscore in front of the two digit prefix, but is there to use on a machine with a 1920x1080 monitor, so all I would have to do is rename that layer taking out the underscore and put an underscore in the layer named 52-Desktop-m1.

Then I have the 58_Lilypond-html.sfs layer which is squashed, because it contains 850MB of documentation, so I compressed it. This can be linked to other installs of KL's, even installs that aren't KLVs, maybe KLA, but I wouldn't recommend it. Still if the directory structure is the same, and it's just docs, IT WORKS! I link a lot of stuff outside my installed filesystem inside it and share between systems. In fact I've created a MONSTER that way.

Just some ideas and clarification.

Image

geo_c
Old School Hipster, and Such

User avatar
Sofiya
Posts: 2142
Joined: Tue Dec 07, 2021 9:49 pm
Has thanked: 1387 times
Been thanked: 1429 times

Re: KLA-Manjaro LXDE

Post by Sofiya »

@geo_c

You have a whole laboratory set up :D :D
When I retire I will hand over the reins and maintenance of my systems to you. :ugeek: :geek: ;)

KL
PUPPY LINUX Simple fast free

Post Reply

Return to “KLA”