EasyOS Kirkstone-series will continue
I posted to the forum in response to questions about this, as
people are seeing work on QV and wondering if I have forgotten about
EasyOS:
https://forum.puppylinux.com/viewtopic.php?t=11373
I have just completed a recompile in OpenEmbedded/Yocto, based on the
Kirkstone 4.0.17 release. The new build is "revision-7" and all the
binary packages have "-r7" in their name.
Easy 5.7 was built from OE Kirkstone release 4.0.14, and here are the version changes from then to 4.0.17:
apache2 2.4.57 2.4.58
busybox-static 1.34.1 1.36.1
cpio 2.13 2.14
dnsmasq 2.87 2.90
firefox 120.0.1 125.0.2
libstd-rs 1.73.0 1.75.0
linux-firmware 20230804 20240220
mbedtls 2.28.5 2.28.7
mdview 20160622 2023.12.12
openssl 3.0.12 3.0.13
perl 5.34.1 5.34.3
python3-aiohttp 3.8.5 3.8.6
python3-jinja2 3.1.1 3.1.3
python3-pyqt5 5.15.1 5.15.7
python3-urllib3 1.26.17 1.26.18
sudo-sh 1.2 1.3
tzdata 2023c 2024a
vim 9.0.2068 9.0.2190
new: xml2 0.5
Right now, the 5.15.157 kernel is compiling. There was a hiccup with the aufs patch; fixed, see:
https://forum.puppylinux.com/viewtopic.php?p=118179#p118179
Easy 5.8 shouldn't be too far away. There is a small to-do list,
which hopefully will take a couple of days only. That's if I don't get
distracted.
Tags: easy
QV version 240425 pre-alpha released
See 240423 announcement:
https://bkhome.org/news/202404/qv-version-20240423-pre-alpha-released.html
I was hoping to get onto implementing an update mechanism, but we keep finding bugs.
Download:
https://distro.ibiblio.org/easyos/amd64/releases/void/
One change made, and I have my fingers crossed that it is ok, is
have now included the Void 'shadow' package. I had previously told
XBPS to ignore 'shadow' if it is a dependency of any package, as
it requires 'pam'.
'pam' causes trouble, but I think now have managed to disable it. We want the 'shadow' pkg, as any package that wants to create entries in /etc/passwd (etc.) needs it.
Forum discussion welcome here:
https://forum.puppylinux.com/viewtopic.php?p=117896#p117896
...first post in that thread explains about 'qv-installer', for
direct install to internal drive.
I did some basic testing of 240425, very basic. Installed the
'devx' PET via PKGget, and it worked ok, took awhile. At the end
PKGget reported a lot of missing dependencies still not installed.
I don't know what to make of that, as XBPS did the installing, and
it would have installed all required deps. So probably PKGget has
got it wrong.
Tags: quirky
QV readme on github
The readme file on github was previously empty. I have inserted a basic explanation about QV:
https://github.com/bkauler/woof-quantum-vis
Tags: quirky
Fix bluetoothd endless restarting
In 2020 I posted about using the 'restarter' utility in /etc/init.d/bluetooth, to immediately restart 'bluetoothd' if it crashes:
https://bkhome.org/news/202011/xf86-input-wacom-and-restarter-compiled-in-oe.html
Yes, well, the worst has happened. Testing the latest QV, I observed /tmp/bootsysinit.log being endlessly appended, like this:
...
restarter[8300]: Executing [79]: (/usr/sbin/bluetoothd)
restarter[8604]: Starting [/usr/sbin/bluetoothd] with pid:8604
D-Bus setup failed: Name already in use
restarter[8603]: [8603]:sigchildhdl_GetExitStatus SIGCHLD handler, child_pid:8604, waitpid returned:8604, exit_reason:process exited, exit status=1, child exit status:256, signal:17, nchildren now:0
exit_valid:(), cmd_exitstatus2:1
[8603]: Exiting
restarter[8300]: Executing [80]: (/usr/sbin/bluetoothd)
restarter[8606]: Starting [/usr/sbin/bluetoothd] with pid:8606
D-Bus setup failed: Name already in use
restarter[8605]: [8605]:sigchildhdl_GetExitStatus SIGCHLD handler, child_pid:8606, waitpid returned:8606, exit_reason:process exited, exit status=1, child exit status:256, signal:17, nchildren now:0
exit_valid:(), cmd_exitstatus2:1
[8605]: Exiting
...
I do not know of a fix for this. 'bluetoothd' is still flakey and can crash. Just restarting it causes that dbus problem and it immediately crashes. I didn't have this problem with EasyOS, or perhaps I just didn't notice it.
So, have taken out 'restarter':
https://github.com/bkauler/woof-quantum-vis/commit/ac472ff697184ffaf3d48e6c6ff432b8d03f0577
However, 'restarter' does work, at least sometimes, without going into that endless loop. Now, if it crashes, that's it, you will have to manually restart it, by "/etc/init.d/bluetoothd start" -- and I hope that it doesn't hit that dbus problem.
It would be good if 'restarter' could set a limit on how many
restarts. Oh, and it is not just a QV problem; do a search on
"bluetoothd d-bus setup failed: name already in use" will return a
lot of hits.
Tags: quirky
QV version 20240423 pre-alpha released
Please read the 20240419 announcement:
https://bkhome.org/news/202404/qv-version-20240419-pre-alpha-released.html
Since then, there have been bug fixes, see the forum:
https://forum.puppylinux.com/viewtopic.php?t=11292
Also enhancements, see:
https://bkhome.org/news/202404/shell-wrapper-for-sudo.html
https://bkhome.org/news/202404/qv-snapshot-information-on-desktop.html
Bluetooth and samba fixed, among other fixes.
Still no update mechanism. Hope to do that for the next release.
Thereafter, no more need to download the huge .img file, just
install a small update PET.
Tags: quirky
Shell wrapper for sudo
I posted about sudo here:
https://forum.puppylinux.com/viewtopic.php?p=117577#p117577
Which has brought this issue back to my attention. I really don't know why sudo was working and then it wasn't.
Anyway, I developed a simple alternative, named 'sudo-sh', see these blog posts mid-2023:
https://bkhome.org/news/202306/goodbye-sudo-package.html
https://bkhome.org/news/202306/light-weight-replacement-for-sudo.html
But what about an app that calls the sudo executable? EasyOS doesn't have sudo, QV does but it doesn't work.
To fix this, I created a shell script named 'sudo'. I don't know if an app will refuse to run it, if it sees it isn't a binary executable, or doesn't have suid bit set. Also, it ignores all commandline options. Anyway, here it is, /usr/bin/sudo:
#!/bin/ash
C=''
while [ -n "$1" ];do
case "$1" in
-*)
case "$1" in
-g|-p|-U|-u|-C|-r|-t)
shift
;;
esac
;;
*)
C="$@"
;;
esac
shift
done
if [ -n "$C" ];then
exec sudo-sh ${PPID} ${C}
fi
This will only work in EasyOS and QV, that have sudo-sh. A simple test:
# su spot
# sudo urxvt
...a window pops up asking for the root password, then the urxvt terminal runs.
That sudo script is very simple, could be written in C.
Tags: quirky
QV snapshot information on desktop
Users of QV are likely to make heavy use of the btrfs snapshot feature. I have posted about QV's support for snapshots, see here:
https://bkhome.org/news/202404/qv-snapshot-deletion.html
What seems to be needed is "at a glance" information about what snapshot is currently running. I have implemented that information, written to the wallpaper, in format snapshot-number: creation-date: description.
At the first bootup, I have set the decription as "Original Snapshot", though it is not a snapshot as such, but the originator of snapshots. This description will also be translated if the user selects a non-English language.
Here is what it looks like, along the top of the desktop:
Here is the github commit:
https://github.com/bkauler/woof-quantum-vis/commit/f13a1f913fbd1409b34e03def05d33c8bfc50bc1
...using GraphicsMagick to write the text on the
image.
Tags: quirky
QV version 20240419 pre-alpha released
QV is a new very experimental Linux distribution, under development and still evolving. To read about what has happened so far, follow the blog posts with the "quirky" tag:
https://bkhome.org/news/tag_quirky.html
In a nutshell, QV has many features of EasyOS, except does not have a layered filesystem, nor SFS files. It is a "frugal full" installation, built from Void Linux packages using the XBPS package manager. It also has some EasyOS Kirkstone .tar.xz and PET packages. Another very significant feature is that QV is installed in a btrfs filesystem, with support for compression and snapshots.
I have been playing with a logo; this is the latest:
The letters "QV" may mean "Quirky Void", as this is a very quirky distribution compared with Void Linux. Or, it may mean "Quantum Vis", which is Latin for "has everything that you need".
Download from here:
https://distro.ibiblio.org/easyos/amd64/releases/void/
You can write the drive-image file to a USB Flash drive and boot that. Or, it can be installed directly to an internal HDD or SSD; with some caveats. See forum post for details:
https://forum.puppylinux.com/viewtopic.php?t=11292
If you look at the 'qv-installer' script, also at 'limine.cfg' in the drive-image file, you will see that "BOOT_UUID" and "BOOT_DIR" kernel parameters are now required, as well as WKG_UUID and WKG_DIR. The reason for this is that 'vmlinuz' and 'initrd' may be in a different partition than the working-partition, and an "update" operation will need to know where they are.
As there are no longer SFS files, the "devx" is now a PET package. It can be installed via PKGget, or downloaded directly from here:
https://distro.ibiblio.org/easyos/amd64/packages/pet/pet_packages-void/
In the latter case, right-click on it and choose "petget" from
the menu.
'devx-240419.pet' is a "meta package". What that means is that it doesn't contain any packages, just a 'pinstall.sh' script that will install everything required to setup a development environment. I suggest, take a snapshot first, before installing it, with an appropriate name, like "devx development evironment". Then, before doing any actual compiling, take a snapshot of the snapshot, to retain a pristine devx environment.
I'm not sure, but I think best to run "xbps-install -S" first, before installing the devx PET, to sync with the remote repositories.
XBPS will download 624 packages, a total of 592MB, so be prepared for it to take awhile.
After install has finished, delete /etc/profile.d/gawk.csh and /etc/profile.d/gawk.sh -- these are broken.
If you want to install with "new2dir make install", the 'installwatch' package is required. Download it from here:
...download, right-click and choose "petget" to install it.
You will notice that there is no longer an "update" icon on the desktop. This is because updating will mostly be done via XBPS. It is intended that there will also be a kernel PET and an update PET that will have fixes.
This update strategy has yet to be implemented. It will mean that you only have to download the big .img file once, and there-after rely on XBPS to update packages, and kernel and patch PETs.
Feedback welcome at the forum.
EDIT 2024-04-23
Superceded by version 240423, see announcement:
https://bkhome.org/news/202404/qv-version-20240423-pre-alpha-released.html
Tags: quirky