site  contact  subhomenews

Skype SFS for EasyOS and EasyPup

February 17, 2020 — BarryK

I have been asked about Skype a few times recently. A couple of people downloaded 'skypeforlinux' and reported that it does not work.

Yesterday, I received an email from Bryan, that he downloaded the latest skypeforlinux DEB and it worked as user spot:

# run-as-spot /usr/bin/skypeforlinux

...I tried that, and got an error message:

# run-as-spot /usr/bin/skypeforlinux
# /usr/bin/skypeforlinux: line 11: /root/spot/.config/skypeforlinux/logs/skype-startup.log: Required key not available

Won't run as root either. That is version

I got a hint from 'ndujoe1':

I downloaded from here:

...yep, runs as root. So, I have made it into a SFS, which works in EasyOS on the main desktop and in a container. In a container, I tested audio, works, but I don't know about how to use the camera.

This should work in EasyPup also, on the main desktop, no container option of course. For both Easy's, click the "sfsget" icon on the desktop to download it. 

Note to SFS creators, there is one little trick for the skype SFS to work in a container. /usr/bin/skype is modified:


SCRIPT=$(readlink -f "$0")
USR_DIRECTORY=$(readlink -f $(dirname $SCRIPT)/..)


mkdir -p $SKYPE_LOGS

nohup "$SKYPE_PATH" --executed-from="$(pwd)" --pid=$$ "$@" > "$SKYPE_LOGS/skype-startup.log" 2>&1 &

#200217 BK: wait for skype to exit, otherwise container will terminate...

...I added the "wait". 'skypeforlinux' daemonizes and exits immediately, so /usr/bin/skype will terminate, which will kill the container. The "wait" will wait for all child processes to terminate. 

Tags: easy

EasyPup translation in initrd

February 16, 2020 — BarryK

French and German builds of EasyPup 2.2.10 are mostly translated, with some gaps. The syslinux early-bootup messages were not, nor were messages in the initrd during bootup. Once bootup did a switch_root to the aufs layered filesystem running on puppy.sfs, translation kicked in.

I have fixed the early bootup translation. So now all text will be in the desired language, as well as keyboard-layout, right from the start of booting.

This is really just getting the WoofQ build system to more completely transform EasyOS to EasyPup, matching Puppy behaviour from circa-2013, or roughly matching Puppy as in the "Legacy branch" of woof-CE on

A technical note: /usr/share/sss/initrd_strings/ content is different from that of EasyOS, because the boot scripts in the initrd are different, as are the 'home.msg' and 'help.msg' files in the ISO file. I will modify this post accordingly: 

...that post also shows a fix to translate desktop icon labels.

Also, there was a bug-fix in the Puppy Universal Installer, /usr/sbin/puppyinstaller. I posted about that here:

I would like to thanks the guys who have taken the time to do testing, it is very helpful. Due to my time constraints, I have to release a build without having tested every aspect of it. With tester feedback, I am able to improve the next release. 

Tags: easy

EasyDD now handles ISO files

February 15, 2020 — BarryK

EasyDD is a great little application to write an image file to a USB-stick. Here is information about how to use EasyDD:

EasyDD can handle uncompressed image file, with extension ".img", or compressed image ".img.gz", ".img.bz2", ".img.xz", or ".zip".

Now we can add ".iso". This is for a hybrid-ISO, that can be written to a USB-stick. EasyDD does not write to optical media -- for that you need 'burniso2cd' or 'pburn' -- see "Multimedia" menu.

If the 'isolyzer' utility exists, EasyDD will do a file-size check, to catch the situation where the downloaded ISO got stopped before the full file was downloaded. Not as good as a hash|checksum, but a basic integrity test.

isolyzer was posted about yesterday:

The improved EasyDD can be downloaded from here:

The improved EasyDD and isolyzer will be in the next release of EasyOS and EasyPup. 

Tags: easy

isolyzer ISO file analyzer

February 14, 2020 — BarryK

The EasyDD utility was created to make it easy to write image files to USB-sticks. It is both a GUI and CLI -- in the former case, it can be found in the "Setup" menu, and in the latter case run "easydd" in a terminal to display help info.

In the case of compressed images, such as *.img.gz, easydd does an "integrity check" to make sure that the file is not corrupted. Not as good as an actual checksum hash, but still of value.

I want to add writing of hybrid-ISO files to USB-sticks. However, there is nothing in the ISO specification for performing an integrity check. A common problem is an ISO file not completely downloading, so the file is smaller than it should be -- but there is nothing in the format of the ISO that will recognize its tail is missing.

However, there is a python utility, isolyzer, that does a pretty good job of ascertaining what the size of the ISO should be. I can use this as the integrity checker in easydd.

Here is the project page:

I have created a PET (12.4KB):

This will work in Easy 2.2.10 (and earlier). All dependencies are there, except for 'python-six' -- which actually is in the devx SFS, so you will have to run the PPM (petget) and install it. Then to run it:

# isolyzer <name of iso file> will report all kinds of information, including the expected size, and the actual size. 

Tags: easy

Files that transform EasyOS to EasyPup

February 14, 2020 — BarryK

I posted a guide for translators for EasyPup, listing files with a TEXTDOMAIN that are either new or different from those in EasyOS:

However, anyone who would like to do development work on EasyPup, that is, coding, needs to know all new or different files.

In WoofQ, when EasyOS is built, there will be a folder sandbox3/rootfs-complete, that will become 'easy.sfs'. To transform to a Puppy, there is a folder puppy/rootfs-skeleton, which is copied to rootfs-complete, replacing any pre-existing files, which then becomes 'puppy.sfs'.

Here is a list, as at EasyPup version 2.2.10, of the files in puppy/rootfs-skeleton:






















...note that /sbin/initNEW is renamed to 'init' in rootfs-complete.

EDIT 2020-02-16:
At early bootup, there are 'boot.msg' and 'help.msg' syslinux files in the ISO and 'init' script in the initrd, that have text that requires translation. These files are different from EasyOS. The '7build-puppy-cd' script in WoofQ will read /usr/share/sss/initrd_strings/initrd_strings.xx and perform translation on the early bootup files.

Also, in the French and German builds, the desktop icon labels were not translated. /usr/share/sss/desk_strings has the translation for EasyOS, however as we have a different PuppyPin for EasyPup, doing it this way. At build time, the PuppyPin.xx will replace PuppyPin. 

EDIT 2020-02-19:
These files in dark red are now added. Note that the scripts in usr/share/doc/easy have TEXTDOMAIN='puppyhelp'.

This list is very useful for anyone who would like to do development work on EasyPup, as they will know exactly how EasyPup differs from EasyOS and what files need to be worked on. 

The link at the start of this post does list other files, but they are EasyOS files that have had text strings edited, replacing occurrences of "EasyOS" and "Easy" with "Puppy". 

Tags: easy

EasyPup version 2.2.10 released

February 13, 2020 — BarryK

Yes, another "classical Puppy on steroids" version released!

Release notes:

General information about EasyPup:

Download German, French and English builds:

Note, I have not tested the French and German builds. Just guessing, it may be that the early boot messages are not translated. 

Note also, L18L and esmourguit have supplied updated translations for EasyOS that have not made it into this release. Also, translation has not yet been done for the EasyPup-specific files: 

Forum feedback here: 

The future of EasyPup

I would like to make a comment about EasyPup. It has been a diversion, a very interesting one. However, as usual, I tend to take on too much, and get stretched rather thin. I had to give up development of Quirky Linux for this reason. My main thing is EasyOS, and that will be my focus ongoing.

If anyone wants to get involved with developing EasyPup, you are most welcome. There is plenty of room for improving the "puppy parts" of EasyPup, indeed, many ideas can be got from woof-CE, though I would prefer EasyPup to remain a "classical Puppy".

if, for example, you improve the "Puppy Universal Installer", send it to me and I can put it into the next release.

Note for developers: if early bootup does anything odd, look in /root/.initrd-debug. That folder logs a lot of what happens in the initrd.  Note also, as for EasyOS, you can edit the 'initrd.gz' just be clicking on it, and in WoofQ there is a script to rebuild EasyPup. 

Tags: easy

EasyOS 2.2.10 re-uploaded

February 13, 2020 — BarryK

I posted about another gotcha that got me:

Have rebuilt EasyOS 2.2.10 and re-uploaded to

Well, the files are uploading as I type this. 

EasyPup 2.2.10 will come later today, have another engagement for a few hours. 

Tags: easy

The gotcha got me again

February 13, 2020 — BarryK

I posted yesterday about this gotcha:

I built EasyPup 2.2.10, and at the desktop there was no bluetooth icon in the tray ...sigh.

This is on the same laptop, did get the bluetooth icon for the EasyOS build. The background timing must be different somehow. Then discovered that same "gotcha" in file /usr/local/pup_event/bluetoothhw:

  for aBT in /tmp/pup_event_ipc/bluetoothhw_*
[ "$aBT" == "" ] && continue
[ ! -f $aBT ] && continue #200213
echo -n "${HCIs}" > ${aBT}

...the line shown in green has to be inserted.

Then discovered one other thing in the /etc/rc.d/rc.services_ipc script, have edited this earlier blog post, showing the fix:

OK, ready to release EasyPup 2.2.10, will upload later today.

These little fixes should really also be applied to EasyOS 2.2.10, will probably also re-upload them later today. 

Tags: easy