Puppy moving to Xwayland
Forum members 'dimkr' and '01micko' are doing great things at
"woof-CE-testing". I posted about dimkr's elimination of the 'initrd'
file:
https://bkhome.org/news/202103/puppy-linux-without-an-initrd.html
There are other developments underway, including a move to using
Xwayland instead of Xorg. If you would like to give it a go, see here:
https://forum.puppylinux.com/viewtopic.php?f=40&t=2967
Very early days though, so many things broken. Probably best
restricted to people who can fix bugs, rather than just report them.
I haven't tried it myself, but interested as it looks like the way we will have to go, eventually. 'dimkr' posted a screenshot:
I have not studied anything about Wayland or Xwayland, so don't understand why "cage" is used. Cage project:
https://github.com/Hjdskes/cage
...it looks like cage is an easy way to get an X app to run on
Xwayland. So dimkr is running jwm, and from that rox, etc. See this:
https://github.com/puppylinux-woof-CE/woof-CE/pull/2265
Tags: linux
Puppy Linux without an initrd
We know about the 'initrd' file, which is an initramfs that runs first at bootup. EasyOS has this, as do the puppies.
A traditional full installation, occupying an entire partition, may
not need an initrd, and can be run directly from the kernel boot
parameters. For example, if the full installation is in /dev/sda9, then
boot parameters would include root=/dev/sda9, or the PARTUID could be specified.
If an initrd is used, the boot parameters would not have root=, instead would have something like initrd=initrd.gz, where initrd.gz is the name of the file, with perhaps a path.
One of the reasons we have a initrd is to setup the layered
filesystem, using overlayfs or aufs, then a switch_root is performed
onto the layered filesystem.
However, Dima, forum name 'dimkr' on github and the Puppy Forum, and
'iguleder' on the old Puppy Murga Forum, has come up with a way to load
the layered filesystem without requiring an initrd.
It is achieved with a special 'init' executable, written in C and
statically linked with musl. The boot parameters would be something like
this: root=/dev/sda9 init=/init, which tells the kernel that there is a "full installation" at /dev/sda9 and to run /init.
Except that there isn't really a full installation, there are only
SFS files. The init executable does what the initrd used to do, sets up
the SFS layers and then switches onto the top of the layers.
Dima has created a new project "frugalify" which has this init executable:
https://github.com/dimkr/frugalify
He has also built a demo Puppy, dpupOS:
https://forum.puppylinux.com/viewtopic.php?f=33&t=2495
It must be emphasized that this is not for end users, only for those
who want to play with something new and interesting and provide
feedback. I tried it a few days ago, and there are too many issues to be
considered as suitable for end users -- but they are details, the guts
of it are sound.
A note about iguleder -- he goes way back, about 11 years I think, In
the Murga Forum, and has been a fantastic contributor, as well as lots
of projects on github. he is active developing woof-CE, which is great. I
think that he is a young bloke, compared to me anyway.
If you are interested in compiling it yourself, I uploaded some musl
chrootable root filesystems a few years ago, see a blog post here:
https://bkhome.org/news/201704/alpine-x8664-chrootable-rootfs.html
Downloadable from here, x86_64, x86, aarch64, armhf tarballs:
http://distro.ibiblio.org/quirky/alpine/
...I think there are instructions inside the tarballs.
Tags: linux
puppylinux.com certificate issues
The Puppy Linux Forum, at forum.puppylinux.com currently does not work.
This has been reported by ozsouth at one of the alternative Puppy forums:
https://www.linuxquestions.org/questions/puppy-71/puppylinux-main-forum-having-issues-4175691857/
However, this URL works:
https://puppylinux.rockedge.org/
01micko and others are trying to fix it.
EDIT 2021-03-21:
The forum is fixed, this URL now works:
Thanks to Erik and Mick for sorting it out.
Tags: linux
Iceape-UXP an alternative to SeaMonkey
I received an email from Luke, advising me of Iceape-UXP, an
alternative browser suite, that does not require Rust to compile.
Quoting from his email:
I was reading your blog the last several days for minimalist inspiration
and noticed you disliked Rust as a dependency as well. There is an
alternative with UXP: http://thereisonlyxul.org/
Iceape-UXP has no rust dependency, we maintain it here: https://wiki.hyperbola.info/
I got the latest Iceape and Icedove from the git repository, as well as
the recommended thunderbird source, and had a go at compiling Icedove.
It requires python2 and I used the same PET of python2 that I had used
to compile SM. Unfortunately, got a python error when compiling Icedove,
and as it was late at night, left it at that. I was running the EasyOS
Dunfell build.
Might take another look sometime, perhaps try on EasyOS 2.4.1, the
Buster series, which already has python2. Nice to know that we do have a
choice.
Tags: linux
Murga Forum is up, read-only
The Puppy Forum, created and maintained by John Murga until his
recent passing away, has been in maintenance-mode for over a
month. No one had his login details, not even family members, so
the forum stayed down, until today.
The domain murga-linux.com is registered with namecheap.com and
the site is hosted with linode.com. I have been in contact with
the executor of John's Will and have obtained sufficient
information to satisfy Linode tech support, and we were granted
login.
We are still waiting on namecheap.com, as we need to be able to
renew the registration.
My experience is with conventional shared hosting only (at
omnis.com), and Linode's cloud hosting was perplexing when I
logged in! I am familiar with having everything setup, nice
Control Panel. Linode do things differently. I asked James Budiono
(jamesbond in the forums) for help, and wow, he did, got the forum
out of maintenance mode, and here it is:
Please treat it as read-only, don't login or post anything.
At this stage, we are uncertain about the future of the Murga
Forum. There are so many links to it, that we probably do need to
keep it running. I think that it is on a US$5 per month plan with
Linode, and then there is the name registration cost. The phpBB
forum is running on a very old version of PHP, and maybe it is a
bit shaky. We may end up seeking a volunteer who is prepared to
look after it.
Tags: linux
Oh dear, Rust again
Back in April 2020, I made a comment about Rust:
https://bkhome.org/news/201904/easyos-forum-closed.html
Which upset at least one person. Today I received an email
suggesting that 'fd' is superior to the 'nnn' file manager. This
is my reply:
Thanks for the suggestion.
Unfortunately, fd is written in Rust. It is very difficult to
create a small binary when written in Rust -- at least, that is
my understanding.
I did a quick search, it is possible to create a fully static
rust executable, linking with musl:
https://doc.rust-lang.org/edition-guide/rust-2018/platform-and-target-support/musl-support-for-fully-static-binaries.html
There is another nice console file manager written in python.
Same problem. too much overhead to run in the initrd.
I should be careful about making assumptions about Rust, so I
found it compiled statically with musl, here:
https://github.com/sharkdp/fd/releases
...the binary is 2.3MB (static, stripped), which would double
the size of the initrd!
I tried it, unfortunately it is not a text-mode GUI app like
'nnn', it is only a CLI replacement for 'find'.
Ha ha ha, replacing the tiny 'find' utility with some more
features, and bumping the size to 2.3MB, please, no! And it
doesn't even provide all of find's capability, quoting from the
'fd' project page:
While it does not seek to mirror all of find's powerful functionality, it provides sensible (opinionated) defaults for 80% of the use cases.
Unfortunately, there are so many people pushing Rust as a systems
programming language.
Tags: linux
EasyDD GUI fixes for Linux Mint
I posted a few days ago about improvements to EasyDD:
https://bkhome.org/news/202006/easydd-works-on-more-distributions.html
I had only tested CLI mode in Linux Mint, however Sebastion has got
GUI mode working. He installed 'gtkdialog', which is not available in
the default repositories, but is available elsewhere, such as here:
https://repology.org/project/gtkdialog/versions
The "MX-19" DEB is here:
http://mxrepo.com/mx/repo/pool/main/g/gtkdialog/gtkdialog_0.8.3-2mx19_amd64.deb
However, Sebastion discovered a couple of bugs. Drag-and-drop of an
image file from the Nemo file manager to EasyDD had some extra text
preppended and appended. I reported to the Puppy Forum:
http://murga-linux.com/puppy/viewtopic.php?p=1061174#1061174
...and MochiMoppel responded with a fix. fantastic, thanks for that!
Another problem was the GUI put up a "finished" message, when it wasn't, it was only just started to write to the drive.
I found the cause. EasyDD will use the embedded "vte" terminal
support of gtkdialog, however, often gtkdialog is compiled without this,
as is the case with the DEB. So then EasyDD looks for 'rxvt', 'urxvt',
'xterm' and 'gnome-terminal', in that order.
Linux Mint has the last one. Unfortunately, "gnome-terminal .... -e
easydd" runs as a separate process and returns immediately, hence the
premature "finished" window. It requires the "--wait" option, which I
have now put into EasyDD.
Haven't tried these fixes in Linux Mint yet, but should be
good-to-go. Ditto for any other Debian-based or Ubuntu-based
distribution. Just find the gtkdialog package. Gtkdialog is so good, it
should be in all official package repositories!
For anyone encountering EasyDD for the first time, see here:
https://bkhome.org/linux/easydd-write-image-file-to-drive.html
gtkdialog source
Most people are getting the source from here:
https://code.google.com/archive/p/gtkdialog/
However, there are various forks that are still active, especially this one, maintained by Mick Amadio:
https://github.com/01micko/gtkdialog
...this would be where Puppy Linux developers are contributing.
EDIT 2020-06-19:
Michael Amadio has contacted me, advised that he has moved the gtkdialog
repository under the umbrella of the Puppy Linux woof-CE repository:
https://github.com/puppylinux-woof-CE/gtkdialog
Tags: linux
EasyDD works on more distributions
I have abandoned EasyDD-portable. Too troublesome. Instead, the
'easydd' script has been enhanced, with more features, refinements, and
should work on just about all Linux distributions.
It should work in both CLI and GUI modes in all Puppy and Puppy-derivatives, including very old versions.
For other Linux distributions that do not have the 'gtkdialog' utility, EasyDD should work in CLI mode.
I have updated the introduction page:
https://bkhome.org/linux/easydd-write-image-file-to-drive.html
...of course, there is the disclaimer, see bottom of linked page. I
have created EasyDD in good faith, but as we can never 100% guarantee
perfect code, nor anticipate peculiarities of some distributions, you
need to use EasyDD entirely at your own risk. I have tried to anticipate
all eventualities, and put sanity checks throughout the script ...but,
you never really know, until you try it on your distro.
Note, 'gtkdialog' is great, but for those distros that don't have it,
and have 'zenity' or 'yad' instead, a future project could be to get
the script to use those. Then EasyDD will be able to run in GUI mode on
many more distros.
Another note: one problem that we had with old puppies was that they
have an older version of the 'dd' uility, or the busybox 'dd', which
lacks real-time progress reporting. EasyDD will now detect this, and can
still use the old 'dd', just without the real-time write-speed
reporting.
EDIT 2020-06-17:
Alfons reported that specifying a target drive in CLI mode, for example
"easydd easy-0.6-amd64.img.gz sdb", exited without doing anything. Hmmm,
yes. Fixed.
EDIT 2020-06-18:
Fixes to run EasyDD in GUI mode in Linux Mint:
https://bkhome.org/news/202006/easydd-gui-fixes-for-linux-mint.html
Tags: linux