Fri, May 17th, 2024
openSUSE Tumbleweed – Review of the weeks 2024/19 & 20
Dear Tumbleweed users and hackers,
Last week, there was a public holiday on Thursday in some parts of the world (Ascension Day). Unsurprisingly, many devs, including myself and Ana, took Friday off to enjoy a longer weekend (and I can tell you: the weather was fantastic). As a result, I have to span two weeks of changes to Tumbleweed here once again. We have published 12 snapshots since my last review (0502…0515, snapshots 0504 and 0513 were not built due to weekends)
The most relevant changes delivered as part of those snapshots were:
- Mozilla Firefox 125.0.3
- LibreOffice 24.2.3.2
- GNOME 46.1
- GIMP 2.10.38
- LLVM 18.1.5
- GCC 14.1
- KDE Frameworks 6.2.0
- PHP 8.3.7
- PostgreSQL 16.3
- Systemd 255.5 & 255.6
- Linux kernel 6.8.9 (with linux-glibc-devel already prepared at 6.9)
- Ruby 3.3.1
- QEmu 8.2.3
- util-linux 2.40.1
Snapshot 0515 contained an openssh update, that mistakenly recommended installation of the subpackage openssh-server-config-rootlogin; this package has existed since the default configuration of openSSH was changed to not permit root login anymore, so admins could easily switch it back on. Due to an error, this had been triggered for automatic installation. This has since been corrected and a version of openssh-server was published to the update channel, which is NOT recommended. Please check your installation and remove the package again, should it be installed and you don’t need it (we can’t auto-remove it without breaking users that explicitly wanted it)
The following things are known to be worked on at the moment and are reaching you in some upcoming snapshot:
- chkstat package being renamed to permctl
- Rust 1.78
- Mesa 24.0.7
- Linux kernel 6.9.1
- Ninja 1.12
- dbus-broker: some networking issue after upgrades left to work out
- GCC 14: phase 2: use gcc14 as the default compiler – lots of help needed: https://build.opensuse.org/project/show/openSUSE:Factory:Staging:Gcc7
Announcing Agama 8
The YaST Team is back with more news about Agama. On our previous post we exposed the first two steps of our roadmap for 2024: a more powerful user interface for the storage setup and a new Cockpit-free architecture with a better API for external callers. Now we are proud to announce Agama 8, delivering initial versions of both features.
The Great Architectural Change
As explained at the mentioned blog post and detailed at this Github discussion, we got powerful reasons to rethink Agama’s architecture, getting rid of Cockpit and switching from D-Bus to HTTP as main communication protocol between the different Agama components.
The changes are useful to integrate Agama into bigger solutions and are obviously beneficial for remote or unattended installations. But turns out they also improved dramatically Agama’s start-up time and general speed. Some parts, like the ones related to storage setup, still rely internally on components of the previous architecture and have not benefited yet from the speedup. But you can expect improvements in the mid term.
You may miss some features compared to previous releases of Agama, like the integrated terminal or the management of DASD and zFCP devices. We sacrified those features in favor of the “release early, release often” motto. But all the important features will be reintroduced on the following months.
A More Powerful User Interface to Setup Storage
The removal of the mentioned features may not be the most exciting news about Agama’s user-facing functionality, but we have something to offer in exchange. A new interface to configure the storage setup that, although is still a bit rough around the edges, makes it possible to squeeze all the juice from the traditional YaST storage proposal (also known as the YaST Guided Setup).
The new interface aims to be understandable to newcomers. But, since we know (open)SUSE users have big expectations in terms of customizing their setups, it offers many possibilities in order to specify where to place every new partition or LVM logical volume, including the possibility to mount previous file systems or format existing devices. The new interface also makes it possible to configure several aspects regarding booting and encryption and to select which partitions should be resized or deleted.
Other Changes
But the storage screen is not the only part of Agama that got some love for this release. The YaST team worked on some areas like:
- A new interface for selecting the software patterns, more aligned with the rest of Agama.
- Better guidance for configuring TPM-based full disk encryption.
- A mostly rewritten network stack.
- Visual and usability fixes on several widgets.
Even more important, we also got several improvements contributed by volunteer developers out of the regular YaST Team at SUSE. On the one hand, Nagender Rao improved the form to edit a file system. On the other hand, Balsa Asanovic continues growing his already impressive contribution to Agama with better visualization of the installation issues and enhancements in the interface to create a user.
See it in Action
We couldn’t be more grateful to Balsa, Nagender and all other supporters out there, like the translators that make it possible to use Agama in more than 10 languages. Of course, coding or translating is not the only way to contribute to the project. You can also test Agama 8 and give us feedback. Moreover, that is the best way to get a glimpse of all the possibilities regarding the new interface to configure the storage setup and all the other changes mentioned above.
The easiest way to get your hands on Agama 8 is to download one of the Agama Live ISO testing images and boot it on a virtual or bare-metal machine. Bear in mind this is one of the most experimental pre-releases of Agama ever, since we wanted it to be tested at as many scenarios as possible after the big architectural change. Do not hesitate to report any misbehavior that is still not tracked.
See You Soon
We are already working on Agama 9, that should be released in one month from now. The focus will be on improving the support for unattended installations and the compatibility with AutoYaST. We also expect to acomplish a rather significative reorganization of the web interface and to bring back some of the features that were left behind in the switch to the new architehocture.
If everything goes as expected, that’s the version you will see in action at the two sessions the
YaST Team will hold at openSUSE Conference 2024.
If you will not be there or simply don’t want to wait, you can always reach us at the YaST
Development mailing list,
our #yast
channel at Libera.chat or the Agama project at
GitHub.
Have a lot of fun!
Wed, May 15th, 2024
Experimental syslog-ng packages for Amazon Linux 2023
Last year, I received many requests about syslog-ng for Amazon Linux 2023, but I could not find an easy way to create syslog-ng packages. Recently, however, I found that Fedora Copr supports building packages for Amazon Linux 2023. So, with a little bit of experimentation, I got a cut down version of syslog-ng compiled.
Read more at https://www.syslog-ng.com/community/b/blog/posts/experimental-syslog-ng-packages-for-amazon-linux-2023
Tue, May 14th, 2024
Copr: build your Fedora / RHEL packages for POWER
I’m often asked, how can I be an IBM Champion for POWER, if I do not own an IBM POWER server or workstation. Yes, life would definitely be easier if I had one. However, I have an over 30 years history with POWER, and there are some fantastic resources available to developers for free. Both help me to stay an active member of the IBM POWER open source community.
Last time I introduced you to the openSUSE Build Service. This time I show you Copr, the Fedora build service.
Copr
Just like OBS, Fedora Copr also started out as a (relatively) simple service to build Fedora and CentOS packages for x86. As Copr is a project by Fedora, the public instance maintained by Fedora at https://copr.fedorainfracloud.org/ only allows you to build open source software. However, you can also install Copr yourself on your own infrastructure. The source code of Copr is available at https://copr.fedorainfracloud.org/, where you can also find links to the documentation.
Today you can use Copr to build packages not just for Fedora x86, but almost all RPM distributions, including openSUSE and OpenMandriva. In addition to x86, you can build packages for 64 bit ARM (aarch64), IBM mainframes (s390x), and IBM POWER 64 bit, little Endian (ppc64le).
You can access Copr using its web interface. There is also a command-line utility, but it was very limited when I last checked. Enabling support for POWER in your project is easy: just select the POWER architecture versions of distributions when you setup the project. You can enable support for POWER also later, but Copr does not automatically build packages for the new architecture. TL;DR: enable support for POWER before building any packages to make your life easier.
How do I use Copr?
Just as with the openSUSE Build Service, my first use of Copr was to make up-to-date syslog-ng packages available to the community. Along the way I used Copr to build some syslog-ng dependencies not yet available in Fedora or RHEL. Some of these are already part of the official distributions.
I did not have a chance yet to benchmark syslog-ng on POWER10, however in the POWER9 era POWER was the best platform to run syslog-ng. I measured syslog-ng collecting over 3 million log messages a second on a POWER9 box when x86 servers could barely go above the 1 million mark.
When I make the latest syslog-ng versions available, I build my EPEL (Extra Packages for Enterprise Linux) packages not just for x86, but also for POWER. I do not know how accurate Copr download statistics are, but for some syslog-ng releases it shows that almost a fourth of all downloads were for POWER syslog-ng packages: https://copr.fedorainfracloud.org/coprs/czanik/syslog-ng44/.
Why Copr?
If your primary focus is to build packages for the Red Hat family of operating systems, Copr provides you with the widest range of possibilities. You can regularly test if your software still compiles on Fedora Rawhide, while providing your users with packages for all the Fedora and RHEL releases. Best of all: even if you do not have a POWER server to work on, you can serve your users with packages built for POWER.
OpenVINO Arrives in openSUSE Releases
While focused on the openSUSE Innovator initiative as an openSUSE member and Intel Innovator, it was frustrating for me to see that openVINO did not have support on the openSUSE Linux distribution.
In October 2023, I decided to take the personal initiative to start working on compiling and using OpenVINO from the source code for the openSUSE platform. I humbly contributed and published the first adaptations for our distribution on GitHub.
My motivation for this effort stemmed from the potential of OpenVINO to democratize the use of artificial intelligence for those who do not have the resources to invest in expensive GPUs. This library provides multicore programming and the acceleration registers of Intel processors, as well as the resources of ARM processors, allowing the use of AI on processors from the 6th generation onwards.
With the emergence of technologies such as VPU, NPU, and AMX, it is now possible to run LLMs and generative AI without the need for a dedicated GPU. Therefore, I started working on the RPM packaging for openSUSE. This work would not have been successful without the support and assistance of Ilya Lavrenov from Intel and Atri Bhattacharya on the openSUSE Build Service. They not only shared their knowledge with me but also collaborated to ensure compatibility between Intel and openSUSE’s technical policies.
As a result of all this collaborative effort, openSUSE became the first Linux distribution to offer [OpenVINO in its native repository, compiled from the source code. It is a great source of pride to have contributed to this project, which will undoubtedly make a difference in future endeavors. As members of an open-source community, it is our duty to strive to democratize emerging technologies and reduce digital exclusion in society.
For more information, visit here or get it at software.opensuse.org!
Thu, May 9th, 2024
The syslog-ng Insider 2024-05: documentation; grouping-by(); PAM Essentials; health
The May syslog-ng newsletter is now on-line:
- The official syslog-ng OSE documentation got a new look
The syslog-ng Administration Guide received a new look and easier navigation. Not only that, but it is also up-to-date now. Besides, there are now contributor guides available both for the documentation and for syslog-ng developers.
The admin guide is available at: https://syslog-ng.github.io/admin-guide/README
You can reach all syslog-ng OSE-related documentation at: https://syslog-ng.github.io/
If you find any issues, pull requests and problem reports are welcome. The contributor guide describes how you can fix / extend the documentation. You can report issues at: https://github.com/syslog-ng/syslog-ng.github.io/issues
- Aggregating messages in syslog-ng using grouping-by()
- Alerting on One Identity Cloud PAM Essentials logs using syslog-ng
- The syslog-ng health check
It is available at https://www.syslog-ng.com/community/b/blog/posts/the-syslog-ng-insider-2024-05-documentation-grouping-by-pam-essentials-health
Planned outage of Weblate on May 14th
The openSUSE will undergo a critical update with the migration of Weblate to a hosted solution.
Shifting to a hosted solution for the web-based localization tool in order to keep up with the increasing demands of projects’ development.
The migration is slated for May 14 and it is anticipated that the service will be down for approximately one day.
This is a planned short-term inconvenience for a long-term benefit and will allow for our translation contributors to pick up right where they left off.
People wanting to contribute to the openSUSE Project by helping to translate using Weblate can register on https://l10n.opensuse.org and connect with other translators through translation@lists.opensuse.org and project@lists.opensuse.org mailing lists.
Any attempt to connect to Weblate during the migration will trigger a notification informing the user of the ongoing maintenance. Others will be informed of the outage through https://status.opensuse.org.
Tue, May 7th, 2024
How to install SLE-15-SP6 on NVIDIA Jetson platform (Jetson AGX Orin/IGX Orin)
This covers the installation of updated Kernel, out-of-tree nvidia kernel modules package, how to get GNOME desktop running and installation/run of glmark2 benchmark. Also it describes how to get some CUDA and TensorRT samples running.
SP6
Download SLE-15-SP6 (Arm) installation image. This you can put on a regular USB stick or on an SD card using dd
command. Go into BIOS and change SOC Display Hand-Off Mode
settings, i.e. Device Manager -> NVIDIA Configuration -> Boot Configuration -> SOC Display Hand-Off Mode
, to Never
.
Boot from the USB stick/SD card, that you wrote above and install SP6. You need to install via serial console, since the monitor won’t get any signal without the out-of-tree nvidia kernel modules, which are installed later in the process.
Make sure you select the following modules during installation:
- Basesystem
- Containers
- Desktop Applications
- Development Tools
- Python 3
- Server Applications
Select SLES with GNOME
for installation.
Kernel + KMP drivers
Continue installation with serial console.
Now update kernel and install our KMP (kernel module package) for all nvidia kernel modules.
We plan to make the KMP available as a driver kit via the SolidDriver Program. For now please install an updated kernel and the KMP after checking the build status (rebuilding can take a few hours!) from our open buildservice:
Reboot with the updated kernel.
In Mokmanager (Perform MOK management
) select Continue boot
. Although Secureboot is enabled by default in BIOS it seems it hasn’t been implemented yet (BIOS from 04/04/2024). Select first entry SLES 15-SP6
for booting.
Userspace/Desktop
Unfortunately installing the userspace is a non-trivial task.
Installation
Download Jetpack 6 Driver Package (BSP) from this location. Extract jetson_linux_r36.3.0_aarch64.tbz2
.
Then you need to convert debian packages from this content into tarballs.
From the generated tarballs you only need these:
And from this tarball nvidia-l4t-init_36.3.0-20240404104251_arm64.tbz2
you only need these files:
So first let’s repackage nvidia-l4t-init_36.3.0-20240404104251_arm64.tbz2
:
Then extract the generated tarballs to your system.
Then you still need to move
to
and add /usr/lib/aarch64-linux-gnu
to /etc/ld.so.conf.d/nvidia-tegra.conf
.
Run ldconfig
Video group for regular users
A regular user needs to be added to the group video
to be able to log in to the GNOME desktop as regular user. This can be achieved by using YaST, usermod or editing /etc/group
manually.
Reboot the machine
Basic testing
First basic testing will be running nvidia-smi
.
Graphical desktop (GNOME) should work as well. Unfortunately Linux console is not available. Use either a serial console or a ssh connection if you don’t want to use the graphical desktop or need remote access to the system.
glmark2
Install phoronix-test-suite
Run phoronix-test-suite
CUDA/Tensorflow
Containers
NVIDIA provides containers available for Jetson that include SDKs such as CUDA. More details here. These containers are Ubuntu based, but can be used from SLE as well. You need to install the NVIDIA container runtime for this. Detailed information here.
1. Install podman and nvidia-container-runtime
2. Download the CUDA samples
3. Start X
Monitor should now show a Moiree pattern with an unframed xterm on it. Otherwise check /tmp/log.
4. Download and run the JetPack6 container
CUDA
5. Build and run the samples in the container
Tensorrt
6. Build and run Tensorrt in the container
This is both with the GPU and DLA (deep-learning accelerator).
Misc
Performance
You can improve the performance by giving the clock a boost. For best performance you can run jetson_clocks
to set the device to max clock settings
The 1st and 3rd command just prints the clock settings.
Mon, May 6th, 2024
openSUSE Asia Summit Set for Tokyo
openSUSE.Asia Summit will come back to Tokyo, Japan
The openSUSE Project is exciting to announce that openSUSE.Asia Summit 2024 is going to be held in Tokyo, Japan. The openSUSE.Asia Summit is an annual conference for users and contributors of openSUSE and FLOSS enthusiasts. During this summit, they will gather in person to share knowledge and experiences about openSUSE including applications running on it.
The venue of the summit will be located in Tokyo, the capital of Japan, blending tradition and cutting-edge technology. Its infrastructure and global connectivity make it a primal location for promoting collaboration among openSUSE users and developers. Moreover, Tokyo is a center of information technology; Many technology companies have their offices in Tokyo, with numerous engineers residing in the surrounding areas.
Tokyo is also a popular place for sightseeing with its unique culture, food, etc. Especially, characters from video games, anime, and comics, which are now common in the world, attract tourists to Japan. In Tokyo, you can easily find character shops and get items related to works you love.
The number of tourists from abroad has recovered last year to the same level as before COVID-19. Due to the currency exchange rate, it will be a great chance to enjoy your trip to Japan while saving your money. Even though you may have attended the last summit in Tokyo, you will discover new facets, developed before the TOKYO 2020 Summer Olympics.
Please see also:
The expected summit date is Nov. 2 and 3 soon after Open Source Summit Japan. Our call for speakers is going to end around the end of July. For more details including the venue, please stay tuned until the next announcement in a couple of weeks.
Fri, May 3rd, 2024
openSUSE Tumbleweed – Review of the weeks 2024/17 & 18
Dear Tumbleweed users and hackers,
Last week, I was attending the SUSE Labs Conference last week and had to skip writing the weekly review. As many SUSE devs were there too, the expectation was to get fewer changes anyway during week 17. Consequently, I am spanning two weeks again today and will be covering the nine snapshots (0419, 0421, 0423, 0425…0430) released during this period.
The most relevant changes delivered were:
- Linux kernel 6.8.7 & 6.8.8
- SETools 4.5.0
- libxml 2.12.6
- LLVM 18.1.4
- Python 3.11.9 & 3.12.3
- Mesa 24.0.5
- Mozilla Firefox 125.0.2
- SQLite 3.45.3
Having some engineers together at the Labs Conference also allowed them to directly exchange ideas and work on some of the things in staging. Simon and I have worked on dbus-broker and made some good progress, but we have not yet reached the end goal. Similarly for other things in the staging areas. The most interesting changes being prepared are:
- Mozilla Firefox 125.0.3
- LibreOffice 24.2.3.2
- QEmu 8.2.3
- GNOME 46.1
- Ninja 1.12.0
- util-linux 2.40
- Ruby 3.3.1
- dbus-broker: some networking issue after upgrades left to work out
- GCC 14: phase 2: use gcc14 as the default compiler – lots of help needed: https://build.opensuse.org/project/show/openSUSE:Factory:Staging:Gcc7