Arch Planet

Planet Arch Linux is a window into the world, work and lives of Arch Linux developers, package maintainers and support staff.

RSS Feed

mkinitcpio hook migration and early microcode


With the release of mkinitcpio v38, several hooks previously provided by Arch packages have been moved to the mkinitcpio upstream project. The hooks are: systemd, udev, encrypt, sd-encrypt, lvm2 and mdadm_udev. To ensure no breakage of users' setup occurs, temporary conflicts have been introduced into the respective packages to prevent installing packages that are no longer compatible. The following packages needs to be upgraded together:
  • mkinitcpio 38-2
  • systemd 255.4-2
  • lvm2 2.03.23-3
  • mdadm 4.3-2
  • cryptsetup 2.7.0-3
Please note that the mkinitcpio flag --microcode, and the microcode option in the preset files, has been deprecated in favour of a new microcode hook. This also allows you to drop the microcode initrd lines from your boot configuration as they are now packed together with the main initramfs image.

Uninterupted desktop streaming vs. NetworkManager


For maybe more than a year (maybe two) I’ve been struggling with getting desktop streaming from Linux desktop client to a Windows or Linux host system working flawlessly. I mean without interruptions in video frame speed (60fps) or audio drop-outs.

My FOSDEM 2024 Experience


Sharing my experience after giving a talk at FOSDEM 2024!



Arch Linux in January 2024 # Staff # We would like to welcome Vladimir LAVALLADE (Erus Iluvatar) to their new role as ArchWiki Administrator. Infrastructure # The DevOps team has recently provisioned a new EPYC 9454P build server for Arch Linux packaging. This high-performance server is meant to streamline the packaging process, ensuring more efficient building of resource hungry package builds. mkinitcpio # mkinitcpio v37.2 and v37.3 have been released.

GNOME battery charge control


As someone who has to use a laptop for work, I keep my laptop plugged in 8 hours or more a day, 7 days a week. The laptop's battery during these days would discharge and charge, slowly degrading the battery because only the last ~ 20% would be charged and discharged …

Why stdout is faster than stderr?


I recently realized stdout is much faster than stderr for Rust. Here are my findings after diving deep into this rabbit hole.

Making dbus-broker our default D-Bus daemon


We are making dbus-broker our default implementation of D-Bus, for improved performance, reliability and integration with systemd. For the foreseeable future we will still support the use of dbus-daemon, the previous implementation. Pacman will ask you whether to install dbus-broker-units or dbus-daemon-units. We recommend picking the default. For a more detailed rationale, please see our RFC 25.

Plans and ideas for 2024


A follow-up to my reflections on 2023, my plans and ideas for 2024.

Stream to chromecast with resolved, vlc and bash


Chromecast is one of those devices I just generally use a lot. They are small practical and enables me to stream video or music to my TV from multiple devices. But it also requires you to have a supported browser or video player. This is obviously a bit boring. There has been multiple command line chromecast streamers through the years. But their ffmpeg usage has been shoddy at best with no hardware decoding support and usually quite bad implementations.



Arch Linux in December 2023 # Staff # We would like to welcome Jakub Klinkovský (lahwaacz) as part of the Arch Linux Package Maintainer team. User meetup # During the 37th Chaos Communication Congress (37C3), we hosted a user meetup. At this event, we presented our latest achievements and developments. Additionally, we held an open Q&A session to engage and connect with our community. dbscripts # We performed a thorough cleanup of the codebase, removing all legacy SVN functionality that is no longer necessary.

Reflecting on my 2023


I figured I’d write a post about this last year, maybe to crystalize thoughts I’ve been having, and to help figure some things out for the times ahead.

Linux Firejail: Securely Throw Untrusted Applications Behind Bars


Sandboxing or Containerization are always considered the ultimate weapons for high Privacy and Security threat models. The most renowned privacy and security tools like Whonix, Qubes OS, Tail and Docker are focused on Sandboxing one way or another. What they actually do is effectively isolating various components of applications like network interfaces and file system to prevent unwanted connections. To get started, let's delve into how Firejail operates and then explore how seamlessly you can incorporate it into your security toolkit. What is Sandboxing? Sandboxing is a security mechanism for running programs and processes inside an isolated environment with limited …

Bugtracker migration to GitLab completed


We are happy to announce that the migration of the bugtracker to GitLab is done! 🥳 Thanks to everyone who has helped during the migration! This means the issue tracker and merge requests on the GitLab package repos are now enabled. The old bugtracker will subsequently be closed down. For archiving reasons there will be a static copy so that links (for example the randomly picked Task #56716) are still stable, migrated bugs have a closing comment pointing to the new URL on GitLab. Packaging bugs are now opened on the repo hosting the corresponding packaging sources, the "Add a new Bug" button on the package page on will automatically direct you to the correct place to open the issue. The workflow afterwards is mostly the same, first our Bug Wranglers will have a look at the issues and triage them, and then they will be handed over to the respective Package Maintainers to fix. A list of all issues can be found here. If you do not have an account for GitLab already (which authenticates against our SSO service), please write us a mail with your desired username to as advised in the banner.



Arch Linux in November 2023 # Arch Summit 2023 # The Arch Summit took place in Hamburg, Germany, on November 4th and 5th, bringing together Arch Linux staff and invited guests. The summit provided an opportunity for the staff to connect, socialize, and delve into discussions regarding various aspects of our distro. A range of topics were explored including but not limited to infrastructure and mirror management, rebuilders for packages, signing enclave, mkinitcpio, packaging tooling improvements, and community building.



Arch Linux in October 2023 # Staff # We would like to welcome Christian Heusel (gromit) to the Arch Linux DevOps team, expanding his responsibilities. bugbuddy # The initial version of Bugbuddy, our GitLab bug bot, has been introduced. This tool assigns package maintainers to confirmed GitLab issues in the packaging group. Notably, the code has undergone substantial improvement, now operating as a daemon process that can promptly respond to GitLab webhook calls.

Operating System Bias in Next Generation Internet and NLnet


In Grants for Operating Systems I discussed my journey through the grant application writing business since beginning of last year. To keep things light and somewhat focused, I left out a topic, that I would like to write about in more detail in the following sections. It's about selection bias in grants provided by Next Generation Internet (NGI), that can be applied for directly or through NLnet. Read more… (11 min remaining to read)

Grants for Operating Systems


Over the past years I have written (unsuccessful) funding applications for free software projects, associated with the Arch Linux Operating System. This article is about my experiences with applying for numerous funds and my advice for people trying to get their work funded. TL;DR: Writing funding applications is extremely tedious and the selection process mostly intransparent and discouraging. Depending on what you apply for and who you apply with, you may never get funding due to other, additional factors. Read more… (8 min remaining to read)

Incoming changes in JDK / JRE 21 packages may require manual intervention


We are introducing a change in JDK/JRE packages of our distro. This is triggered from the way a JRE is build in modern versions of Java (>9). We are introducing this change in Java 21. To sum it up instead of having JDK and JRE packages coexist in the same system we will be making them conflict. The JDK variant package includes the runtime environment to execute Java applications so if one needs compilation and runtime of Java they need only the JDK package in the future. If, on the other hand, they need just runtime of Java then JRE (or jre-headless) will work. This will (potentially) require a manual user action during upgrade:
  • If you have both JDK and JRE installed you can manually install the JDK with pacman -Syu jdk-openjdk and this removes the JRE related packages.
  • If you have both JRE and JRE-headless you will need to choose one of them and install it manually since they would conflict each other now.
  • If you only have one of the JDK/JRE/JRE-headless pacman should resolve dependencies normally and no action is needed.
At the moment this is only valid for the upcoming JDK 21 release.

Fully Automated Releases for Rust Projects


Here is how you can publish a Rust project with a single click of a button and automate everything.



Arch Linux in September 2023 # Staff # We would like to welcome Fabian Bornschein (fabiscafe) as part of the Arch Linux Package Maintainer team. Bug weekend # During the 1st to 3rd of September, we conducted a bug weekend with the aim of resolving old bugs and implementing proposed solutions. This effort not only reduced the backlog but also contributed to streamlining the upcoming bug tracker migration, resulting in the resolution of approximately 200 bugs.

Store ssh keys inside the TPM: ssh-tpm-agent


After writing age-plugin-tpm a friend of mine at the hackerspace was super excited to finally have easy file encryption with TPM sealed keys, all without having to rely on gnupg. “This is great!” he said. “I wish I could have my SSH keys sealed in a TPM just as easily”. We should have left it at that. I shouldn’t have replied with a random assortment of facts like “I know google/go-tpm now”, or “but Go has a ssh-agent protocol implementation” followed-up with “Filippo has already implemented yubikey-agent, it can’t be that hard”.

Changes to default password hashing algorithm and umask settings


With shadow >= 4.14.0, Arch Linux's default password hashing algorithm changed from SHA512 to yescrypt. Furthermore, the umask settings are now configured in /etc/login.defs instead of /etc/profile. This should not require any manual intervention. Reasons for Yescrypt The password-based key derivation function (KDF) and password hashing scheme yescrypt has been chosen due to its adoption (readily available in libxcrypt, which is used by pam) and its stronger resilience towards password cracking attempts over SHA512. Although the winner of the Password Hashing Competition has been argon2, this algorithm is not yet available in libxcrypt …



Arch Linux in August 2023 # Staff # We would like to welcome Tomaz Canabrava (tcanabrava) as part of the Arch Linux Package Maintainer team. AURWeb # In AURWeb v6.2.7, we primarily focused on bug fixes while revamping Prometheus metrics. We introduced new measures like request tracking and cache-hit/miss ratios for search queries, enhancing our ability to make development decisions and aiding the AUR moderation team in identifying trends.

Phosh now available on Arch Linux


Having a full Linux mobile or tablet device has always interested me, to have an alternative to Android and use Arch Linux everywhere. Realistically I won't be able to give up Android on my phone, but what about tablet's? Phosh was developed to be a graphical user interface for mobile …

Weechat With SSH Tunneling


In the past, I have used Weechat with Weechat and IRC relays. Since, I have switched to ChromeOS, I disabled the IRC relay, because I switched to the Weechat Android App on ChromeOS. Nevertheless, I was never 100% happy with the Weechat relay. The relay usually works via a shared password and access to this relay is equal to SSH access. Hence, I have decided to switch to SSH tunneling. With SSH tunneling, I am able to use SSH keys for authentication.