site  contact  history  index

Kernel 4.14.79 with ipvlan support

November 09, 2018 — BarryK

I posted earlier this year about configuring the kernel for veth and macvlan support:

...though, I think that should have been the "4.14.45" kernel.

I posted earlier today about macvlan bridging into containers not working for wifi:

So, started to experiment, but found that the Linux kernel is not configured to support ipvlan. CONFIG_IPVLAN is supposed to be enabled, but I had overlooked it, as it is not even listed as disabled in the .config file. How can I enable it, if it isn't even offered?

After a bit of research, discovered that something else has to be enabled, then CONFIG_IPVLAN appears and can be enabled. So, compiled the 4.14.79 kernel, with these changes:

Networking support
Networking options
[*] L3 master device support (CONFIG_NET_L3_MASTER_DEV)
Device drivers
Network device support

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

Tomorrow morning, planning to play with ipvlan! 

Tags: easy

Macvlan bridge does not work for wifi

November 09, 2018 — BarryK

I posted how EasyOS is using Macvlan bridge for Internet access in containers:

However, testers have reported in the EasyOS Forum, that it does not work for wifi, only for ethernet. Yes, this page spells it out: states that for wifi, Macvlan does not work, use Ipvlan. They recommend to definitely use Macvlan for ethernet.

Right, "back to the drawing board"!

For those who are using EasyOS right now, there is a fix. For the example of the "desk" container, open /mnt/wkg/containers/desk/configuration in a text editor, and change this line to "false":


This is theoretically slightly less secure, however, wifi should then work in the container. Do this before starting the container.

What I intend to look into this afternoon, is detect if interface is wifi then implement Ipvlan instead of Macvlan. That's the intention anyway...

Tags: easy

Annalakshmi vegetarian restaurant

November 07, 2018 — BarryK

I have two favourite Indian vegetarian restaurants in Perth. One of those is Annalakshmi, self-serve, eat as much as you want, and payment by donation! Website:

Open seven days a week, except closed for the rest of this week due to a festival. Mostly staffed by volunteers, and serves anyone from the homeless to the very affluent.

Annalakshmi is registered as a non-profit organisation, and this one in Perth is the only one in Australia. There are some others in India, Singapore and Malaysia, so if you are visiting any of those places, check them out!

Here are some of the ladies who do the cooking:


You can even have your lunch home-delivered, for AU$10:

My mouth waters just thinking about their food!

Tags: ethos

Patch for ROX-Filer fix possible slow running

November 04, 2018 — BarryK

Puppy Forum member jamesbond posted a patch that fixes a potential slow-down of ROX-Filer:

That was posted in 2016! I have only just seen it. This is the thing with the Puppy Forum, so much going on, so many great things happening, it is very easy to miss stuff.

You will see in the above link, some testers had difficulty applying the patch. That's because there is different source and they were patching a later fork of ROX-Filer. My source is the original from 2011, with various patches applied.

For EasyOS, ROX-Filer is compiled in 'oe-qky-src', and I have now applied jamesbond's patch:

Thanks James!

Tags: oe

Racy Puppy running in container in EasyOS

November 03, 2018 — BarryK

This is very exciting. I have been working toward this for the last few weeks, and now it works. However, there are a lot of "loose ends" so probably several days away from the next release.

However, basically the concept works, hence this preliminary post to show it off. What we can do is run any Linux distribution in a container, and flip in and out of it, though it is easier to do with the Puppy distros.

Right, so choosing Racy Puppy 5.5 for the demonstration. This was a very popular pup, and still is. It is the big brother of Wary Puppy -- Wary uses the old kdrive Xvesa server, whereas Racy uses Xorg. Apart from the difference in X and xlibs, the rest is built from the same binary packages compiled in T2.

I grabbed the Racy 5.5 ISO and extracted the SFS file, then opened up the SFS file and copied all of it's contents to a folder, named 'racy_5.5-r0_i686' -- not sure if I remember correctly, but I think Racy requires a i686 CPU, whereas Wary a i486 CPU -- but not 100% certain on that. Then ran 'dir2sfs':

# dir2sfs racy_5.5-r0_i686

A snapshot of the main GUI window:


File 'racy_5.5-r0_i686.sfs', 'racy_5.5-r0_i686.specs' and 'racy.png' was created, that I uploaded to the new SFS repository:

Next, click on the "sfsget" icon on the desktop (or run 'sfsget' in a terminal to see any errors), and the first window:


Next window:

images the "INSTALL" button. Note, this is a very early version of 'sfsget', and is missing some functionality -- for example, doesn't yet have detection of already-installed SFS packages.

The SFS is downloaded, and a menu-entry and an icon created on the desktop:

image on the "racy" icon, and hey-presto, Racy Puppy is running...


Well, that "hey presto" is a lie. I had to do a lot of manual fixes to get the desktop running nicely like you see in the above snapshot. The intention is to get all of those fixes automated over the next few days.

Racy runs very fast, can flip back and forth between the main desktop and the Racy desktop. Notice that the background wallpaper is now working -- that was a problem in the containerized desktop in easy 0.9.7 and earlier.

A comment: why would you want to run Racy inside EasyOS, instead of standalone? The answer is: security. Racy is very locked-down inside a container, very much mitigating any security weaknesses of the old software.

This is great fun. Unfortunately, I now have to eat and do other things, will continue developing it, well, what I am now calling EasyPak, tomorrow. 

Tags: easy

dir2sfs take-2

November 02, 2018 — BarryK

I posted recently about the new 'dir2sfs' utility for EasyOS:

Much "water under the bridge" since then!

The "Puppy database format" is now abandoned, for SFS files anyway. The 'dir2sfs' utility is for anyone who wants to create and SFS file from a folder, and invocation would be in a terminal:

# dir2sfs <name of folder>

Which will bring up this window:


...the Help button explains each of these modes. The "terminal" mode will create an icon on the desktop that will launch the container as a terminal window. The next window:


...lots of fields, but pretty straight-forward and plenty of Help buttons. Note that the online URL is not specified, decided it is unwise to hard-code it. But, the folder-path at the URL is specified. Next Window:


...actually, for 'devx' this is too locked-down. Haven't got into considering compiling inside a container yet. These snapshots are just illustrative of what the dir2sfs GUIs look like.

Finally, a SFS file is created. In the above example, it would be 'devx_0.9.7.1_amd64.sfs'. Container security and other settings are in the folder /.control inside the SFS file. The SFS file can be placed into the online repo, stay tuned!

Tags: easy

Redesign of folder hierarchy in wkg-partition

October 29, 2018 — BarryK

This is a little progress report for those who are following the technical aspects of EasyOS development. The fact that the latest version is 0.9.7 is misleading, as the underlying architecture is still undergoing major changes as we head toward a stable 1.0 release. This post is about changes to the working-partition.

In 0.9.7 and earlier, if you look in /mnt/wkg, you will see these folders:

containers home repository .session

Easy uses a per-folder encryption mechanism, and in 0.9.6 and earlier, the 'containers', 'home', 'repository' and '.session' folders were encrypted. This is encrypting everything, which is most secure, however, it also means the SFS files such as 'q.sfs' and 'devx-*.sfs' are encrypted, imposing extra delay when accessing them. These SFS files will be found in the 'repository' folder, for example repository/easy-0.9.6/q.sfs.

These SFS files do not have anything that needs to be encrypted, so it is an unnecessary overhead. Consequently, for 0.9.7, only the 'home' folder is encrypted. This encrypts all your personal files, downloads, etc., however, the '.session' folder may contain sensitive information, as well as the snapshots (rw-*.sfs files) in the 'containers' and 'repository' folders. So, 0.9.7 is not satisfactory.

Working toward 0.9.8, the folders are now:

containers home releases sfs .session

The 'repository' folder has been renamed to 'releases', which more accurately describes its function. The new sfs folder has the SFS files, and symlinks are placed to the SFS files from within the 'containers' and 'releases' folders.

Now we are back to encrypting 'containers', 'home', 'releases' and '.session', for maximum security, but the SFS files are in an un-encrypted folder. The snapshots, 'rw-*.sfs' files, remain inside the encrypted folders.

So, we have maximum security, without unnecessary decryption overhead.

As an example, /mnt/wkg/releases/easy- is a symlink:


...notice that the name of q.sfs has been changed. This renaming, and the folder hierarchy inside the 'sfs' folder, are to support the upcoming EasyPak SFS package management. Which it is intended to describe later!

Tags: easy

pngoverlay utility improved

October 24, 2018 — BarryK

Puppy Forum member Vovchik has created some great little CLI utilities that are used in Puppy Linux and derivatives, including EasyOS.

'pngoverlay' is one of these. The drive partitions that you see on the desktop with little "close box" at top-right, is achieved by merging two images using pngoverlay.
Previously, pngoverlay had a limitation that it had to be in the same folder as the images that it is working on. Vovchik has now removed that limitation. The utility is in source package 'pup-tools-20181024.tar.gz':

Another one is 'picscale', for resizing and converting images. I have recently used this the new 'dir2sfs' utility, to convert images to a standard size, 48x48, and PNG.

picscale source is also at the above link.

Tags: easy