site  contact  subhomenews

Compiling Grub4dos version 0.4.6a

November 30, 2018 — BarryK

I am considering putting Grub4dos back into the menu of EasyOS, for the convenience of those who have older tradional-BIOS computers. Like me! -- and another one just acquired, a Compaq Presario, see post a couple of days ago. These old computers are fine for running Easy, so I do need to keep offering tools to support them.

Puppy Forum member 'shinobar' is the guy who has developed Grub4dos PETs for Puppy Linux:

Which is great, shinobar has supported Grub4dos for years, bringing out improvements, even in 2018. However, the PET is based upon Grub4dos 0.4.4, the last official release before the project died, which has a problem with the ext4 filesystem:

...there is a workaround, however, one post mentioned a fork of Grub4dos that has fix the 64bit ext4 problem. I located the project page for that fork:

...good, an active project. Downloaded it, in EasyOS 64-bit 0.9.9, tried to configure the source:

# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --build=x86_64-pc-linux-gnu

Got a configure error, found the fix here:

Not there yet, got another error, configure wants a "mulitlib gcc" for x86_64, which mine in EasyOS isn't. So, booted up Easy Pyro 32-bit 0.9.6, that was created earlier in 2018, now it configured and compiled:

# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --build=i386-pc-linux-gnu
# make
# new2dir make install

The plan is to put those files into shinobar's PET:, there is a "v1.9.4" PET, but not so sure about that as it has some woof-CE integration changes.

Will this merge work? Dunno yet. 

Tags: easy

Frugal install encryption of working partition

November 30, 2018 — BarryK

I posted yesterday about enhancements to frugal installation:

Another area that needed improvement is handling of encryption. In the case of a flash-stick, the working-partition is created at first bootup, and it is created with ext4 filesystem with encryption capability enabled.

However, for a frugal install, the working-partition is pre-existing. For encryption, enter a password at bootup to decrypt certain folders in the working-partition. It must be an ext4 filesystem, and must have encryption capability enabled.

The 'init' script in the 'initrd' now checks for this. If it sees that the pre-existing working-partition is ext4 but does not have encryption capability enabled, it offers to enable it (using the 'tune2fs' utility).

If the user chooses in the affirmative, then a password is asked for. Otherwise, the ext4 filesystem is left alone, and no password is asked for.

This is a frugal installation, so the working-partition could be used for other purposes, including many other frugal installations. I don't think that turning on encryption capability will have any negative impact on whatever else is in the working-partition.  

Tags: easy

Automatic fixing of BOOT_SPECS for frugal install

November 29, 2018 — BarryK

Yesterday I posted about frugal installation:

One slight difficulty for newcomers is that the 'BOOT_SPECS' file inside 'initrd.q' has to be manually edited.

Now, when click on 'initrd' (I have changed the name from 'initrd.q' to just 'initrd'), the BOOT_SPECS file is automatically examined and fixed. I tested, placed the files into a hard drive partition:


...see my dumb icon, representing "boot" -ing Easy. Anyway, click on the icon, and the handler script (/usr/sbin/edit-initramfs) detects that BOOT_SPECS needs to be fixed, and offers:


Choosing "Yes":


...if click "Yes", then 'initrd' will be updated with the fixed 'BOOT_SPECS'. If click "No", then 'initrd' is opened up in the normal way and can be manually edited.

This makes frugal installation very easy. The only remaining difficulty for newcomers is installing of a boot manager such as Grub. I might put Grub4dos into Easy, as that works well for PCs with traditional BIOS.

EDIT 20181201:
Those Q_DISTRO* variables were named in the Quirky Linux days. Have now renamed them to INIT_DISTRO*  

Tags: easy

Testing frugal installation of EasyOS

November 29, 2018 — BarryK

I wrote a tutorial how to install Easy frugally, over a year ago, here:

This mode of installation works really well. Great for older computers that will not boot from USB. The tutorial mentions the boot manager Grub4dos -- you need to have some kind of boot manager already installed. Grub4dos is for PCs with traditional BIOS (not UEFI), and perchance you don't have any boot manager installed, install some other Linux first, which will also install a boot manager.

For example, most releases of Puppy Linux have Grub4dos, and if you boot up one of those, you can run Grub4dos from the menu. Once you have Grub* installed, the door is opened for easy frugal install of as many pups and derivatives, including EasyOS, as you want.

To verify that frugal install still works for Easy 0.9.9, I went through the exercise, using my workhorse Acer laptop (i5 CPU, 4GB RAM, 650GB HDD, traditional BIOS).

You can open up the image file, as described in the tutorial, but in my case I was already booted from a USB stick, so had the files in the first partition of the stick. Just copied them to a suitable folder on the laptop hard drive:

image1 difference from the tutorial, 'q.sfs' is now 'easy.sfs'.

The rest of it is as per the tutorial. Click on 'initrd.q' to open it, and edit 'BOOT_SPECS', then click again on 'initrd.gz' to close it up. Then add an entry to the Grub* boot file 'menu.lst', and you are good to go.

I posted recently to the forum, that I discovered two buglets with this process. Not really bugs. After opening up 'initrd.q', you have to manually edit 'BOOT_SPECS', in my case:


...where I obtained the 'BOOT_DISKID' and 'WKG_DISKID' by running "fdisk -l /dev/sda" (/dev/sda being the laptop hard drive).

The first buglet is that the script that opens up 'initrd.q' is capable of automatically fixing 'BOOT_SPECS', so you don't have to manually edit it. That auto-fixing doesn't kick-in, and doesn't work properly anyway, so I need to fix so it does.

The second buglet. At first bootup of the frugal installation, it asks for a password. This only works for ext4, furthermore, the ext4 filesystem has to be created with encryption capability enabled.

As my laptop has a pre-existing sda3 with ext4, it does not have encryption enabled. I did previously have some code in the 'init' script in 'initrd.q' to test if the partition has encryption capability, and offer to enable it -- it can be done to an existing ext4 filesystem by running "tune2fs -O encrypt /dev/sda3" -- however, that code is commented-out. Don't recall why, will look at that again.

Finally, that 'initrd.q', another leftover from Quirky. Plan is to change that to just 'initrd' and use a new icon.  

Tags: easy

Woof tarball 20181125

November 25, 2018 — BarryK

There was originally "puppy-unleashed", replaced by "woof", then "woof2", then the Puppy Community forked to "woof-CE" and I forked to "woofQ". This is the build system for creating puppies and derivatives.

When EasyOS came along, I was then using woofQ to build either Quirky or Easy. Today I decided to change the name to just "Woof". Also, Woof has been re-organized so that internally the Easy and Quirky build components are separate -- when the tarball is opened, you will find folders 'easyos' and 'quirky'.

Here is the latest Woof tarball. This is what was used to create EasyOS 0.9.9. Although there is a "bones" VCS, I have not maintained it, only uploading tarballs, including woof-project-20181125.tar.gz, here: 

Tags: easy, quirky

Experimental Kodi SFS in xenialpup container

November 24, 2018 — BarryK

I don't know anything about Kodi. I looked at it briefly years ago, and found the user interface somewhat confusing. Anyway, the purpose of having this Kodi SFS is to demonstrate something very important that EasyOS can do...

There are hundreds of SFS packages created for the various releases of Puppy Linux over the years. An SFS may work with just that version of Puppy, you can't just take any SFS and plonk it into another Puppy distro.

Until now. A couple of weeks ago, I created an SFS for Xenialpup 7.5, the latest official release of Puppy Linux. Blog post here:

What this does, is open the door to all of the SFS files created for Xenialpup. I just grabbed Kodi off the Xenialpup Puppy Linux SFS repo at, to demonstrate. I had to remake the SFS, using 'dir2sfs', to insert some meta-data into the SFS. One of those is a "kodi.specs" file, which has some variables, including:


What will happen, is when download the kodi SFS, it will also download the xenialpup SFS (if not already), and a container will be created with xenialpup on the bottom layer, kodi on top.

This is just like you are running Xenialpup, except inside a secure container, and you can flip in and out of it.

Let's do it... click the "sfsget" icon at top of screen, and here is the window:


Click the download button, and kodi and xenialpup SFSs will get downloaded, then you will be asked how to install:


Pretty straightforward, just click the "NEW" button. That's it, done. An icon is created on the desktop:


Click on "kodi" and it starts up, full-screen. ALT-F6 to flip back to Easy desktop.

Which is all very well, but I still haven't got a clue how to use Kodi. Billtoo does, and has reported success:

Notice in the above install options, the "EXISTING" button. That option is very interesting. If you had already installed Xenialpup, so had a "xenialpup" desktop, that is an existing container, you can choose to insert an SFS file into it.

Thus, you would have the xenialpup desktop, with kodi available -- well, this is just how it is when you are running the original Xenialpup Puppy Linux and you choose to install the kodi SFS. 

Just to clarify. "NEW" creates an icon on the EasyOS desktop, labeled "kodi", clicking on it just runs kodi. exit kodi, kills the container. "EXISTING", you will not get a "kodi" icon on the EasyOS desktop, but click on the "xenialpup" icon and on the xenialup desktop, kodi is available.  ...I hope that is not confusing. It is quite clear when you actually do it. 

Tags: easy

Aargh, SFSget bug in Easy 0.9.9

November 24, 2018 — BarryK

Murphy's Law strikes! After releasing EasyOS 0.9.9 this morning, was playing with SFSget and found a killer bug.

Here is the 0.9.9 announcement:

The bug is easy to fix. I am not going to re-build 0.9.9, so could you kindly apply this fix manually, before using "sfsget" (icon at top of screen). Open this file with Geany text editor:


And look at line 41:

 if [ "$HASH" != "$aDB_hash" ];then #181124

...the "a" is missing. Please insert it, and save the file. Bug fixed.

I discovered this when downloading 'kodi' SFS, which has 'xenialpup' dependency -- the dependency SFS reported a hash failure. That missing letter caused the bug! 

Tags: easy

EasyOS version 0.9.9 released

November 24, 2018 — BarryK

Seems to be working OK (touch wood), so decided to release 0.9.9. Version 0.9.8 was released o November 14, and it is a good idea to look through the announcement:

Version 0.9.9 can be downloaded courtesy of Ibiblio:

There are various experiments underway. For example, 'iwd' is a replacement for 'wpa_supplicant', however, it is not working, so in 0.9.9 wpa_supplicant is used, though the iwd package is there for further experiments.

The kernel is 4.14.81, which apparently has a patch that slows down the kernel significantly. That patch has been reverted in next release, so I will be upgrading the kernel asap.

Between 0.9.8 and 0.9.9 there has mostly been under-the-hood changes, that could have introduced new bugs. Hopefully not. For the user, a highlight is SFSget (see top of desktop) is significantly enhanced. 

Aargh, a bug snuck through! It is easy to fix, please read this:

...please do this before using "sfsget'. 

Tags: easy