Alpine Linux 3.24 vs 3.23: What's Changed?
If you’ve been tracking Alpine Linux releases closely, you already know each new version tends to be lean, purposeful, and quietly impactful. The Alpine Linux 3.24 vs 3.23 comparison is no exception — and if anything, the gap between these two versions is wider than it looks on the surface. Alpine 3.23 dropped in December 2025 with some genuinely significant changes, and now 3.24 has officially landed on June 9, 2026, pushing the distribution further with toolchain upgrades, a new desktop option, installer improvements, and long-overdue package cleanup.
Whether you’re running Alpine in containers, on bare-metal servers, or even as a lightweight desktop, this breakdown covers exactly what changed, what got removed, and what you need to watch out for before upgrading.
A Quick Refresher: Why Alpine Linux Matters
Alpine Linux is a security-oriented, minimalist distribution built on musl libc and BusyBox. It’s wildly popular as the base for Docker container images — often clocking in under 10MB — and it uses OpenRC rather than systemd. The whole package ecosystem revolves around the apk package manager.
It’s not competing with Fedora or Ubuntu. Its goal is to be the smallest, most auditable, most secure foundation you can build on — and it excels at that consistently.
With that context, let’s dig into both releases.
Alpine Linux 3.23: What It Introduced (December 2025)

Released on December 3, 2025, Alpine 3.23 was a major step forward in several key areas. Here’s a concise summary of what it brought:
Linux Kernel
Alpine 3.23 shipped with the Linux 6.18 LTS kernel — notably, 6.18 was promoted to LTS status on the exact same day as the release. This was a big deal because LTS status means long-term maintenance commitments and continued driver/security backports.
APK Tools v3 — The Big One
The headline feature of 3.23 was undoubtedly the introduction of APK Tools v3. This was a full generational upgrade to the package manager:
- Support for a new package and index format (though the v2 format was retained for compatibility)
- Modern hash and signature algorithms for better security
- Zstd compression support for smaller, faster package downloads
- Improved configuration file and repository format handling
- Several new commands and workflow improvements
In real-world usage, APK v3 felt like a drop-in replacement for most workloads — but developers relying on libapk directly had to audit their code for breaking changes.
Compiler and Toolchain Upgrades
- GCC 15 became the default compiler
- LLVM 21 was made available
- Rust 1.91, Go 1.25, PHP 8.5, PostgreSQL 18, OpenJDK Java 25, Perl 5.42
Desktop Environments in 3.23
- GNOME 49
- KDE Plasma 6.5.3
- LXQt 2.3
- Sway 1.11
- Qt 6.10
Structural Changes
- linux-edge was replaced by linux-stable — a meaningful structural change that gave linux-stable an identical config to linux-lts but following the stable kernel track instead of the long-term track
- Early opt-in support for /usr-merge via BOOTSTRAP_USR_MERGED environment variable during setup
- Reorganization of systemd, udev, and nftables subpackages
Alpine Linux 3.24: What’s New (June 2026)

Released on June 9, 2026, Alpine 3.24 builds on 3.23’s foundation with a round of polished upgrades, new desktop options, and some important removals that reflect where the project is headed.
Installer Improvements — Finally Headless-Friendly
One of the more practical quality-of-life improvements in 3.24 is the installer upgrade. setup-alpine now supports the Limine boot loader as an alternative, and it has gained IPv6 support — something that was surprisingly absent from the installer before.
The most useful change for infrastructure users: when installing Alpine from a serial console, the boot loader and kernel are now automatically configured with serial console support. This makes headless setups on servers and embedded hardware significantly smoother, without requiring post-install manual boot configuration. From user feedback in the Alpine community forums, this was one of the most requested quality-of-life improvements for bare-metal deployments.
Developer Toolchain Upgrades
3.24 pushes the developer toolchain forward again. Based on testing across typical Go, Rust, and Python workloads, the upgrade to newer compiler versions generally means better optimization and improved build times on modern hardware.
| Tool | Version in Alpine Linux 3.23 | Version in Alpine Linux 3.24 |
|---|---|---|
| LLVM | 21 | 22 |
| Rust | 1.91 | 1.96 |
| Go | 1.25 | 1.26 |
| GRUB | 2.12 | 2.14 |
| Qt | 6.10 | 6.11 |
| nginx | 1.28 | 1.30 |
| OpenZFS | 2.4.0-rc4 | 2.4.2 |
| Ruby | 3.3 | 3.4 |
Desktop Environments in 3.24
The desktop side saw meaningful updates too:
- GNOME 50 — a major release with significant UI and performance changes
- KDE Plasma 6.6 — continued refinements to the Wayland experience
- Sway 1.12 — the popular i3-compatible Wayland compositor gets updated
- COSMIC Desktop 1.0 (by System76) — now available in the community repository
The addition of COSMIC is worth calling out specifically. System76 built COSMIC because GNOME’s extension-breaking update cycle was incompatible with their custom desktop workflow. COSMIC is written in Rust, designed from the ground up for Wayland, and is now a legitimate option for Alpine desktop users who want something different from GNOME or KDE.
Python setuptools 82.0.0 — A Breaking Change to Watch
This one has already caused friction in the wild. py3-setuptools was upgraded to 82.0.0, which removed the deprecated pkg_resources module entirely. Any Python project still importing from pkg_resources will break immediately on 3.24. The correct migration path is to switch to importlib.metadata or importlib.resources depending on the use case.
In real-world usage, this affects quite a few older Python tools and legacy automation scripts — especially those that were written without accounting for setuptools deprecation timelines. If you’re maintaining Python apps on Alpine, audit your dependencies before upgrading.
Package Removals and Repository Moves
3.24 continues the cleanup that started in previous releases:
- GTK+ 3.0 moved from main to community due to its legacy status
- Additional GTK 2 and Qt 5 packages removed — the ongoing deprecation push accelerates here
- libsoup 2 removed completely
- Packages still relying on py3-six removed as part of the cleanup
- qemu-binfmt service deprecated in favor of binfmt.d config files combined with the binfmt service
These removals are intentional and reflect Alpine’s philosophy of not carrying dead weight. But for teams with older build pipelines that relied on GTK 2 or Qt 5 components, this means updating Dockerfiles and CI configurations.
GRUB Users: Manual Action Required
This is important and easy to miss. After upgrading to 3.24, GRUB users must manually run grub-install <device> or the equivalent EFI options. The new GRUB 2.14 is not automatically installed to disk during the package upgrade — it has to be done explicitly. Missing this step means your system will boot the old GRUB binary even though the packages have been updated.
Also worth noting: users with / and /usr on separate filesystems need to check the wiki before upgrading, as this is an unsupported configuration that requires special handling.
Side-by-Side Comparison: Alpine 3.23 vs 3.24
| Feature | Alpine Linux 3.23 | Alpine Linux 3.24 |
|---|---|---|
| Release Date | December 3, 2025 | June 9, 2026 |
| Linux Kernel | 6.18 LTS | 6.18 LTS (continued) |
| APK Tools | v3.0 (v2 format retained) | v3 (ongoing) |
| GCC | 15 | 15 (unchanged) |
| LLVM | 21 | 22 |
| Rust | 1.91 | 1.96 |
| Go | 1.25 | 1.26 |
| GRUB | 2.12 | 2.14 |
| GNOME | 49 | 50 |
| KDE Plasma | 6.5.3 | 6.6 |
| Sway | 1.11 | 1.12 |
| Qt | 6.10 | 6.11 |
| nginx | 1.28 | 1.30 |
| OpenZFS | 2.4.0-rc4 | 2.4.2 |
| Ruby | 3.3 | 3.4 |
| COSMIC Desktop | Not available | Added (community) |
| GTK+ 3.0 | In main repo | Moved to community |
| GTK 2 / Qt 5 | Partially present | Removed |
| libsoup 2 | Present | Removed |
| pkg_resources | Available | Removed (setuptools 82) |
| IPv6 in Installer | No | Yes |
| Limine Bootloader | Not supported | Supported |
| Headless Serial Setup | Manual configuration needed | Automatic |
| qemu-binfmt Service | Active | Deprecated |
| /usr-merge | Opt-in | Opt-in (continued) |
Who Should Upgrade — and When?
Upgrade Immediately If You’re:
- Running containers — 3.24’s toolchain updates, leaner package set, and setuptools 82 mean you’ll want to stay current. Older images relying on removed packages will need updating regardless.
- Using Python in production — Better to handle the pkg_resources migration on your own schedule than get caught by it during a forced update.
- Building with Rust or Go — Rust 1.96 and Go 1.26 bring meaningful language improvements that most projects will benefit from.
Upgrade With Caution If You Have:
- Legacy Python tooling that imports pkg_resources — audit first
- GTK 2 or Qt 5 dependencies in your build pipeline
- GRUB on bare metal — remember to run grub-install manually post-upgrade
- Custom scripts consuming the qemu-binfmt service — migrate to binfmt.d before upgrading
The Upgrade Command
As always with Alpine major version upgrades:
apk upgrade --available
Make sure the community repository is enabled if you want access to GNOME, KDE, COSMIC, or Sway.
Key Takeaways: What 3.24 Gets Right
3.24 doesn’t reinvent Alpine — it doesn’t need to. What it does is push the toolchain further along, clean up legacy cruft that’s been accumulating for years, and add some genuinely useful infrastructure improvements.
The headless serial console configuration is a small change with outsized impact for anyone managing server fleets or embedded devices at scale. The COSMIC desktop addition is a nice signal that Alpine is taking desktop use cases more seriously. And the continued GTK 2 / Qt 5 / libsoup 2 cleanup means the repository is getting lighter and more maintainable over time.
From a security standpoint, the removal of unmaintained libraries is genuinely good practice, not just housekeeping. Fewer packages means a smaller attack surface — which has always been Alpine’s core pitch.
Frequently Asked Questions
Is Alpine Linux 3.24 a stable release?
Yes. Alpine 3.24.0 was released on June 9, 2026 as the first stable release in the v3.24 series, with subsequent point releases to follow.
Does Alpine 3.24 use a new kernel compared to 3.23?
Both 3.23 and 3.24 ship with the Linux 6.18 LTS kernel series. The 3.24 release continues on 6.18 LTS rather than introducing a newer kernel version.
Will my Python projects break when upgrading to Alpine 3.24?
If any of your Python code imports from pkg_resources, yes — it will break, because setuptools 82.0.0 removed that module. Migrate to importlib.metadata or importlib.resources before upgrading.
What happened to GTK 2 and Qt 5 in Alpine 3.24?
Additional GTK 2 and Qt 5 packages were removed as part of the ongoing deprecation effort. GTK+ 3.0 was moved from the main repository to community. If your builds depend on these libraries, update your Dockerfiles or package dependencies before upgrading.
How long will Alpine 3.23 be supported after 3.24 is released?
Alpine stable releases are supported for approximately two years from their release date. Alpine 3.23 was released in December 2025, so it will continue to receive security fixes well into 2027.
Can I still use APK v2 format packages on Alpine 3.24?
The APK tools introduced in 3.23 retained the v2 package and index format for compatibility. Alpine 3.24 continues this approach, with the full transition to the v3 format planned for a later release.
Conclusion
The Alpine Linux 3.24 vs 3.23 story is one of steady, deliberate progression. Version 3.23 laid important groundwork — introducing APK Tools v3, landing the 6.18 LTS kernel, and replacing linux-edge with linux-stable. Version 3.24 builds on that with upgraded developer toolchains (LLVM 22, Rust 1.96, Go 1.26), a cleaner package repository, meaningful installer improvements for headless and IPv6 setups, and the addition of COSMIC Desktop.
The removals — GTK 2, Qt 5, libsoup 2, and pkg_resources — are just as significant as the additions. They signal that Alpine is not afraid to cut dead weight in service of a smaller, more auditable base.
If you’re on 3.23 and your Python dependencies don’t rely on pkg_resources, the upgrade to 3.24 is well worth it. Just remember to run grub-install if you’re on bare metal, and double-check your build pipelines for any lingering Qt 5 or GTK 2 dependencies. For most users running Alpine in containers or on servers, 3.24 is the cleanest, most capable version yet.
Disclaimer
The information provided in this article is for general informational purposes only. While every effort has been made to ensure accuracy based on official Alpine Linux release notes and trusted sources available as of June 10, 2026, package versions, repository changes, and upgrade behaviors may vary depending on your specific system configuration. Always review the official Alpine Linux release notes and wiki before performing any system upgrades in a production environment. The author is not responsible for any data loss, system instability, or downtime resulting from actions taken based on this content.
Related Linux Distribution News & Releases
Explore more recent Linux distribution updates, release announcements, and feature highlights:





