News

Latest 10 recent news (see index)


March 20, 2025

Not dropping RISC-V support after all (maybe)

As circumstances have changed, we are not dropping RISC-V repos for the time being. Instead, newly rebuilt repositories are introduced, built on hardware, with tests.

This support is provisional for now, with the new builder still being evaluated to see how it holds up in the long term.

The situation now

Shortly after announcing the drop, we were offered remote access to a Milk-V Pioneer machine by Zach van Rijn of Adélie Linux. This machine was originally intended for another purpose which never ended up materializing.

I proceeded to do a full world rebuild on this machine, after some environment setup to allow our infra bits to run. This world rebuild is now finished, and makes up the new repository.

For most part, it was relatively stable during the build (we had to build our own kernel to prevent the draft RVV 0.7 in the CPU from interfering, and there were two crashes but it was also under total continuous load the whole time).

The performance is fairly acceptable, though nowhere near my original idea of being similar to Cortex-A72; the cores are more comparable to Cortex-A55 in practical performance, especially since we have to disable vectors. As there is still 64 of them, most of the large projects build fairly fast (anything written in Rust builds very slowly, however).

By now, the original repositories have been replaced, and the new machine is plugged into the infrastructure. Do keep this in mind when upgrading existing installations, and use the --available flag with apk (every package in your system will be reinstalled).

Either way, we will continue to monitor the builds and see how the new machine holds up. If it works well, it will stay; if significant issues arise, we might end up dropping the architecture after all, at least until something significantly better is available.

The current repository is in the same tier as the LoongArch64 repo. The specifics are very similar - i.e. no LTO, tests on and enforced. The overall coverage is also fairly equivalent.


March 12, 2025

Dropping RISC-V support

UPDATE March 20 2025: The architecture is not being dropped for now after all. See the newer article for details.

The next set of images will drop RISC-V support. The builder is currently still going but within the next few days it will stop, and the repositories will stay in place but frozen.

Nothing will change in packaging (the build profile will remain, template support where present will remain, cross-toolchains will remain) but there will be no more updates to the repo for the foreseeable future.

The situation

The initial plumbing for RISC-V was added in the distro in July 2021 and repos later in the year, i.e. it has been there almost from the start. During all this time, the builds have been supported by doing so on an x86_64 machine with qemu-user binfmt emulation coupled with transparent cbuild support for this.

The reason for doing it this way was that there wasn’t any hardware we could use for performance reasons; I had obtained a SiFive HiFive Unmatched board in October 2021 and this proved to be useless for builds as the performance of this board is similar to Raspberry Pi 3. Other boards came later, but none of them improved on that front significantly enough.

This was expected to be a temporary state that would resolve itself within 2-3 year time; it is Q1 2025, and the options are the following:

The promising option (Milk-V Oasis with 16 SiFive P670 cores) that was first announced in 2023 ultimately ended up being canned due to issues the SoC vendor has, and nobody has ever seen a single production chip, let alone a board. As far as I can tell, no other options are coming up.

It is unsustainable to stick with the current situation with the emulator. Doing so has numerous problems:

At this point, to have a relatively sustainable base, we’d need a board that is at least as powerful as Raspberry Pi 5. This would still make the slowest builder in the fleet, but it would likely be faster than the current emulation arrangement while also being more reliable.

However, the industry does not seem to be interested in producing such machines and for most part focuses on embedded (low-end) as well as things entirely irrelevant to a distro (AI/NPU etc.) that do not help at all; at this point I don’t think we can wait any longer, especially as no remedy has been announced.

We have no such problem with the other architectures; obviously x86 and ARM are at this point mainstream and this does not surprise anyone, but even the likes of LoongArch have perfectly acceptable hardware (not the fastest, but also not a bottleneck) that performs reliably.

Will RISC-V support be reintroduced?

If acceptable build hardware is released and is reasonably available to us, the architecture will be reintroduced.

If that happens, the repositories will be rebuilt from scratch, as if a new architecture, with a process similar to how it was recently done with LoongArch64. It will be a tier-2 architecture with enforced tests and without LTO just like LoongArch64.

However, whether or when that will happen is currently a big unknown due to such hardware not existing and nothing being even announced.

Nothing will change in the other architecture support. The new tier list will be:

There is also some chance of ARMv7 and ARMv6 32-bit repositories being introduced in the next few months’ timeframe, as we may be moving to an oversized Ampere Altra machine for all ARM builds (right now AArch64 is served by a Hetzner Cloud VM and can’t take any more load). This is yet not set in stone, however.


February 14, 2025

New images

The 20250214 set of images is now published.

This took longer than originally expected but there have been major changes that warranted waiting a bit longer for it.

Changes

The images come with a fresh version of apk-tools. This version finally supports several features that we began using, particularly variable expansion and being able to migrate most of its files into a system-wide /usr location.

That means you finally have a way to properly change your mirror of choice without having to mess with the repository definitions. The process of doing that is in the relevant documentation section.

The repository definitions have been updated to use the new v3-style index naming, though backwards compatibility is also provided.

Kernel 6.13 is used in the new images. That means updated hardware support and other things.

Both the GNOME and Plasma images (the latter is still experimental) come with the latest versions of their respective desktop environments.

Various fixes have been made to allow the live system to work better and more seamlessly on more machines.

Additionally, 32-bit PowerPC images are now a standard release architecture and included in the batch. We have some plans to also introduce support for the LoongArch64 ISA, which may join them next time.

Due to all of these changes as well as updates in the infrastructure, this new set is the recommended baseline for installation. Older images have an out of date package manager and installation scripts, which may be problematic with the current layout.


December 27, 2024

Entering beta

Today we have updated apk-tools to an rc tag. With this, the project is now entering beta phase, after around a year and a half.

What actually changes?

In general, this does not actually mean much, as the project is rolling release and updates will simply keep coming. It is more of an acknowledgement of current status, though new images will be released in the coming days.

Changes since alpha

At the point of entering alpha, the cports tree had roughly 1000 templates, most of them in main. There was a single large desktop (GNOME) and a single major web browser (Firefox) and an assortment of other software.

At this point, the tree contains ~2800 templates, i.e. almost 3x more. We have all major desktop environments, all major browsers, and overall much larger collection of both small and large programs.

The repo was also at ~6000 commits at the time, by 11 authors; now it’s almost 20000 commits, by over 100 authors.

Significant under-the-hood improvements have been made in service management, our build infrastructure, the cbuild build system which is now significantly more powerful and has much better UX, global switch to the mimalloc allocator, stateless /var and progress towards stateless /etc, improvements in core userland, introduction of libdinitctl, introduction of sd-tools, and a lot more.

Infrastructure situation and sponsorship

Currently, we support 5 architectures (aarch64, ppc64le, ppc64, riscv64, x86_64), 3 being tier-1 (aarch64, ppc64le, x86_64).

This list will likely remain stable in 2025. The infrastructure is self-funded and we control all of it. Besides the unsatisfactory RISC-V situation, all of the machines are sufficient.

It would be nice to introduce CI for more architectures during next year, particularly AArch64.

Chimera is a FOSS project and therefore does not and will not take donations, and is driven by its community. However, for the past half a year, I (q66) have been working on the project through my employment at Igalia, thanks to a contract with Rubicon Communications, LLC (aka Netgate). This collaboration will continue during 2025 and is a significant help and a boost for the project’s progress, as it lets me dedicate much more time.

Therefore, huge thanks to Netgate for giving me this opportunity.

Plans for 2025

During 2025, some notable things will be coming too:

And likely much more than that. On the infrastructure side, we plan to automate more things, and introduce better build hardware for the RISC-V architecture if possible, as right now it is a major bottleneck.

Upcoming images

A new image set will be released before end of the year to match this announcement. They will come with various fixes and a new version of apk-tools.


December 04, 2024

New images and welcoming new committers

As of 04 December 2024 new images have been published.

While there weren’t originally supposed to be any more images before reaching the beta phase, a new apk feature proved to be necessary.

Other than that, it’s an incremental refresh with software updates.

New committers

We have two new committers, Jami Kettunen (deathmist) and Isaac Freund (ifreund). Both have been a part of our community for a long time and are active contributors; congratulations :)

Unfortunately, another of our contributors, nekopsykose, has left the project recently. We thank her for being a part of the community and all of the work over the years and wish her the best.

Changes

The apk-tools package manager has been updated again, ahead of implementing a new kernel backup system. New static binaries, new OCI images, and other things have also been updated to use this new version of apk.

That means this image set is now the minimum that can be used to perform new installations, unless you update apk-tools in the live environment beforehand.

Various software has been updated. Linux kernel 6.12 is now the default, most notably.

The ISOs now have a bootable partition in the protective MBR. That means compatibility with certain x86 BIOS machines should be better.

Upcoming changes

This is likely the last update before entering the beta phase, for real this time.


October 27, 2024

New images

As of 27 October 2024 new images have been published.

These are an incremental refresh with new software, as well as new image types. They bring various minor changes.

Changes

The most notable change is a major update of apk-tools. From now on, we will start requiring changes that were made to it, so using older images to install is no longer supported.

Experimentally, KDE Plasma ISO images are now available alongside the GNOME images. The GNOME images are based on GNOME 47, while the KDE images use Plasma 6.2.

Additionally, the ISO images now use EROFS for its root file system instead of SquashFS. This brings increased compatibility and increased performance while in the live environment, in exchange for a minor increase in image size.

Last but not least, the “force console” GRUB options are now gone in the graphical ISOs, but the functionality is not. Adding nogui to kernel command line in GRUB’s editor will achieve the same.

Upcoming changes

This is likely the last update before entering the beta phase.


July 12, 2024

Welcoming a new committer

Since @triallax has been doing a bunch of excellent work in addition to being a great community member, we have decided to grow the cports committers list a bit.

Additionally, @nekopsykose is now a project owner, so it’s no longer just @q66.

Congrats to both :)


July 07, 2024

New images

As of 07 July 2024 new images have been published.

These are an incremental refresh with new software. They bring various minor changes.

Changes

The biggest visible change is that core and minimal rootfs tarballs are no longer distributed; you are expected to use either the full or bootstrap tarballs. Any regular installation is expected to use the base-full metapackage at very least (unwanted components can be removed by masking them in the apk world file).

The images are still based on GNOME 46 and kernel 6.6, but with all latest updates pulled in.

Otherwise, the images represent 3 months of software updates in cports, which are reflected here.

Upcoming changes

Before the beta release, there will be at least one more image refresh. The beta release is expected most likely during the fall this year.


April 21, 2024

New images

As of 21 April 2024 new images have been published.

These are mainly an incremental refresh. They bring a variety of package updates and minor quality of life improvements, and most importantly updated apk-tools.

Changes

The graphical images are based on GNOME 46 and Linux kernel 6.6, alongside a variety of up to date software, such as the LLVM 18 toolchain.

The apk package manager in this set fully supports the zstd compression. The distribution will start rolling out packages compressed with zstd in the coming days (no world rebuild will happen yet but newly built packages will be compressed with it).

The installer scripts had minor changes done in them, some of them user-visible. Notably, chimera-chroot will now alter the prompt to be less confusing, and it makes bind-mounted pseudo-filesystems properly unmountable.

The ISOs are newly based on GRUB 2.12. If this causes any regressions, please report them. All the ISO images were tested on their respective architectures without any issues found.

The MNT Reform images have been dropped. The packaging of the bootloader was unsatisfactory (done from binary builds) and there haven’t been any opportunities to figure out a proper source build. Additionally, the vendor now seems to be favoring newer SOMs by default. If you are interested in maintaining support for this or any other hardware, please reach out to us on one of the official channels.

Upcoming changes

There will be at least one more refresh before beta. Beta will likely come with a world rebuild, which means zstd for all packages.


January 22, 2024

2024 image refresh

The images have been refreshed yet again.

Most importantly these bring the 6.6 LTS kernel, an upgrade from the 6.1 series (except Raspberry Pi images, which have their own kernel) alongside minor user experience improvements.

Changes

We have upgraded the LTS kernel series from 6.1 to 6.6. Meanwhile, the installable “stable” kernel is now at 6.7.x.

Raspberry Pi images had their firmware updated, so wireless networking and Bluetooth should work equally well on 3, 4, and 5.

The apk package manager got a fix which likely resolves the issue when some directories were very rarely created with 000 permissions. This is not yet verified however, as the issue was not reproducible and therefore it is not possible to verify it.

Minor user experience improvements include support for fstab LABEL= and the likes for swap devices, support for timedated/localed/hostnamed D-Bus services (mainly benefits GNOME) thanks to the openrc-settingsd project from Gentoo/postmarketOS, various package updates, more atomic apk transactions thanks to deployment of sysusers.d and tmpfiles.d, chimerautils fixes (e.g. stdbuf command now works properly), the lsinitramfs and unmkinitramfs commands have been fixed, the cryptsetup initramfs scripts have their module copying fixed, Python 3.12, and a ton of other things.

Upcoming changes

We will likely introduce an installer in one of the future images, likely before beta release.