site  contact  subhomenews

Xsane and MAAG for Easy Pyro

May 16, 2018 — BarryK

Easy Pyro 0.9.1 (the latest in the Pyro builds of easyOS), does not have Xsane, a scanner GUI, as I was unable to compile it in OpenEmbedded.

I have now compiled Xsane in a running Pyro 0.9.1 and created PETs. This will be in the next release. If you want it now (348KB):

There's a nice app created by rcrsn51, that I did include in Quirky I think, but has got left out of the Easy Pyro builds: MAAG. This is a GUI app for creating animated GIFs. Forum thread:

I am using version 1.6. I modified rcrsn51's PET, as Pyro does not have 'gcolor2.png'. This will also be in the next release of Pyro. If you want it now (4KB):

Tags: easy

Easy Beaver 0.9.2 released

May 15, 2018 — BarryK

For awhile now, I have been building EasyOS from binary packages compiled in my fork of OpenEmbedded. Those binary packages were imported into woofQ, my Easy (and Quirky) distro builder.

However, woofQ, like the woof-CE used for Puppy Linux, can build with any binary packages. So, I have done a build using Ubuntu 18.04 Bionic Beaver DEB packages, and named it "Easy Beaver".

It is an interesting thing to do, that some users might like, as the PETget Package Manager (known as Puppy Package manager in Puppy Linux) then has access to the huge Ubuntu DEB package repositories.

Easy Beaver 0.9.2 can be downloaded from here:

It is an image that you can write to a USB stick, as described here:

There are probably bugs, as it has had minimal testing. In particular, I don't know if all apps have their required dependencies.

There is also, something very odd. Click the icon on the desktop labeled "sfsget", to download the "devx" file, to turn Easy Beaver into a complete development environment. I did that, and compiled Geany (text editor) 1.33, choosing to link against the gtk2 libs.

However, it linked against the gtk3 libs. I can't see how that happened. The Geany configure script reported that it was using gtk2, somehow Ubuntu subverted that.

You are welcome to test and report to the forum here:

I have lots of plans for improving EasyOS, and want to get back to that. The above exercise has been a temporary diversion.

Tags: easy

EasyOS Pyro64 version 0.9.1

May 07, 2018 — BarryK

Back from a trip to Brisbane, to visit my daughter and partner. While over there, I continued to work, sporadically, on Easy, mostly container security. Easy Containers now supports Linux Capabilities, as shown in this snapshot of Easy Containers (executable 'easy-containers'):


This snapshot is in the Easy Containers introduction:

Easy 0.9.1 is released, and when you run Easy Containers GUI app, the help buttons scattered around it are a helpful read.

Download version 0.9.1 from here:

If you are new to Easy, I recommend read the blog announcement for version 0.9, which has more details and introductory links:

I did a recompile in OpenEmbedded, the xine and gnome-mpv media players now have more deps, including libbluray. There are a few other tweaks here and there, relative to 0.9.
Oh yeah, a new theme, blue-ish. Not sure if I really like it though. Some new wallpapers.

Feedback is welcome at this thread of the Puppy Forum:

Have fun!

Tags: easy

Right-click-Easy PET

May 07, 2018 — BarryK

Puppy Forum member don570 created this sometime ago, see forum thread:

And a special one for EasyOS:

I have added it to the Easy 'noarch' repository:

I considered adding it to the build of the latest Easy, 0.9.1, however, the '' script uses absolute paths, so is not suitable for woofQ (or any other woof*).

In woof*, the "current directory" is in folder sandbox3/rootfs-complete, whereas in a running pup it is /, when the package is installed.

So, a should always use relative addressing, for example, instead of:

ln -s /destination/somewhere /source/someplace

It should be:

ln -s /destination/somewhere source/someplace
ln -s /destination/somewhere ./source/someplace

Tags: easy

EasyOS Pyro64 0.9 released

April 15, 2018 — BarryK

This is a beta-quality release, bumped from many alphas before it, of EasyOS.

EasyOS (also known as just "Easy") is built with the woofQ build system, which can use the binary packages of any other distro. However, this release, one of the "Pyro64" series, is built from packages compiled from source using OpenEmbedded. Specifically, the "Pyro" release of OpenEmbedded, more specifically, a fork of OpenEmbedded.

This is the github repo of my fork of OpenEmbedded. It has a "meta-quirky" layer that compiles all of the extra packages needed by Easy:

EasyOS is an experimental distribution, a complete rethink about ease-of-use, security and maintainability. An overview page is here, with links to tutorials:

Summarizing some of the highlights of EasyOS:

  • Container-friendly. Designed from scratch to implement containers in an extremely efficient way, and be extremely easy to manage (with simple GUI tools).
  • Version control. Greatly enhanced roll-back, roll-forward, recovery, version upgrade/downgrade, snapshots.
  • EasyShare. Extremely simple file and printer sharing over a network (again, simple GUI tool).
  • Enhanced pup_event. Background service manager, an "under the hood" thing.

Apart from those, Easy has a fine pedigree, with Uncle Quirky and Grandfather Puppy (Puppy Linux). Puppy is famous for ease-of-use, lots of apps in a very small size, and a very special user interface, based on the JWM window manager and ROX-Filer file-manager and desktop manager. Easy has all of that, so on the desktop looks very much like Puppy, except is very different "under the hood".

With this release of Easy, I have not been so bothered with keeping size down, and the download file is now 399MB. But with that you get just about everything -- such as LibreOffice, Gimp, Dia, Inkscape, SeaMonkey, HomeBank, Planner, Grisbi, Osmo, Notecase, Pidgin, Gnome-MPV, Xine-UI -- as well as all of the underlying support such as Xorg, printing, scanning and kernel device drivers.

The list goes on... quite amazing that it is still only 399MB!


Easy is very kindly hosted by, as yet no mirrors:

The file to download is 'easy-0.9-amd64.img.gz'. This will bootup and auto-detect your video hardware. However, if you know that Linux has problems with using the "proper" hardware-accelerated Xorg video driver, you might like to download 'easy-0.9-amd64-MODESETTING.img.gz', which is exactly the same except has preselected the Xorg 'modesetting' driver. Or, the last resort, is the very basic Xorg 'vesa' driver, without any hardware acceleration, file 'easy-0.9-amd64-VESA.img.gz'.


The Easy download file is intended to be written to a SD-card, which can then be booted. Here is a how-to:

...I do recommend that 'easydd' utility. Note, with some Linuxes, you may have to prepend "sudo" to use it.

Once booted up from the SD-card, you can just keep using it like that, as it is already full installed on the SD-card (and automatically expands to use the entire card). However, if you wish, you can also install to a hard drive, as explained here:


As with Puppy Linux, Easy has a single file that will transform Easy into a complete compiling/development environment. This is the famous "devx" SFS file, which is a Squashfs file that mounts as a layer in the aufs layered filesystem -- thus can be as easily un-installed as it is to install.

At the top of the screen, you will see an icon labeled "sfsget", for installing SFS files, including "devx".

Infrastructure & containers

Containers are a very interesting feature of Easy. There are a couple of "how Easy works" pages, that explain the underlying architecture, and introduce how containers work: (very technical)

And a tutorial on containers from the end-user perspective:


If you would like to get involved, there is a thread on the Puppy Forum;

Have fun!

Tags: easy

alsactl hangs

April 11, 2018 — BarryK

I built EasyOS Pyro64 0.9, with the intention of uploading it. Also built it in two variants, with Xorg 'modesetting' driver or 'vesa' driver preselected.

Testing the 'vesa' variant, hit an "interesting" bug, a show-stopper. At bootup, /etc/init.d/10alsa executes, which creates /etc/asound.state and runs "alsactl -f /etc/asound.state store" on the first bootup, on subsequent bootups "alsactl -f /etc/asound.state restore".

I got to the desktop, and everything seemed OK, but noticed 'xload' in tray was very busy. I found that alsactl had not terminated. Furthermore, it cannot be killed, not even at shutdown, requiring a hard poweroff by holding down the power-button.

A process cannot be killed if it is doing "uninterruptible I/O". Not even at shutdown!

So, what is different about 'vesa'? The Xorg vesa driver does not use KMS (Kernel Mode Setting), so requires "options i915 modeset=0" in file /etc/modprobe.d/i915.conf (I have Intel video -- and audio).

I also tested by totally removing i915.ko, the kernel module, alsactl still hangs. Note, blacklisting i915.ko does not work, it has to be actually removed, then rerun 'depmod'.

If I change the permissions on /etc/init.d/10alsa, turn off execute permissions, then alsactl will not run at bootup, nor at shutdown. And this is interesting... sound works!

Yep, works perfectly, and "aplay -l" shows the interfaces are there. "aplay <sound file>" works. pnmixer tray applet levels work.

Yet, "alsactl -f /etc/asound.state store" or ""alsactl -f /etc/asound.state restore" hangs.

My wild guess is that support for non-KMS has lapsed, at least for Intel. The i915.ko driver does seem to be tied into the audio for some reason.

The workaround, for anyone else who wants to use the Xorg 'vesa' driver with Intel video, who hits this problem, is, change /etc/init.d/10alsa to non-executable.
You won't get saving of sound level settings though.

Tags: easy

Using Easy Containers

April 10, 2018 — BarryK

I have written a tutorial on creating and managing Easy Containers:

The tutorial describes containerized apps on the desktop, which will be in EasyOS version 0.9, due out very soon.

Tags: easy

Samba recompiled for EasyOS Pyro64

April 09, 2018 — BarryK

Samba is a key part of EasyShare, my simple GUI for file and printer sharing over a network. EasyOS Pyro64 0.8.5 has Samba 4.6.8.

I was concerned that I might have configured Samba without some needed features, in an effort to reduce size. So, have recompiled, with some extra features enabled. Also bumped the version to 4.6.14, the latest in the 4.6.x series.

These are options that I have removed:

--without-ads --without-winbind --without-dmapi --extra-python=/usr/bin/python3

Taking out that  last one is actually removing support for python3. There is still support for pythin2.7.

The config is now:

# ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc --libdir=/usr/lib --enable-fhs --includedir=/usr/include --bindir=/usr/bin --sbindir=/usr/sbin --with-configdir=/etc/samba --with-piddir=/var/run --with-privatedir=/etc/samba/private --with-privatelibdir=/usr/lib --with-modulesdir=/usr/lib --with-lockdir=/var/cache/samba --with-logfilebase=/var/log/samba --enable-cups --with-acl-support --with-automount --with-quotas --with-syslog --with-ldap --without-pam --libexecdir=/usr/libexec --datadir=/usr/share --without-fam --without-lttng --without-systemd --disable-avahi --enable-gnutls --without-sendfile-support --nopyc --nopyo --without-ad-dc --without-ntvfs-fileserver

Creating the PET, I took out all of the python and perl support, and one enormous executable, 'smbtorture'. The PET is 11MB -- note that I still only gzip PETs, whereas Puppy now xz's them.

This will be in the next release of EasyOS.

Tags: easy