Linux Saloon | Linux New Year
Kobalt 20v Drywall Cut-Out Tool Test & Tear Down
openSUSE Tumbleweed – Review of the week 2023/02
Dear Tumbleweed users and hackers,
It was another uneventful week for Tumbleweed: 6 snapshots were submitted to openQA for testing and all have returned successfully and been published. In staging, of course, the picture is a bit darker, but that’s all shielded before it reaches users and as such does precisely what we want it to do: safeguard the distro and detect issues before they are problems.
The main changes delivered in the 6 snapshots (0106…0111) include:
- Python pytest 7.2.0
- Meson 1.0.0
- KDE Plasma 5.26.5
- Linux kernel 6.1.3 & 6.1.4
- Libzypp 17.31.7
- Mozilla Firefox 108.0.2
- KDE Gear 22.12.1
- firewalls 1.3.0
- systemd 252.4
- Qt 5.15.8
In the staging area, we are busy testing the effects and working on the fallout, of
- Mesa 22.3.3
- Boost 1.81.0: breaks libetonyek and LibreOffice
- Python Sphinx 6.1
- libraw 0.21.0: breaks gegl (fix in the queue already)
- GnuPG 2.4: breaks gpgme:qt
- Ruby 3.2 to become the default ruby version: YaST is failing
- Switch to openSSL 3: Progress tracked in Staging:N
BusyBox, systemd, Gear update in Tumbleweed
openSUSE Tumbleweed started the new year just like it finished the last; on a roll and giving users freshly updated software packages.
The rolling release has been on a daily release streak since the beginning of December and since the beginning of October has only missed one daily snapshot; :open_mouth: !
The latest snapshot to arrive was 20230111 and it brought an update in yast2 that gives help text within the YaST Control Center from the 4.5.21 update. A migration of the Pluggable Authentication Module settings to /usr/lib/pam.d took place in a samba 4.17.4+git update. There was a 1.0.2+git update with kdump, which improved the generation of calibrate.conf; it uses static IP addresses for calibration. The package also fixed s390x build dependencies and fixed the package summary in the spec file. The second Linux Kernel update this week arrived in this snapshot; kernel-source 6.1.4 fixed the grub2 menu handling for rebooting. Advanced Linux Sound Architecture changes with the kernel update applied a dual codec fixup for Dell Latitude laptops. An update from this year of ncurses improves configure-script macros vs compiler warnings, and vim’s benevolent dictator for life Bram Moolenaar suggested ncurses add an RV report+version, which was implemented in the release, according to the changlog. Several other packages updated in the snapshot, which included several libqt5 cross-platform application and User Interface framework packages.
Snapshot 20230110 updated a package that several small or embedded system developers are finding useful; busybox, which combines tiny versions of many common UNIX utilities into a single small executable. This package fixes a Common Vulnerability and Exposure. CVE-2022-30065 did not properly sanitize while processing a crafted awk pattern, leading to possible code execution. The package also had various other fixes and enabled SHA hardware acceleration. GNOME’s virtual file system gvfs updated to version 1.50.3 and fixes hangs when a connection is released. It also prevent automounts from resuming after a suspension, and the package update adds support for xx-large and x-large thumbnails. Notification about unprepared critical updates were stopped in the gnome-software 43.3 update. GNOME’s evolution 3.46.3 fixed a few memory leaks and some bugs; like a crash when RSS is reading a feed with an empty author, or like duplicating of attachments when forwarding personal information management application. The image processing package GraphicsMagick updated to version 1.3.39 and added new features like support reading AV1 Image File Format via libheif if it supports the decoding of AVIF. Members of the project and its principal maintainer are asking for volunteers to help maintain the 26-year-old package. An update of php8 8.1.14 took care of CVE-2022-31631, which occurred due to an uncaught integer overflow that made it possible to force the function to return a single apostrophe if the function is called on user-supplied input without any length restrictions in place. The package fixed several bugs including two failures related to OpenSSL. Along with yast2-installation and yast2-trans several other packages updated in the snapshot.
A total of two packages updated in the 20230109 snapshot. One of the packages, hidapi, updated for version 0.13.0. The library for communicating with USB and Bluetooth devices added a Meson build script and added support for devices over the Serial Peripheral Interface, which is an interface specification used for short-distance communication primarily with embedded systems. The other package to update was libmfx 22.6.5. The Intel Media SDK dispatcher library package added security reporting information.
Three packages were updated in snapshot 20230108. The updates included libstorage-ng 4.5.62 receiving updated Macedonian translations using Weblate. A major version python-cryptography dropped support for LibreSSL below version 3.5. The 39.0.0 cryptographic package also removed support for OpenSSL 1.1.0. The tool that generates smaller dumpfiles from kdump memory dumps was the last package to update. This 1.7.2 makedumpfile added support for the Linux Kernel update to version 6.0 that is specific to x86_64.
The 44.1 major version of gedit arrived in snapshot 20230107. The general-purpose text editor had some code refactorings, updated translations and makes more use of Tepl features related to GtkSourceView-based. KDE Gear 22.12.1 had tons of fixes. Kdenlive has a new camera proxy for the Akaso action camera. The video editing package fixed a couple crashes like one where the app kept dropping an effect with a scene and a zoom that was behaving incorrectly. An update of KMail fixed a bug where opening a progress window did nothing and a fix for Kontact crashing upon startup. The kitinerary added support for international tickets with Italy’s primary train operator Trenitialia. Several other KDE Gear packages were updated in the snapshot. An update of systemd 252.4 added several patches and fixed CVE-2022-4415, which was a security flaw that could cause a local-information leak due to systemd-coredump not respecting a kernel setting. A CVE-2022-46908 patch was dropped and SQL functions removed related to its harmful side-effects with the update of sqlite3 3.40.1; the script did not properly implement the azProhibitedFunctions protection mechanism. The sqlite package also fixed a potential infinite loop in alternative memory. A crash that might occur when managing browser history was fixed with Mozilla Firefox 108.0.2 update. There were several other packages updated in the snapshot including firewalld 1.3.0, btrfsprogs 6.1.2, zypper 1.14.59 and more.
Chess players using GNOME will have a keyboard shortcut fix with gnome-chess 43.1, which arrived in snapshot 20230106. The screen reader for those with no or limited sight will benefit from the Orca 43.1 update. There were many bug fixes with the speech and refreshable braille package, which included several issues related to preferring the TableCell interface and a fix for repetition of text elements during Orca’s Say All command for web content. Bugfix release KDE Plasma 5.26.5 fixed the initialization order with KSignalHandler in the kscreenlocker package. There was a fix for connecting to WPA3-personal networks in the plasma-nm update. The KDE update also brought many fixes for the Window Manager and Wayland Compositor KWin. One of those requires a reboot after changing a primary selection option. There was an update of fetchmail 6.4.35 that now warns about OpenSSL with version before 1.1.1s or 3.0.7, and the update rejects wolfSSL older than version 5.5.0. It also updated Swedish and Esperanto translations. The super-thin layer on the DBus interface fwupd added many new features in the 1.8.9 update. It added SHA384 support for Trusted Platform Module hashes and categories like X-FingerprintReader, X-GraphicsTablet, X-Dock and X-UsbDock. The kernel received it’s first update of the week in this snapshot from last Friday.
Wayland is So Close | Back on X11
Some thoughts on linking to code
I have been updating the text layout roadmap for
librsvg, and part of this involves describing how some of the current
code works — for example, how a <text> element gets broken up into a
tree of Chunk and Span structures.
Notice how those links go to the generated documentation for the
library's internals. In the HTML, rustdoc adds "source" links that
in turn take you to the actual source code for that item.
Aside: Chunk has documentation, but Span doesn't; I haven't gotten
around to writing it yet. Linking to the documentation for the
library's internals helps me see what things are undocumented yet.
Maybe a struct Point { x: f64, y: f64 } doesn't need much
documetation, but something more complicated like Span definitely does!
Another way of linking to these items would be to link to the actual
source for Chunk and Span. Those links
go to the HTML version of the source code in GitLab, for a specific
commit.
For example, the link to Chunk is
https://gitlab.gnome.org/GNOME/librsvg/-/blob/4cd62ad9/src/text.rs#L48-66
and it breaks down like this:
-
gitlab.gnome.org- the server, obviously -
GNOME- group name -
librsvg- project name -
blob/4cd62ad9- prefix of the git commit id -
src/text.rs#L48-66- the file in the librsvg source tree, plus a fragment identifier so that GitLab will highlight a range of source lines.
Obtaining that link takes a bit of work:
-
Go to the project page. Navigate down to the file you want. (Tip: hit
tand start typing the filename; you'll get an autocompletion list.) -
If you are in the wrong branch, change it at the top of the page. Note that the URL is something like
.../blob/main/src/my_file.txt -
Click on the Permalink button near the top of the page. This changes the URL to the actual latest commit id, i.e.
blob/123abc/src/... -
Go to the lines to which you want to link. Click on the first line's number, Shift-click on the second line's number. This changes the URL to a range of lines, with a fragment identifier like
#L12-34.
I generally do that when writing descriptions that refer to source lines in specific revisions. Of course, if the code changes, the description may need updating if it's a "permanent" document — but at least there are hopefully never broken links, or links to source code that no longer matches the description.
The first method — linking to the documentation for the library's internals — has the advantage of being actual documentation, with a link to the source code as a bonus. I would probably prefer it if rustdoc generated links to GitLab's display of sources, instead of generating its own embedded copy of the source code, but it's not a big deal.
The second method, linking to specific revisions in GitLab's source view, is perhaps more direct when you want the reader to see the source code immediately, but it's not as easy to navigate. The reader has to read the source and there is no way in GitLab to easily jump to symbol definitions, for example, or to find the implementations for a struct's methods. The generated rustdoc has all that.
Finally, in real-time conversation, I may just link to the blob/main
URLs for whatever the latest revision is at the time. I expect my
interlocutor to look at the link basically immediately, or really soon
after our conversation, so it will show the same context as I was
thinking about.
I suppose each method has its place:
-
Link to the generated documentation for the source code — Friendly to the reader if they need more context; good for high-level exploration. Links can go out of date if you rename symbols (we don't store generated docs for each revision).
-
Link to
blob/123abcor a specific revision — unambiguous, good for descriptions of code at a specific point in time, and the reader can easily cut&paste that commit id to thegitcommand line or other tooling. -
Link to
blob/mainor the latest revision in some branch — easy to do; only takes the GitLab dance to find the line numbers. Good for casual conversation. May remain current for a long time in "permanent" documentation if you are describing code very generally and that code doesn't change a lot.
JSAUX Advanced Dock and Protective Shell for the SteamDeck | Review
Linux Saloon in 2023
Syslog-ng 101, part 4: Configuration and testing
This is the fourth part of my syslog-ng tutorial. I hope that since the previous part of my tutorial, you successfully installed syslog-ng. In this part we will finally work with syslog-ng, not just learn about the theoretical background. We will do basic configuration and testing.
You can watch the video on YouTube:
Or you can read the rest the tutorial as a blog at: https://www.syslog-ng.com/community/b/blog/posts/syslog-ng-101-part-4-configuration-and-testing

syslog-ng logo
openSUSE Conference Call for Papers is Open
The call for papers for openSUSE Conference 2023 is open!
The openSUSE Conference 2023 is scheduled to take place May 26 to May 28. The call for papers will close on April 9, which leaves 89 days to submit a talk.
The conference already has two sponsors with Fedora and SUSE. Companies interested in sponsoring the event can view sponsorship information on the project’s wiki page.
Presentations can be submitted for the following length of time:
- Lightning Talk (10 mins)
- Short Talk (30 mins)
- Virtual Talk (30 mins)
- Long Talk (45 mins)
- Workshop (1 hour)
- Virtual Workshop (1 hour)
The following tracks are listed for the conference:
- Cloud and Containers
- Community
- Embedded Systems and Edge Computing
- New Technologies
- Open Source
- openSUSE
The conference already has two sponsors with Fedora and SUSE. Companies interested in sponsoring the event can view the sponsorship prospectus on the project’s wiki page.
Volunteers who would like to help the Program Committee and/or the Organizing Team can email ddemaio@opensuse.org or attend normally scheduled community meetings. Check the notes for details.
The music festival Rock im Park will take place a week after the conference. Attendees for the conference are encouraged to book their hotel as soon as possible. Most Rock im Park visitors do not come the week earlier, but booking a hotel in advance is always recommended.