site  contact  subhomenews

New keyboard hardware profiling

November 25, 2023 — BarryK

Today I posted about a fix for keyboard layout:

https://bkhome.org/news/202311/trying-to-fix-console-keymap-stuck-on-us.html

After doing that, remembered a problem that someone reported, a long time ago; probably at least a year ago...

They were booting Easy on a USB-stick, on different computers. One computer had a "us" layout keyboard, so they configured Easy for that. But then booted up on a computer with "fr" layout; however, Easy is not aware of the change and still thinks it is "us" layout. This will cause a problem if have to enter a password at bootup, and after bootup an app will have to be run to change the keyboard layout to "fr".

I have posted about hardware profiling support in Easy; scoll down this page:

https://easyos.org/about/how-and-why-easyos-is-different.html

I have now added keyboard hardware detection. It cannot detect if a keyboard layout has changed. It just detects if there is a different keyboard, and if so will ask for keyboard layout at early bootup in the initrd.

When you update to Easy 5.6.4, after bootup you will see these files:

/etc/keymap
/mnt/wkg/sfs/settings/initrd/keymap.LenovoLenovoCalliopeUSBKeyboard

...that last one is just an example. The "LenovoLenovoCalliopeUSBKeyboard" part is the keyboard hardware profile.

If you bootup on a computer with that profile, then that keymap will be used. If the file doesn't exist, then you will be asked for keyboard layout, then the keymap.profile file will get created.

It isn't perfect, as there could be two computers with different layouts but identifying themselves with the same keyboard name. But, it is a big step in the right direction. You should be able to bootup the USB-stick on different computers and the correct keyboard layout will be automatically loaded.

Here are the github commits:

https://github.com/bkauler/woofq/commit/63e51bb67d4ceefe00e00ad6b8d6c38352f5cefd

https://github.com/bkauler/woofq/commit/bfa37b707322a3c1ceed723ccdf8d5c3024a8bda

There is a small downside; if you bootup on a different computer with the same keyboard layout, you are still going to be asked for the layout. But that will be once-only, then it will be remembered. Same if you change the keyboard; say, plug in a USB keyboard on a laptop; the change will cause to ask for layout.       

Tags: easy

Trying to fix console keymap stuck on us

November 25, 2023 — BarryK

Forum member vVerve reported a problem with the virtual keyboard app xvkbd; he wanted French, but it was something else. Trying to figure out the cause of the problem, I asked what is in /etc/keymap:

https://forum.puppylinux.com/viewtopic.php?p=103479#p103479

...he replied that it has "us".

There are various places where the keyboard layout is asked for. In the initrd at pristine very first bootup, in the QuickSetup window after have the desktop in very first bootup. And, anytime after, can run QuickSetup from the menu "Setup -> QuickSetup", or from the menu "Setup -> Mouse/Keyboard setup" -- or via the "setup" icon on the desktop; "Hardware -> HID".

Whatever route is taken to choose keyboard layout, it results in writing to /etc/keymap

There is, however, a potential conflict. When keyboard layout is asked for at first bootup in the initrd, the choice gets saved in /mnt/wkg/sfs/settings/initrd/CONFIG

These two should remain synced, but they can get out of sync, causing a problem, including perhaps /etc/keymap getting reset to "us".

I have made some changes to keep them sync'ed:

https://github.com/bkauler/woofq/commit/f12d153829595ce986c58ff3c85860cd613c43d1   

Tags: easy

Abort load NVIDIA SFS if GPU missing

November 24, 2023 — BarryK

Federico posted that loads an NVIDIA SFS with Easy booted on a USB-stick on one computer, but when boot on another computer that does not have NVIDIA GPU, openGL is broken:

https://forum.puppylinux.com/viewtopic.php?p=104137#p104137

I posted recently that an NVIDIA SFS is now provided for Easy, installable via SFSget:

https://bkhome.org/news/202311/automatic-nvidia-sfs-updating.html

https://bkhome.org/news/202311/kernel-515138-compiled-and-nvidia-sfss-updated.html

I have modified the 'init' script in the initrd, so that if boot on a computer without NVIDIA GPU, then the SFS won't load:

https://github.com/bkauler/woofq/commit/0f0219f4ebf827c5831384ffbdf1f993cc3672cd

The new code is at line 1899:

    #20231124 for nvidia.sfs check that nvidia gpu exists...
case "$ANAME" in
nvidia*)
lspci | grep -qF 'Class 10de:' #note, requires busybox lspci
if [ $? -ne 0 ];then
echo -e "\\033[1;31m${S400}\\033[0;39m" #red 'No NVIDIA GPU detected, so will not load NVIDIA SFS'
continue
fi
;;
esac

So, if boot up on another computer without NVIDIA GPU, the SFS will not load, and the situation will be as if the SFS was never ever loaded.

As long as you haven't made any manual changes, such as blacklisting the 'i915' kernel driver. Blacklisting is taken care of by /etc/modprobe.d/nvidia.conf in the SFS, so if the SFS is not loaded then also the backlisting of i915 and nouveau won't happen.   

Tags: easy

EasyOS frugal install tutorial page updated

November 22, 2023 — BarryK

A couple of posts recently on the forum have made me realise that the installation pages need some improving. Example, this post, the chap cannot see how to create an entry for GRUB4DOS:

https://forum.puppylinux.com/viewtopic.php?t=9973

I have edited the "Easy frugal installation" page, which is primarily for legacy-BIOS computers, updated it and filled in some gaps that were missing from the explanations:

https://easyos.org/install/easy-frugal-installation.html   

Tags: easy

EasyOS Kirkstone-series version 5.6.3 released

November 16, 2023 — BarryK

Version 5.6.2 was released on November 12, see blog announcement:

https://bkhome.org/news/202311/easyos-kirkstone-series-version-562-released.html

The release notes for 5.6.3:

https://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2023/5.6.3/release-notes.htm

Reproducing the highlights here:

Download:

https://distro.ibiblio.org/easyos/amd64/releases/kirkstone/2023/5.6.3/

Mirror courtesy of NLUUG:

https://ftp.nluug.nl/os/Linux/distr/easyos/amd64/releases/kirkstone/2023/

If updating from 5.6.2, the difference-file is only 41MB, so an easy update.

Feedback welcome at the forum:

https://forum.puppylinux.com/viewtopic.php?p=103636#p103636

Have fun!     

Tags: easy

Kernel 5.15.138 compiled and NVIDIA SFSs updated

November 16, 2023 — BarryK

Easy 5.6.2 has the 5.15.137 Linux kernel. I was intending to stay with that kernel version for sometime, as there are inconveniences when bump the kernel. However, forum member don570 reported that some NVIDIA kernel modules are missing:

https://forum.puppylinux.com/viewtopic.php?p=103177#p103177

Yes, when I compiled the NVIDIA driver, disabled "peermem" and "uvm". So, have bumped the kernel to 5.15.138 and modified the script that compiles NVIDIA to enable those two missing features.

So now there are NVIDIA SFSs compiled for the 5.15.138 kernel:

https://distro.ibiblio.org/easyos/amd64/packages/sfs/easyos/oe/kirkstone/

...which you can install via SFSget (via the "pkg" icon) when running Easy 5.6.3. Or, if you have already installed the NVIDIA SFS in Easy 5.6.2, then when update Easy (via the "update" icon) then there should, in theory, be an offer to also update the NVIDIA SFS. This mechanism was reported several days ago:

https://bkhome.org/news/202311/automatic-nvidia-sfs-updating.html

The intention now is when Easy 5.6.3 is released, with 5.15.138 kernel, to stay with that kernel version well into the future.

Here are the kernel and nvidia sources, patches and build scripts:

https://distro.ibiblio.org/easyos/source/kernel/5.15.x/5.15.138-20231116/

It looks like Easy 5.6.3 will be released soon.    

Tags: easy

Fixed path bug in Limine Installer

November 16, 2023 — BarryK

Forum member libertas reported getting grep errors when running limine-installer in a terminal. See discussion here:

https://forum.puppylinux.com/viewtopic.php?t=9933

Found the cause. I don't think that it affected finding of Linux installations. Fix commit:

https://github.com/bkauler/woofq/commit/e074e4b4e13b4a6e61a90cf8bf8ddf6f6b210c7c    

Tags: easy

Enable client app to run web browser

November 15, 2023 — BarryK

I installed Blender SFS to the main filesystem. Blender runs as user "blender", with home folder /home/blender.

I clicked the menu entry to view the Blender User Manual in the web browser, but nothing happened.

The problem is that Blender is running as user "blender", so cannot execute the default web browser, which is Chromium. Chromium is another client app, running as user "chromium" (with home folder /home/chromium).

The way for a non-root client app to run another non-root client app, is to bootstrap up to the root user, then run Chromium. Many apps, including Flatpaks and Appimages, use the 'xdg-open' utility to run the web browser. If you look at /usr/bin/xdg-open, which is a script, you will see that if it is called as a non-root user, it requests, via 'sudo-sh' to bump up to root. This is a little gui window that asks for the root password. More explanation of sudo-sh here:

https://bkhome.org/news/202306/light-weight-replacement-for-sudo.html

However, Blender does not call 'xdg-open'. Instead, it queries xdg-settings, like this:

# xdg-settings get default-web-browser
chromium.desktop

Blender will then try to run /usr/bin/chromium, which will fail. Only the root user can run /usr/bin/chromium, so that it can drop down to user "chromium" then run Chromium.

This is now fixed, see github commit:

https://github.com/bkauler/woofq/commit/8bff75c49d20559d1f80317a5ab78d733f57b967

This is good, as it will also fix many other non-root client apps that try to launch the browser, or run any other client app.   

Tags: easy