<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mio</id>
	<title>Alpine Linux - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mio"/>
	<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/wiki/Special:Contributions/Mio"/>
	<updated>2026-05-06T08:53:45Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.alpinelinux.org/w/index.php?title=Release_Notes_for_Alpine_3.21.0&amp;diff=28084</id>
		<title>Release Notes for Alpine 3.21.0</title>
		<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/w/index.php?title=Release_Notes_for_Alpine_3.21.0&amp;diff=28084"/>
		<updated>2024-12-04T21:37:59Z</updated>

		<summary type="html">&lt;p&gt;Mio: Rephrase /usr merge section to clarify user actions for split filesystem setups, rephrase for tone in the Gogs section, minor changes for typos&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;As always, make sure to read [[Upgrading Alpine to a new major release]] when upgrading to a new release.&lt;br /&gt;
&lt;br /&gt;
If you experience any issues with the upgrade, please let us know and file an issue in our repositories.&lt;br /&gt;
&lt;br /&gt;
== Important changes ==&lt;br /&gt;
&lt;br /&gt;
=== OpenSSH service requires restart ===&lt;br /&gt;
&lt;br /&gt;
From the &amp;lt;code&amp;gt;9.8_p1&amp;lt;/code&amp;gt; release, and on, of {{pkg|openssh}}, {{pkg|openssh-server}} is split into two binaries (&amp;lt;code&amp;gt;/usr/lib/ssh/sshd-session&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/usr/sbin/sshd&amp;lt;/code&amp;gt;). Due to this change, it will not be possible to &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt; into a system that has upgraded from a release prior to &amp;lt;code&amp;gt;9.8_p1&amp;lt;/code&amp;gt; to this release or later, without restarting the &amp;lt;code&amp;gt;sshd&amp;lt;/code&amp;gt; service.&lt;br /&gt;
&lt;br /&gt;
We have previously brought attention to this - https://alpinelinux.org/posts/2024-07-02-openssh-upgrade-edge.html&lt;br /&gt;
&lt;br /&gt;
Managing services has always been out-of-scope for {{pkg|apk-tools}}, but this one time we will &#039;&#039;&#039;make an exception&#039;&#039;&#039; when the following conditions are met:&lt;br /&gt;
# You have both the {{pkg|openssh-server}} and {{pkg|openssh-server-common-openrc}} packages installed at a version lower than &amp;lt;code&amp;gt;9.8_p1&amp;lt;/code&amp;gt;&lt;br /&gt;
# The &amp;lt;code&amp;gt;sshd&amp;lt;/code&amp;gt; service is started&lt;br /&gt;
&lt;br /&gt;
We will then, post {{pkg|openssh-server}} upgrade, have a &amp;lt;code&amp;gt;post-upgrade&amp;lt;/code&amp;gt; script that will:&lt;br /&gt;
# Print a message on what is about to happen and why&lt;br /&gt;
# Restart the &amp;lt;code&amp;gt;sshd&amp;lt;/code&amp;gt; service&lt;br /&gt;
# If the command to restart the service fails for any reason, a warning message will be printed and an error code returned to &amp;lt;code&amp;gt;apk&amp;lt;/code&amp;gt;, to be noticed by the end of the package upgrades (this will not interrupt the upgrade process).&lt;br /&gt;
&lt;br /&gt;
We have decided to do this in order to help keep you from getting locked out of your system(s) and be able to fix any issues with the upgrade.&lt;br /&gt;
&lt;br /&gt;
See also:&lt;br /&gt;
* https://bugzilla.mindrot.org/show_bug.cgi?id=3706&lt;br /&gt;
* https://git.alpinelinux.org/aports/commit/?id=6adff08ae09961d4eea66b55a8cca14d3941fb53&lt;br /&gt;
&lt;br /&gt;
=== New loongarch64 architecture ===&lt;br /&gt;
&lt;br /&gt;
Alpine 3.21 is the first release which is available for &amp;lt;code&amp;gt;loongarch64&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Thanks to the support of the team of Loongson dedicated to supporting Alpine Linux and many other contributors.&lt;br /&gt;
&lt;br /&gt;
=== Preparations for /usr-merge ===&lt;br /&gt;
&lt;br /&gt;
Plans for /usr-merge are underway and we should be able to finalize it in Alpine Linux, version 3.22.&lt;br /&gt;
&lt;br /&gt;
Much preparation has gone into this release to ensure that the merge happens as smoothly as possible. That included moving the location of some binaries and many libraries from &amp;lt;code&amp;gt;/bin&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/sbin&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;/lib&amp;lt;/code&amp;gt; to their counterparts in &amp;lt;code&amp;gt;/usr&amp;lt;/code&amp;gt;. As part of the merge, &amp;lt;code&amp;gt;/usr&amp;lt;/code&amp;gt; will be mounted from the initramfs to make sure everybody has all necessary binaries in place.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Users with installations where &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/usr&amp;lt;/code&amp;gt; are on separate filesystems (partitions, volumes, disk drives or other) should proceed with care and report any issues.&#039;&#039;&#039; They should also ensure that an entry &amp;lt;code&amp;gt;/usr&amp;lt;/code&amp;gt; is added to &amp;lt;code&amp;gt;/etc/fstab&amp;lt;/code&amp;gt; before upgrading. New/fresh installations of v3.21 will work out of the box without modification.&lt;br /&gt;
&lt;br /&gt;
There are some remaining fixes and improvements being worked on. If you have one of the setups with separate filesystems described above and want to help with further testing, you can open an [https://gitlab.alpinelinux.org/alpine/aports/-/issues/new issue] and ping &amp;lt;code&amp;gt;@pabloyoyoista&amp;lt;/code&amp;gt;. We will also publish a blog post soon with further information on the timeline and progress of the merge, as well as how the changes may affect users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Significant changes ==&lt;br /&gt;
&lt;br /&gt;
=== Jellyfin ===&lt;br /&gt;
&lt;br /&gt;
Jellyfin now uses the recommended fork of ffmpeg called {{pkg|jellyfin-ffmpeg}} by default. If you want to change the default, take a look at the &amp;lt;code&amp;gt;ffmpegpath&amp;lt;/code&amp;gt; variable in &amp;lt;code&amp;gt;/etc/conf.d/jellyfin&amp;lt;/code&amp;gt;. ({{MR|69924}})&lt;br /&gt;
&lt;br /&gt;
Jellyfin was disabled for ARM architectures (&amp;lt;code&amp;gt;aarch64&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;armv7&amp;lt;/code&amp;gt;) and is only available for &amp;lt;code&amp;gt;x86_64&amp;lt;/code&amp;gt;. ({{Issue|16613}})&lt;br /&gt;
&lt;br /&gt;
=== Bats ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;main/bats&amp;lt;/code&amp;gt; was renamed to &amp;lt;code&amp;gt;main/bats-core&amp;lt;/code&amp;gt;. There is now a meta package &amp;lt;code&amp;gt;community/bats&amp;lt;/code&amp;gt; which contains:&lt;br /&gt;
&lt;br /&gt;
* {{pkg|bats-core}}&lt;br /&gt;
* {{pkg|bats-file}}&lt;br /&gt;
* {{pkg|bats-support}}&lt;br /&gt;
* {{pkg|bats-assert}}&lt;br /&gt;
&lt;br /&gt;
=== Xen 4.19 ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;qemu-traditional&#039;&#039; and &#039;&#039;stubdom&#039;&#039; are removed from the build in this release, see https://git.alpinelinux.org/aports/commit/?id=24217a24da3924039b000eb17c04bf3f01bf1f12&lt;br /&gt;
&lt;br /&gt;
There is still the {{pkg|xen-qemu}} package, but the regular {{pkg|qemu}} aport [https://git.alpinelinux.org/aports/commit/?id=a9249e2e0de827e88d84c01f9731aeebd248be13 is now built with Xen support], so a {{pkg|qemu-system-*}} package can be used instead.&lt;br /&gt;
&lt;br /&gt;
You can choose to use it in your &#039;&#039;xl.cfg(1)&#039;&#039; like so:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
device_model_override = &amp;quot;/usr/bin/qemu-system-x86_64&amp;quot;&lt;br /&gt;
device_model_version = &amp;quot;qemu-xen&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== uutils-coreutils ===&lt;br /&gt;
&lt;br /&gt;
{{pkg|uutils-coreutils}} is repackaged as a sub-package to {{pkg|uutils}} in such a way as to be a drop-in replacement for GNU {{pkg|coreutils}}.&lt;br /&gt;
&lt;br /&gt;
If you have both {{pkg|uutils-coreutils}} and {{pkg|coreutils}} installed, the latter will be &#039;&#039;&#039;purged&#039;&#039;&#039; and its symlinks replaced with ones pointing to the &amp;lt;code&amp;gt;/usr/bin/uutils&amp;lt;/code&amp;gt; binary. The &amp;lt;code&amp;gt;/usr/bin/uutils-*&amp;lt;/code&amp;gt; symlinks, previously provided by {{pkg|uutils-coreutils}}, no longer exist.&lt;br /&gt;
&lt;br /&gt;
If you prefer to use GNU {{pkg|coreutils}}, remove the {{pkg|uutils-coreutils}} package before upgrading, and then add the {{pkg|uutils}} package, containing the &amp;lt;code&amp;gt;/usr/bin/uutils&amp;lt;/code&amp;gt; binary.&lt;br /&gt;
&lt;br /&gt;
A few parts of the {{pkg|uutils}} aport are also split into {{pkg|uutils-*}} subpackages, to avoid conflicts or other issues.&lt;br /&gt;
&lt;br /&gt;
=== linux-firmware ===&lt;br /&gt;
&lt;br /&gt;
{{pkg|linux-firmware}} is now compressed with ZSTD compression. If you run a custom built Linux kernel, you need to ensure that &amp;lt;code&amp;gt;CONFIG_FW_LOADER_COMPRESS_ZSTD=y&amp;lt;/code&amp;gt; is set in your configuration.&lt;br /&gt;
&lt;br /&gt;
== Note-worthy updates ==&lt;br /&gt;
&lt;br /&gt;
As always, a lot of packages were upgraded. Make sure to read the indivdual release notes of the projects you use.&lt;br /&gt;
&lt;br /&gt;
* Linux 6.12&lt;br /&gt;
* busybox 1.37&lt;br /&gt;
* GCC 14.2&lt;br /&gt;
* LLVM 19&lt;br /&gt;
* Go 1.23&lt;br /&gt;
* Rust 1.83&lt;br /&gt;
* PHP 8.4&lt;br /&gt;
* GNOME 47&lt;br /&gt;
* KDE Plasma 6.2&lt;br /&gt;
* LXQt 2.1&lt;br /&gt;
* Qt 6.8&lt;br /&gt;
* wlroots 18&lt;br /&gt;
&lt;br /&gt;
=== GCC 14 ===&lt;br /&gt;
&lt;br /&gt;
The Gnu Compiler Collection was upgraded to 14.2.0 and as a result, all packages built with {{pkg|gcc}} in Alpine 3.21 are compiled with GCC 14.2.0.&lt;br /&gt;
&lt;br /&gt;
Make sure to read all changes: https://gcc.gnu.org/gcc-14/changes.html&lt;br /&gt;
&lt;br /&gt;
=== LXQt 2.1 ===&lt;br /&gt;
&lt;br /&gt;
LXQt has been updated to release 2.1.0 &lt;br /&gt;
* It now uses Qt6&lt;br /&gt;
* Many parts of LXQt are now Wayland ready¹, but Wayland ports of the following are pending: {{pkg|screengrab}}, {{pkg|lxqt-globalkeys}}, and keyboard indicator, some input settings, as well as settings for  monitor, power button, and screen locker.&lt;br /&gt;
* LXQt Panel has a new default application menu called Fancy Menu.&lt;br /&gt;
¹ [https://github.com/lxqt/lxqt-wayland-session lxqt-wayland-session] has not been packaged yet, but most folks wanting to test on Wayland will want to use it.&lt;br /&gt;
&lt;br /&gt;
=== Linux 6.12 ===&lt;br /&gt;
&lt;br /&gt;
Alpine 3.21.0 ships Linux 6.12.1 in the {{pkg|linux-lts}} package.&lt;br /&gt;
&lt;br /&gt;
Please note that {{pkg|linux-headers}} is still on 6.6, because the kernel was released after we kicked off our rebuilds and we coudn&#039;t ensure that the upgrade doesn&#039;t break other packages. (More about the linux-headers 6.12 upgrade: {{MR|75618}})&lt;br /&gt;
&lt;br /&gt;
=== PostgreSQL 17 ===&lt;br /&gt;
&lt;br /&gt;
This release features {{pkg|postgresql17}}. We dropped support for {{pkg|postgresql14}}, and moved {{pkg|postgreSQL15}} from main to community.&lt;br /&gt;
&lt;br /&gt;
=== LLVM 19 ===&lt;br /&gt;
&lt;br /&gt;
We packaged LLVM 19 in our repositories. A total of 5 LLVM versions are supported: {{pkg|llvm19}}, {{pkg|llvm18}}, {{pkg|llvm17}}, {{pkg|llvm16}}, {{pkg|llvm15}}.&lt;br /&gt;
&lt;br /&gt;
== Significant removals ==&lt;br /&gt;
&lt;br /&gt;
=== Disabled packages due to FTBS ===&lt;br /&gt;
&lt;br /&gt;
The following packages are temporarily disabled because they failed to build. We will try to restore them as soon as possible.&lt;br /&gt;
&lt;br /&gt;
* {{pkg|hplip}} ({{Issue|16685}})&lt;br /&gt;
* {{pkg|imageflow}} ({{Issue|16679}})&lt;br /&gt;
* {{pkg|kdevelop}} ({{MR|75839}})&lt;br /&gt;
* {{pkg|postgresql-citus}} ({{Issue|16580}})&lt;br /&gt;
* {{pkg|uvicorn}} ({{Issue|16646}})&lt;br /&gt;
* {{pkg|vulkan-validation-layers}} ({{Issue|16686}})&lt;br /&gt;
&lt;br /&gt;
=== ISC DHCP ===&lt;br /&gt;
&lt;br /&gt;
If you are still running an ISC DHCP server, you are advised to migrate to a maintained alternative &#039;&#039;&#039;before&#039;&#039;&#039; upgrading to the 3.21 release.&lt;br /&gt;
&lt;br /&gt;
ISC DHCP has been EoL since 2022. They have a guide for migrating to {{pkg|kea}} here: https://www.isc.org/dhcp_migration/&lt;br /&gt;
&lt;br /&gt;
Up to, and including, the 3.20 version of Alpine, the {{pkg|dhcp|branch=v3.20}} aport has the subpackage {{pkg|keama|branch=v3.20}} that is a tool for helping with migration from ISC DHCP configuration to ISC Kea configuration.&lt;br /&gt;
&lt;br /&gt;
Alternative DHCP servers packaged in Alpine include:&lt;br /&gt;
* {{pkg|kea}}&lt;br /&gt;
* {{pkg|freeradius-dhcp}}&lt;br /&gt;
* {{pkg|dnsmasq}}&lt;br /&gt;
* udhcpd - packaged in {{pkg|busybox-extras}}&lt;br /&gt;
&lt;br /&gt;
=== Gogs ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;gogs&amp;lt;/code&amp;gt; was removed due to multiple high-severity vulnerabilities for which issues have remained open for a year. The developers of Gogs were contacted multiple times by the Forgejo team but unfortunately received no response. Therefore we have removed Gogs from our repositories. ({{MR|75304}})&lt;br /&gt;
&lt;br /&gt;
Please consider migrating to {{pkg|forgejo|branch=edge|arch=}} or {{pkg|gitea|branch=edge|arch=}}. Both forks are available in our community repo.&lt;br /&gt;
&lt;br /&gt;
The Gitea fork of Gogs was created in 2016 by contributors who were frustrated with the single-maintainer management model of Gogs. Forgejo is a fork of Gitea which was created as a result of the for-profit company Gitea Ltd taking over maintainership (see also https://forgejo.org/compare-to-gitea/).&lt;br /&gt;
&lt;br /&gt;
=== neofetch ===&lt;br /&gt;
&lt;br /&gt;
The upstream repository was archived in April and became unmaintained, therefore we have removed it from our repositories. {{pkg|fastfetch}} provides similar functionality.&lt;/div&gt;</summary>
		<author><name>Mio</name></author>
	</entry>
</feed>