site  contact  history  index

Firefox ESR DEB now works in container

April 02, 2020 — BarryK

Running EasyOS 2.2.14, 'belham2' (Puppy Forum name) reported that he installed Firefox ESR from the "petget" package manager, and it worked, but when he tried to convert it to a container, was unable to:

The menu "Filesystem -> Easy Container Management" has a dropdown list of installed apps. You choose one, and then click the button to make it into a container.

However, Firefox ESR is not listed. The reason for this is that the script filters out /usr/share/application/*.desktop files that have "Exec=" entries with a leading path. firefox-esr.desktop has "Exec=/usr/lib/firefox-esr/firefox-esr". Which is odd, as it also installs /usr/bin/firefox-esr, so the entry could have been "Exec=firefox-esr".

I have edited /usr/petget/ to automatically fix the "Exec=" line to remove any leading path. if necessary, a script is created at /usr/bin.

I tested it, works fine. One thing I recommend in Easy Container Management, leave the "Security options" alone. The default is fine. Just choose "firefox-esr" from the dropdown list and click the button.

Hmmm, it did create a 16x16 icon on the desktop, that is something else that needs fixing. It should be 48x48, but that is a cosmetic bug. 

The desktop icon now fixed. Edited /usr/local/easy_containers/easy-containers

Tags: easy

Covid-19 droplets hang around in air for 3 hours

April 02, 2020 — BarryK

Yesterday a scientist was interviewed about research they had done on how long Covid-19 can last on surfaces and in the air. He said on surfaces up to72 hours, but on some surfaces, such as cardboard, only about 12 hours. There is earlier research on other coronaviruses indicating up to 9 days.

What caught my attention though, was he commented about droplets in the air. He said that if someone with Covid-19 coughs, they will expel tiny droplets that will float in the air, and he stated that those droplets can hang around in the air for up to 3 hours.

Oh wow, it only takes one droplet breathed in, to become infected.

I posted on March 20, when I went into the city by train, and two people coughed in the carriage in which I was travelling:

That was my last train journey! A couple of days ago, I visited my local Coles supermarket. In the row next to me, someone coughed, so I made sure that I walked in the widest possible path around them.

Health officials are advising anyone who coughs in public, to do so into a tissue, or into the cloth of their elbow.

But I have to ask, why do people cough in public? Is it an irresistible urge? If so, shouldn't they not be allowed in public? Coughing into a tissue or elbow is unlikely to stop droplets being sprayed out into the air, so why are health authorities giving that the OK? What to do about people who don't even bother to cover their mouth when coughing? 

Tags: ethos

python-gi DEB package was missing

April 02, 2020 — BarryK

In Easy 2.2.14, if you use PETget (package manager, PPM) and install a package, 'python-gi' will show as a missing dependency.

However, 'python-gi' isn't actually needed. The DEB package 'python-gi-dev' lists 'python-gi' and 'python3-gi' as dependencies, but only the latter is needed by Blueman (the Bluetooth manager, see the tray).

Anyway, to get rid of that message about missing dependency, I have added 'python-gi' to the build list, so it will be in the next release. 

Tags: easy

Ye olde Woof2 Puppy builder

April 01, 2020 — BarryK

Woof2 was the build system for Puppy, and was online in a Fossil repository, until 2013 when it was forked to Woof-CE on github, and I closed down Woof2.

The last pups to be built with Woof2 were Wary and Racy 5.5, see here:

Woof-CE is a community project, and has changed a lot since 2013. Today I received an email from Michael, asking if the original Woof2 Wary/Racy builder is still available. Well, it is possible to checkout the original checkin of Woof-CE, here is the project site:

'dimkr' cloned woof-CE sometime ago, and this link has pretty much the original Woof2:

...the 0.1 release is very close to Woof2, and is available as a tarball here:

...most important, one of the commits is '01micko' restored the symlinks that were lost in the original fork from Woof2. 

There is an actual Fossil repo of Woof2. Puppy Forum member 'idolse' created mpdPup, a Puppy Linux music server/jukebox, and to achieve that, he forked Woof2:

...if you login as anonymous, go to "Files" and you will see this text:

Files of check-in [edf062515a] in the top-level directory the square-brackets is a link to download the tarball. Ah, here is a direct link, no need to login to the Fossil repo:

...this is dated March 26, 2013, and this would be pure Woof2 as-it-was, though idolse will probably have made some changes, though looking around, it seems all as I recall Woof2 to be. Yep, has  woof-distro/x86/pet-based/racy and wary, version 5.5. 

Oh, for anyone curious about mpdPup: 

Tags: linux

Busybox umount does not free loop device

April 01, 2020 — BarryK

This one took me by surprise. If a loop device, say /dev/loop0, is mounted on a mount-point, running the 'umount' command from the util-linux package on the mount-point, will unmount it and also automatically free the loop device.
I have been expecting this behaviour for so many years, that I got caught out when I discovered that the busybox 'umount' does not automatically free the loop device.

lp-dolittle (Puppy Forum name) had reported that he updated EasyPup and when it booted up, it found the save-file for the previous version, and asked if want to use it. He declined, then on the desktop found that the save-file was still mounted, though not actually being used. Also, the partition where the save-file was located, was also mounted and could not be unmounted. EasyPup is running in RAM, so there shouldn't be any partitions mounted.

I have been puzzling over this most of today, studying the 'init' script in the initrd. Finally, the penny dropped, I discovered that Busybox umount needs an explicit "-d" to free the loop device, like "umount -d <mount point>".

Success, it booted up into RAM only, no save-file or partitions mounted.  Note, Busybox in the initrd is version 1.30.1. 

Tags: easy

SFSget now much faster

March 31, 2020 — BarryK

Those who have used SFSget, see "sfsget" icon on the desktop, will have experienced a big delay while the online SFS repository is probed. This was done with 'wget' "spider" mode, searching for all files under the "sfs" folder. This is very slow.

Now, the "spider" search is eliminated, as I am uploading a file, named 'sfs-repo-file-list', that lists all the files under the "sfs" folder. All that SFSget has to do is download that file. Here it is:

Two files have been edited, /usr/local/sfsget/sfsget and /usr/local/sfsget/filterpkgs. The latter has a fix for properly handling different SFS repositories.

If anyone wants to setup their own SFS repository, it needs to be added to the 'SFS_REPOS' variable in /root/.packages/DISTRO_PET_REPOS. This is the current assignment:


You would need to have an upload script that creates file 'sfs-repo-file-list'. This is my script:

#200331 upload a list of files.

[ ! $1 ] && exit 1
[ ! -d "$PATH1" ] && exit 1

echo -n 'Enter the password for '
[ "$SSHPASS" == "" ] && exit
echo " ...ok, ${SSHPASS}"
export SSHPASS

#create a date file for sfs uploads
DATE="$(date +%Y%m%d%H%M)" #ex: 201908121739
case "$PATH1" in
#200331 have to keep this file for older versions of easyos...
echo "$DATE" > ${PATH1%/sfs/*}/sfs/date-last-upload
#seems have to upload this separately...
echo "Uploading 'date-last-upload' file..."
rsync -cpt -e "sshpass -e ssh -p 22" ${PATH1%/sfs/*}/sfs/date-last-upload${PATH1%/sfs/*}/sfs
#200331 upload file-list...
find ${PATH1%/sfs/*}/sfs -mindepth 2 -type f > ${PATH1%/sfs/*}/sfs/sfs-repo-file-list
PTN="s%^${PATH1%/sfs/*}/sfs/%%" #ex: easyos/oe/pyro/kernel_5.2.21-p1_src.sfs
sed -i -e "$PTN" ${PATH1%/sfs/*}/sfs/sfs-repo-file-list
echo "Uploading 'sfs-repo-file-list' file..."
rsync -cpt -e "sshpass -e ssh -p 22" ${PATH1%/sfs/*}/sfs/sfs-repo-file-list${PATH1%/sfs/*}/sfs

rsync --exclude-from=rsync-exclusions --exclude=synchronize --delete -rltzvc -e "sshpass -e ssh -p 22" ${PATH1}/${PATH1}

SFS files need to be in an appropriate path. for example:

Locally, you would have something like "www/amd64/packages/sfs/easyos/debian/buster" with the SFS files (and .specs and .png files, see the 'dir2sfs' script). The above script would be at "www/remote-sync", and you would sync the buster SFS files like this:

# ./remote-sync amd64/packages/sfs/easyos/debian/buster

Some more reading: 

Tags: easy

mtPaint 3.49.25 compiled

March 30, 2020 — BarryK

wjaguar (Puppy Forum name) reminded me that Easy has a very old version of mtPaint, 3.49.12. Yes, I used the PET from the Pyro-series of Easy.

I have obtained the latest from the project page:

Compile it in EasyOS 2.2.14. There was a TIFF header file missing, so left out TIFF ...who uses TIFF anyway? It is a very long time since I have seen an actual TIFF image.

This will be in the next release of Easy. 

Tags: easy

PackIt PET fixed

March 30, 2020 — BarryK

I reported about SFR's PackIt and UExtract, that are in the latest (2.2.14) Easy:

When right-click on a file or folder, if it is not an archive file, that is, not something like 'afile.tar.gz', then the right-click menu will have "PackIt" as one entry. This is convenient means for archiving, for example turn a folder into a tarball, or compress a file.

However, after releasing Easy 2.2.14, I discovered that the "PackIt" entry was not in the right-click menu. I puzzled over this, as it had worked in earlier testing. I have now fixed the '' script in the PackIt PET.

Also tweaked a few things in the PackIt and UExtract PETs -- for example, they are in the "Utility" menu, but should be in the subcategory "package", that is, mime "X-Utility-package" -- in Easy, look at the main menu, the "package" subcategory is where the 'XArchive' app entry is.

The PETs will be uploaded soon. 

Tags: easy