EasyOS and Quirky development hiatus
I have decided to put the development of EasyOS and Quirky on-hold for awhile, as I want to reconsider some of the basic architecture.
Various thoughts have been brewing in the back of my mind for awhile, and it has come to a head as I have been implementing EasyPak, my concept for "universal packages".
Universal packaging systems include Flatpak and Snaps, and the more I looked into these, the more troubled I became. The idea, basically, is that a universal package will run on "any Linux distro", however, I started to realise that there are caveats to this. Some assumptions have to be made about the underlying OS, such as existence of pulseaudio, systemd, dbus, and so on. In other words, the "universal app" will actually only run on certain distros.
Then there is the size. A universal package is just about an entire
distribution. Yep, just about every underlying package has to be
included in the universal package. Hence, when I installed the Krita
flatpak, the Qt-based paint program, from Flathub, the download was
566MB.
I began to question the value of the whole philosophy of universal packages.
I am also troubled by the philosophy underlying containers. Yeah,
yeah, universal packages, containers, flavour of the month, flavour of
the year, whatever.
There are some aspects of Android that I like. Android runs each app
as a separate user. This is actually a very simple isolation mechanism,
that uses Unix groups/users architecture that has been there right from
the start of Unix and Linux.
I have never liked Java, yet the JVM does provide abstraction from
the hardware (HAL), which has one important principle, that packages can
be shipped as Java code and will run on all Android phones and tablets.
Well, the Java API provided with Android does change. You can download
an app, size say 10 - 50MB, and it will run on all phones that have the
minimum specified Android version. Yes, these are universal packages, a
fraction of the size of those coming from Flatpak and Snap.
Anyway, there are a few lines of thought that I want to follow, will
try and post here when there is an interesting development.