(OLD) (ARCHIVED) Puppy Linux Discussion Forum Forum Index (OLD) (ARCHIVED) Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info

This forum can also be accessed as http://oldforum.puppylinux.com
It is now read-only and serves only as archives.

Please register over the NEW forum
https://forum.puppylinux.com
and continue your work there. Thank you.

 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups    
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Fri 04 Dec 2020, 00:33
All times are UTC - 4
 Forum index » Advanced Topics » Cutting edge
Minimal Init Overlay v22 (mio) - alternate "init" and utils
Moderators: Flash, Ian, JohnMurga
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies. View previous topic :: View next topic
Page 2 of 2 [23 Posts]   Goto page: Previous 1, 2
Author Message
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Sat 29 Jun 2019, 18:18    Post subject: Minimal Init Overlay v14 (mio) - alternate "init" and utilit  

Minimal Init Overlay v14 (mio) - alternate "init" and utilities

This release explores a couple of concepts, and so introduces some new utilities.

1. Files can be "removed" by simply forgetting to "save" them.
For the save layer:
On shutdown a tar archive of the current RW directory is written, but specifying an exclude file that contains a list of all files that need to be "removed".
In 'init' the RW directory is clobbered with this tar archive, and so the new stack is built without the "removed" files.

The new CLI utilities 'clear-save-list', 'clear-save-dir', 'clear-save-file', and 'clear-save-mi', implement this concept.

2. When writing to the save layer (or a '.sfs' file), process only files, and write them to the "real-directory" as it exists in the current file system (i.e. the stack).
If $ONE_FILE contains the /path/name of a file, then;
REAL_DIR="$(readlink -m "$(dirname "$ONE_FILE")")"
Symbolic links are treated as normal files, except when writing to the save layer, then symbolic links that point to a directory are processed before other files.
Actually the code never tries to write directly to a layer, it leaves that to the stack code, e.g. overlayfs.

The GUI utility "Menu->Utility->MI Save squash" uses implementations of both these concepts for both save layer and '.sfs' files.
It can move installed files between the save layer and adrv.
This is particularly useful for minimising the size of the tar file when using an "Archive" save mechanism.
In "bionicpup64" it can also move updated files between the save layer and ydrv.


Downloads available from http://www.mediafire.com/folder/q04fxq43exkfr/mio:
'mio_utils.txt'
'mio14_bionicpup32_8.0.tar'
'mio14_bionicpup64_8.0.tar'

Downloads available from http://www.mediafire.com/folder/7y3c7eafptzao/zipboot:
'mio13_bionicpup32_8.0.zip___mio14_bionicpup32_8.0.zip.delta'
'mio14_bionicpup32_8.0.zip'


Installing mio v14:

From running mio v13:
1. Download the appropriate 'mio14...tar' file.
2. From the menu, run "Setup->MI Update frugal".
3. Reboot.

Manual install, add "mio" to running "normal" 'bionicpup32_8.0' or 'bionicpup64_8.0':
1. Download the appropriate 'mio14...tar' file, and extract it's contents into the current Puppy install directory.
At this point, all you really need to do is boot using 'mio_initrd.gz' instead of 'initrd.gz', provided that your boot entry for the current Puppy defines the install location appropriately.
So I suggest you use the following method, even though it seems a little verbose.
2. Run 'SFS-Load on-the-fly' and load 'mio14_upupbb_19.03.sfs' (or 'mio14_bionicpup64_8.0.sfs') as an extra sfs.
3. Check that your boot entry is ok.
In a console issue a command like "bootentry /path/to/current/Puppy/install/directory mbr'.
Compare the "pdrv=" and "psubdir=" parameters with your currrent boot-entry and adjust appropriately.
Note: The 'init' in "mio" does not search, the location of the Puppy '.sfs' files must be specified.
4. From the menu, run "Setup->MI Boot config", and select 'Enable'.
This copies the current 'initrd.gz' to 'release_initrd.gz', and 'mio_initrd.gz' to 'initrd.gz'.
Subsequently, you can then use "Setup->MI Boot config->Disable" and reboot to "normal" Puppy.
5. When done, reboot. This will be a first boot using "mio".

The 23.MiB download 'zipboot' option:
If you already have a copy of 'mio13_bionicpup32_8.0.zip', download 'mio13_bionicpup32_8.0.zip___mio14_bionicpup32_8.0.zip.delta'.
Use that to create an 'mio13_bionicpup32_8.0.zip', then do the following process from step 2.

The 270.9MiB download 'zipboot' option:
1. Download 'mio14_bionicpup32_8.0.zip'.
2. Setup an empty fat32 usb stick with a volume label of "USBPBOOT", (without the quotes).
In Puppy, you should be able to use the CLI utility 'fatlabel' to set the volume label.
3. Unzip the contents of 'mio14_bionicpup32_8.0.zip' into the root of the usb stick.
4. If your machine requires a non-uefi boot, use the utilities in either /utils/lin or /utils/win to write an mbr to the stick.
5. Boot the usb stick, this is a first boot with "mio" active.

This provides the opportunity to either, explore the capabilities of this "mio" fat32 based installation,
or to use the "FrugalPup v14" in this "mio" Puppy, to install 'mio14_bionicpup32_8.0.zip' to a Linux partition.

Of course if you have a Puppy with a working "FrugalPup v13", you can use it to install 'mio14_bionicpup32_8.0.zip' however you choose.


Note - bionicpup64:
After updating with "Setup->Puppy Updates" or "quickpet->Bionicpup updates", you may find that the MI utilities show as v11.
This is because the downloaded file, 'bionic64fix.zip', contains "FrugalPup v11".
You can use "Utility->MI Save squash->save2ydrv" to move the files written by "Puppy Updates" to ydrv.

Note - bionicpup32:
It can still be updated from '.delta' files just like a "normal" bionicpup32.

gyro
Back to top
View user's profile Send private message 
stemsee

Joined: 27 Jun 2013
Posts: 2572
Location: In The Way

PostPosted: Sat 07 Dec 2019, 15:23    Post subject:  

Hi gyro

I'm testing mio-v14 with dpupbuster64_8.0.0 by josepi .

Seems to work fine. Although I am not so familiar with using the features yet.

I was wondering if you would consider incorporating an idea for saving to a folder on a fat or ntfs partition. My idea is that the init will be able to mount the ntfs/fat partition, on which is a savefile 'mio_save.4fs' (luks?) which gets mounted at /mnt/mio_save , and makes available the /mnt/mio_save/mio_save_dir ... which is in the savefolder on ntfs/fat formatted partition. I have tested this arrangement for compiling kernels in savefiles on ntfs partition, mounted on /mnt/ram and works fine at full speed, it seems. You would need only add some parsing and a few lines of code to the init to get this up and running using the same variables psfspart psfsdir etc ...

just an idea

thanks for your great INITiative!

stemsee
Back to top
View user's profile Send private message MSN Messenger 
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Sun 08 Dec 2019, 08:17    Post subject:  

stemsee wrote:
I was wondering if you would consider incorporating an idea for saving to a folder on a fat or ntfs partition. My idea is that the init will be able to mount the ntfs/fat partition, on which is a savefile 'mio_save.4fs' (luks?) which gets mounted at /mnt/mio_save , and makes available the /mnt/mio_save/mio_save_dir ... which is in the savefolder on ntfs/fat formatted partition. I have tested this arrangement for compiling kernels in savefiles on ntfs partition, mounted on /mnt/ram and works fine at full speed, it seems. You would need only add some parsing and a few lines of code to the init to get this up and running using the same variables psfspart psfsdir etc ...

just an idea
The short answer is no, I will not be providing a savefile facility in "mio".

The simplest way of implementing pupmode=12, is to use a savefolder.
If you can't provide a Linux partition on an internal drive, then might I susggest you use a usb device.
And if you don't have a spare usb HD, then you can use "f2fs" on a usb stick.
That's why the next version will include a FrugalPup that has full support for "f2fs".
And if your machine is old and can't boot a usb device, then you can try the new FurgalPup's "BootCD", (called "ISO" in older versions).

But apart from that, "mio" does automatic persistent storage creation, savefile doesn't seem like a good canidate for that.

Remember that "normal" Puppy can store the savefolder in a location other than the install diretory, even on a different device.
"mio" has this capability also, but takes it one step further, you can run "MI Save config" at any time and select a different location for your savefolder.
Or if your "mio" Puppy is currently using an "Archive" for persistence, and you then make a Linux partition available, you can run "MI Save config" and change it to "Folder".

gyro
Back to top
View user's profile Send private message 
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Sun 15 Dec 2019, 06:50    Post subject: Minimal Init Overlay v16 (mio) - alternate "init" and utilit  

Minimal Init Overlay v16 (mio) - alternate "init" and utilities

Some notable features of this release:

1. An updated FrugalPup with full support for installing Puppy on an f2fs partition.
It now uses Grub2 for both uefi and non-uefi booting.
Grub2 is compiled from source, nothing is signed, so "SecureBoot" must be inactive on uefi machines.
FrugalPup now includes "Help" and "Setting" facilities, and a few other GUI "improvements".

2. New FrugalPup mimimal frontends, "f2StickPup" and "DiskPup".

3. Many of the GUI utilities now have "Reboot" buttons available, when that is the next appropriate action.

4. "init" script now has a facility to update an sfs file, useful if "pfix=nocopy" is active.
The included version of 'change_kernels' makes use of this facility
to avoid clobbering a zdrv that is loaded and active in the stack.

5. "init" now contains code to deliberately handle symbolic links for ".sfs" files.
Of course these symbolic links must be relative, otherwise they will not be correct in the "init" environment.
e.g. "ln -s ../my_firmware.sfs fdrv_xenialpup_7.5.sfs"

6. Reduced the 'clear-save...' CLI utilities to a single utility 'clear-save'.


Downloads available from http://www.mediafire.com/folder/q04fxq43exkfr/mio:
'mio_utils.txt' (10.2 KiB)
'mio16_bionicpup32_8.0.tar' (3.3 MiB)
'mio16_bionicpup64_8.0.tar' (3.3 MiB)

Downloads available from http://www.mediafire.com/folder/7y3c7eafptzao/zipboot:
'mio14_bionicpup32_8.0.zip___mio16_bionicpup32_8.0.zip.delta' (139.0 MiB)
'mio16_bionicpup32_8.0.zip' (267.1 MiB)

Installing mio v16:

From running mio v14:
1. Download the appropriate 'mio16...tar' file.
2. From the menu, run "Setup->MI Update frugal".
3. Reboot.

Manual install, add "mio" to running "normal" 'bionicpup32_8.0' or 'bionicpup64_8.0':
1. Download the appropriate 'mio16...tar' file, and extract it's contents into the current Puppy install directory.
At this point, all you really need to do is boot using 'mio_initrd.gz' instead of 'initrd.gz',
provided that your boot entry for the current Puppy defines the install location appropriately.
So I suggest you use the following method, even though it seems a little verbose.
2. Run 'SFS-Load on-the-fly' and load 'mio16_upupbb_19.03.sfs' (or 'mio16_bionicpup64_8.0.sfs') as an extra sfs.
3. Check that your boot entry is ok.
In a console issue a command like "bootentry /path/to/current/Puppy/install/directory mbr'.
Compare the "pdrv=" and "psubdir=" parameters with your currrent boot-entry and adjust appropriately.
Note: The 'init' in "mio" does not search, the location of the Puppy '.sfs' files must be specified.
4. From the menu, run "Setup->MI Boot config", and select 'Enable'.
This copies the current 'initrd.gz' to 'release_initrd.gz',
and 'mio_initrd.gz' to 'initrd.gz'.
Subsequently, you can then use "Setup->MI Boot config->Disable" and reboot to "normal" Puppy.
5. When done, reboot. This will be a first boot using "mio".

The 139 MiB download 'zipboot' option:
If you already have a copy of 'mio14_bionicpup32_8.0.zip',
download 'mio14_bionicpup32_8.0.zip___mio16_bionicpup32_8.0.zip.delta'.
Use that to create an 'mio16_bionicpup32_8.0.zip', then do the following process from step 2.

The 267.1 MiB download 'zipboot' option (only for machines that are uefi boot capable):
1. Download 'mio16_bionicpup32_8.0.zip'.
2. Setup an empty fat32 usb stick.
3. Unzip the contents of 'mio16_bionicpup32_8.0.zip' into the root of the usb stick.
4. Do a uefi boot of this usb stick, with "SecureBoot" inactive, this is a first boot with "mio" active.

This provides the opportunity to either, explore the capabilities of this "mio" fat32 based installation,
or to use the "FrugalPup v16" in this "mio" Puppy, to install 'mio16_bionicpup32_8.0.zip' to a Linux partition.

Of course if you have a Puppy with a working "FrugalPup v15", you can use it to install 'mio16_bionicpup32_8.0.zip' however you choose.


Note - bionicpup64:
After updating with "Setup->Puppy Updates" or "quickpet->Bionicpup updates", you may find that the MI utilities show as v11.
This is because the downloaded file, 'bionic64fix.zip', contains "FrugalPup v11".
You can use the CLI command "clear-save -mi" to clear all files in '/usr/local/mi-utils' and '/usr/local/frugalpup' from the current save-layer.
And probably a CLI command "clear-save /root/.config/frugalpup.conf" to make way for an updated FrugalPup v16 config file.

Note - bionicpup32:
It can still be updated using '.delta' files just like a "normal" bionicpup32.

Note - non-uefi booting and 'zipboot':
The hassle is the grub2 mbr install tool 'grub-bios-setup'.
While I have a simple GUI wrapper script for linux,
the Windows version is even more painful to use, and I don't have a Windows wrapper script.
So I've opted to omit non-uefi support for this version of the ".zip"

Note - different versions:
The difference between the bionicpup32 and bionicpup64 versions has nothing to do with 32bit<->64bit.
It's due to the existing Puppy utility scripts that get replaced by "mio" being different, depending on the when they were "woofed".

gyro
Back to top
View user's profile Send private message 
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Fri 10 Jan 2020, 08:37    Post subject:  

Minimal Init Overlay v17 (mio) - alternate "init" and utilities

This is a bug fix release:

1. 'StickPup' and 'f2StickPup' no longer reject 1GB USB stick, they will now accept a USB stick as small as 512MB.

2. 'clear-save' now includes "-mic" parmmeter that removes all files in '/usr/local/mi-utils', '/usr/local/frugalpup', and FrugalPup config file, '/root/.config/frugalpup.conf'.

Downloads available from http://www.mediafire.com/folder/q04fxq43exkfr/mio:
'mio17_bionicpup32_8.0.tar' (3.3 MiB)
'mio17_bionicpup64_8.0.tar' (3.3 MiB)

Installing mio v17:

From running mio v16:
1. Download the appropriate 'mio17...tar' file.
2. From the menu, run "Setup->MI Update frugal".
3. Reboot.

Manual install, add "mio" to running "normal" 'bionicpup32_8.0' or 'bionicpup64_8.0':
1. Download the appropriate 'mio17...tar' file, and extract it's contents into the current Puppy install directory.
At this point, all you really need to do is boot using 'mio_initrd.gz' instead of 'initrd.gz',
provided that your boot entry for the current Puppy defines the install location appropriately.
So I suggest you use the following method, even though it seems a little verbose.
2. Run 'SFS-Load on-the-fly' and load 'mio17_upupbb_19.03.sfs' (or 'mio17_bionicpup64_8.0.sfs') as an extra sfs.
3. Check that your boot entry is ok.
In a console issue a command like "bootentry /path/to/current/Puppy/install/directory mbr'.
Compare the "pdrv=" and "psubdir=" parameters with your currrent boot-entry and adjust appropriately.
Note: The 'init' in "mio" does not search, the location of the Puppy '.sfs' files must be specified.
4. From the menu, run "Setup->MI Boot config", and select 'Enable'.
This copies the current 'initrd.gz' to 'release_initrd.gz',
and 'mio_initrd.gz' to 'initrd.gz'.
Subsequently, you can then use "Setup->MI Boot config->Disable" and reboot to "normal" Puppy.
5. When done, reboot. This will be a first boot using "mio".

Note - bionicpup64:
After updating with "Setup->Puppy Updates" or "quickpet->Bionicpup updates", you may find that the MI utilities show as v11.
This is because the downloaded file, 'bionic64fix.zip', contains "FrugalPup v11".
You can use the CLI command "clear-save -mic" to clear all files in '/usr/local/mi-utils' and '/usr/local/frugalpup',
and remove FrugalPup config file '/root/.config/frugalpup.conf' from the current save-layer.

Note - bionicpup32:
It can still be updated using '.delta' files just like a "normal" bionicpup32.

gyro
Back to top
View user's profile Send private message 
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Sat 28 Mar 2020, 02:31    Post subject:  

Minimal Init Overlay v20 (mio) - alternate "init" and utilities

This is a feature release.

It includes FrugalPup v20:
see http://www.murga-linux.com/puppy/viewtopic.php?p=1052566#1052566.

a new utility InitrdModules:
see http://www.murga-linux.com/puppy/viewtopic.php?p=1053822#1053822

a new feature:
A "save query" option that works for all mio pupmodes including pupmode=12.
It utilises the 'asktosave_func' that already exists in 'rc.shutdown'.
This adds to the current "no save" option that also works in all mio pupmodes including pupmmode=12.
A demonstration that you don't need pupmode=13 to have flexible save options.

Downloads available from http://www.mediafire.com/folder/q04fxq43exkfr/mio:
'mio20_bionicpup32_8.0.tar' (4.1 MiB)
'mio20_bionicpup64_8.0.tar' (4.1 MiB)

Download available from http://www.mediafire.com/folder/7y3c7eafptzao/zipboot:
'mio20_bionicpup32_8.0.zip' (276.8 MiB)

gyro
Back to top
View user's profile Send private message 
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Sun 12 Apr 2020, 10:03    Post subject:  

Minimal Init Overlay v21 (mio) - alternate "init" and utilities

This is a feature release.

A re-vamped sfs file support:
Sfs files are condidered to be either "Puppy system" sfs files, (adrv...sfs, ydrv...sfs, pdrv...sfs, fdrv...sfs, zdrv...sfs) or "Extra" sfs files.

"Puppy system" sfs files are automatically loaded by 'init' if they exist, they are not specified by the user.
They reside in only the current install directory, using their pre-defined filenames,
although they can be a relative symbolic link to an sfs on the same partition,
e.g. "ln -s ../linux_firmware_20200328.sfs fdrv_upupbb_19.03.sfs"

"Extra" sfs files have to be selected using the "MI Extra SFS List manager" utility.
They are selected into either the ABOVE list or the BELOW list.
Files in the ABOVE list are loaded into the stack above the "Puppy system" sfs files.
Files in the BELOW list are loaded into the stack below the "Puppy system" sfs files.
They can reside anywhere in the available filesystem, even on another device, with any filename.
A special case is the mio...sfs file in the current install directory, which is always included in the ABOVE list.

If your sfs file needs to "update" files that exist in the "Puppy system" sfs files, add it into the ABOVE list.
If your sfs contains files that do not exist in the "Puppy system" sfs files, add it to the BELOW list.
e.g. any devx...sfs should be added to the BELOW list.
If you are not sure, it's best to try it in the BELOW list first.

Note:
The previous EXTRA list is now the BELOW list.
The previous MAIN list nolonger exists.

Downloads available from http://www.mediafire.com/folder/q04fxq43exkfr/mio:
'mio21_bionicpup32_8.0.tar' (4.1 MiB)
'mio21_bionicpup64_8.0.tar' (4.1 MiB)

Download available from http://www.mediafire.com/folder/7y3c7eafptzao/zipboot:
'mio21_bionicpup32_8.0.zip' (276.8 MiB)

gyro
Back to top
View user's profile Send private message 
gyro

Joined: 28 Oct 2008
Posts: 1799
Location: Brisbane, Australia

PostPosted: Sun 03 May 2020, 04:47    Post subject:  

Minimal Init Overlay v22 (mio) - alternate 'init' and utilities.

This is a feature release.

1. The sfs file system has had an extra tweek.
The 'mio...sfs' file is now considered a Puppy system file, and so no longer appeas in the ABOVE list.
The name of this file no longer contains the mio version, so it will remain unchanged across mio updates.
Both the ABOVE and BELOW lists are now empty by default.
Clicking on any sfs file and choosing "Install SFS" will now provide an option to add it to the ABOVE or the BELOW list.

2. Perhaps the most obvious new feature is that download files are now sfs files instead of tar files,
With a new stand alone implementation script 'to-mio22'.
With an sfs file, the 'to-mio22' is included in this single download file,
but it can still be executed with just a few clicks.

3. The "MI Update frugal" utility has been withdrawn.

4. The 'README.txt' file in 'initrd.gz' has been updated to reflect the current way of processing sfs files.

5. The file '/initrd/tmp/bootinit.log' can now be found as '/initrd/bootinit.log', beside the other "interesting" files.

6. 'mio22_up_bionicpup64_8.0.sfs' includes a patched "/usr/local/quickpet/bionicupdate" that does not clobber FrugalPup files.

Downloads available from http://www.mediafire.com/folder/q04fxq43exkfr/mio:
'mio22_up_bionicpup32_8.0.sfs' (4.1 MiB)
'mio22_up_bionicpup64_8.0.sfs' (4.1 MiB)
'mio22_up_xenialpup_7.5.sfs' (4.2 MiB)
'README.txt' (10.6 KiB)

To use:
1. Download an appropriate mio22 sfs file.
2. Click on the downloaded sfs file and select "View contents", to mount it.
3. Click on the upgrade script 'to-mio22' to execute it.
4. Click on the "Ok" button of the "Done" message.
5. Click on the downloaded sfs file again, to unmount it.
6. Reboot into new mio.

This process should work for both,
upgrading a "normal" Puppy to using "mio", and upgrading mio21 to mio22.

The downloaded sfs file can be stored anywhere.
The utility 'to-mio22' always attempts to upgrade the current running Puppy.

Issue:
If you try to run 'to-mio22' on a Puppy other than the one defined by the download sfs file's name,
it will complain that it cannot find the mio...sfs file for the current Puppy and exit.
To work around, you could 'unsquashfs' the downloaded sfs file,
then open the 'squashfs-root' directory and rename the included sfs file to match the current Puppy,
then run the 'to-mio22' utility in the 'squashfs-root' directory.

gyro
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 2 of 2 [23 Posts]   Goto page: Previous 1, 2
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies. View previous topic :: View next topic
 Forum index » Advanced Topics » Cutting edge
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 1.5165s ][ Queries: 12 (1.2217s) ][ GZIP on ]