site  contact  subhomenews

International support improved at bootup

July 13, 2019 — BarryK

Woof is able to build language-specific variants of Easy. Currently, de and fr are well supported, due to translation contributions by L18L and esmourguit, and builds have been available for these languages.

That is, 'easy-1.0.14-de-amd64.img.gz' and 'easy-1.0.14-fr-amd64.img.gz' downloads are available. These are ready-to-go, translated to the chosen language.

One area not properly translated and supported, was the early bootup. I have worked on this, now much improved.

I had stopped releasing live-CD ISO files, the last one was 1.0.8, however, they are making a comeback. They will also have de and fr builds. 

Tags: easy

EasyOS now supports exfat

July 13, 2019 — BarryK

easy 1.0.14 already has the 'exfat-utils' package, however, I did not realise that the 'fuse-exfat' package is also required. I was notified of this problem by Keisha:

I have compiled 'fuse-exfat' and it will be in the next release.

The exfat project page is here: 

Tags: easy

acpi handling of lid closure and power button press

July 12, 2019 — BarryK

There are various daemons in /etc/init.d that are launched at startup, except if their file attribute is set to non-executable.

EasyOS defaults to /etc/init.d/acpid to not executable, so ACPI events are not handled. Even if it did launch, it is not configured to work properly -- there is a package 'eee-acpi-scripts' which is supposed to specify how the acpid daemon will handle various events, but it does not seem to be properly configured for EasyOS.

It was rufwoof (Puppy Forum nickname) who gave me a start on this:

Then by studying how Linux From Scratch does it, and looking in 'eee-acpi-scripts', I have introduced templates/acpid in woof, to provide handlers for lid closure for a laptop, and power-off when press the power button.

In a running Easy, there will now be /etc/acpi/events/lid, /etc/acpi/events/powerbtn, /etc/cpi/ and /etc/acpi/ 

/etc/init.d/acpid now has its execute flags set, so will run at startup. 

Tags: easy

Live-CD is back plus zram support plus partition override

July 09, 2019 — BarryK

Version 1.0.8 was the last version that supported booting from optical media, the current release, 1.0.14, does not.

However, those who want to boot Easy from optical media will be very happy, live-CD|DVD is back, and then some...

The live-CD will boot up running in RAM, specifically zram, which is compressed storage in RAM. This means that you get almost double the storage than the RAM capacity.

That is as before, however, the really great news is that Easy now supports overriding of BOOT_DEV, BOOT_DIR, WKG_DEV and WKG_DIR on the kernel commandline. They are case-insensitive.

For example, if you append "wkg_dev=zram0" to the kernel boot parameters, then Easy will bootup running in RAM. You could do this for a frugal installation of Easy, or USB-stick installation.

You could also apply this overriding to the live-CD. There is a five-second pause at bootup, where you can enter extra boot parameters. If you enter "wkg_dev=sdc1 wkg_dir=easycd", then it will use that folder (create if not exist) in that partition, as the working partition. Thus you would have storage persistence.

For a live-CD, if you wanted to put that override into the CD permanently, you would have to remaster it, editing the 'isolinux.cfg' file (for non-UEFI bootup). I think that you should be able to do that with ISOMaster (see Multimedia menu).

UEFI bootup is more complicated, you have to open up 'efiboot.img' and edit 'EFI/BOOT/syslinux.cfg'. 

Of course, a GUI to remaster the CD would be nice, maybe one day. 

EDIT 2019-07-10:
Have added 'boot_uuid', 'wkg_uuid', 'boot_label' and 'wkg_label' as kernel commandline overrides.
For example, "wkg_uuid='7894567b-635b-44f7-b5d3-aa041bd9c054'", another example "wkg_label='intern1p6'".
You would specify one only of wkg_dev, wkg_uuid, wkg_label, whichever is convenient for you. Of course, in the case of USB drives, wkg_dev could change, so it would be appropriate to specify the working partition by its UUID or label. The label also may not be unique, but UUID most likely is. 

Tags: easy

Unmount-all-partitions fixed

July 05, 2019 — BarryK

There is a bug in easyOS, when try to unmount all partitions.

If you right-click on any of the partition icons on the desktop, there is a menu option "Unmount ALL mounted partitions". Selecting this, there is an error message, as it also tries to unmount the working-partition, which it can't as it is busy.

The fix is in script /usr/local/bin/drive_all. Note, this script gets copied into /root/.pup_event/drive_* which is the handlers for each desktop partition icon.

Note, it is /usr/local/pup_event/frontend_change that performs the above-mentioned copy.

I also edited /usr/local/pup_event/frontend_funcs, which creates /root/.pup_event/drive_*/AppInfo.xml, a file that specifies the right-click menus on each desktop partition icon.

In frontend_funcs, removed the menu option to unmount a partition if it is the working-partition. 

Tags: easy

Linux kernel 5.1.15 compiled

July 04, 2019 — BarryK

The current version of EasyOS is 1.0.14, and after a couple months hiatus, now working toward the next release. The current kernel is 4.14.105, now have bumped up to 5.1.15.

The source, with patches and build scripts, are here:

The new PETs:

The kernel source is also available as an SFS:

...the SFS is only intended to be downloaded when the next release of EasyOS is running, via the "sfsget" icon on the desktop.

I also updated the firmware:

...I have decided to use the "all" PET in the next release of Easy. 

Note, for anyone who wants to know how that firmware was obtained, there are scripts in /usr/local/firmware in Easy. 

Tags: easy

French langpack updated 2019-03-21

July 01, 2019 — BarryK

This got delayed, as I went off on other projects. Gee, over three months, well, getting back into EasyOS development now.

Esmourguit (name in the Puppy Forum) sent me updates for the French langpack PET, dated 2019-03-21. The previous was 2019-03-13.

I have now updated the PET:

Esmourguit, thanks for your patience! 

Note, with EasyOS, there are language-specific builds, so there is no need to install this PET. See the current release, 1.0.14:

The langpack is included in Woof, when doing the build. Woof also does a wider sweep, finds more translations (searches through the binary packages that are used to build EasyOS) that might not be in the PET, so may result in a more complete translation than just installing the PET afterward. 

Tags: easy

Automatic generation of dependencies for Slackware packages

June 25, 2019 — BarryK

I posted about progress with generating dependencies for the Slackware package database in Woof (my fork of Woof, sometimes named woofQ or woofE):

...that script created file 'DEPENDENCIES'.

I have now modified the '0setup' script in Woof, so that it maps the dependencies in file 'DEPENDENCIES' to 'DEPENDENCIES-slackware', which is names of all Slackware packages and their dependencies.

I have done this for the 14.2 version of Slackware. '0setup' downloads the 'PACKAGES.TXT' files from the Slackware package repositories, and converts to "Puppy package database format", which is these files:


'0setup' uses the information in 'DEPENDENCIES-slackware' to insert the dependencies into these files (field-9 of each line).

Yes, I know that the Salix distro does have deps for each package, and '0setup' does read that. However, going forward, I don't want to have to be dependent on Salix. I may do a build that accesses only the official Slackware repositories, which do not have deps information.

Mapping the Ubuntu package names to Slackware names is in most cases no problem, as it is the same name, sometimes with some capitalization in the Slackware name -- for example Ubuntu has 'libx11', Slackware has 'libX11'.

Some name differences are more tricky, and I hope that I have caught most of them. For example, Ubuntu has 'libfile-basedir-perl' and Slackware has 'perl-File-BaseDir'.


Any distribution that is built from the slackware*-current packages, is, by definition, a rolling release. This includes some puppies that you can find in the Puppy Forum.

I was considering trying to provide package management for this scenario. It is easy to include version of each dependency in the above 'Packages-*' files, for example "+libX11&eq3.6.7", however, actually using this information is tricky.

I don't have sufficient motivation to follow this through. Instead, my intention is to build Easy from the Slackware version 15.0 binary packages, when it is released. In that scenario, it will not be required to have versions of dependencies in the database.

Alternatively, I could take a snapshot of all the slackware-current repos, and host them somewhere, give them some arbitrary version number such as 14.90. However, that is rather a lot to host. 


The latest Woof tarball is here (note, there is no online version management hosting for my Woof): 

The modified scripts, as described above, are easy-code/0setup, easy-code/3buildeasydistro and easy-code/support/generate-deps-list. The generated easy-code/DEPENDENCIES and easy-distro/amd64/slackware/14.2/DEPENDENCIES-slackware files are included in the tarball. 

Tags: easy