index | | raw e-mail
• RNG driver • Pciecfg driver • SysIRQ driver Development roadmap Implement missing drivers: • USB3 / T-PHY • SATA / AHCI / T-PHY • Wi-Fi (likely MediaTek MT7615) • GPIO subsystems • I2C • SPI • PWM • PCIE Work in progress drivers: • T-PHY ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Documentation Noteworthy changes in the documentation tree, manual pages, or new external books/documents. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Accessibility Handbook Link: FreeBSD Accessibility Handbook URL: https://docs.freebsd.org/en/books/accessibility/ Contact: FreeBSD Accessibility mailing list <freebsd-accessibility@FreeBSD.org> Contact: Alfonso Sabato Siciliano <asiciliano@FreeBSD.org> In recent reports, the new Accessibility Handbook was announced and its reviews were published. The handbook aims to document the assistive technologies available in FreeBSD, covering both the base system and the Ports Collection. During this quarter: • The book was presented at the FreeBSD Developer Summit Zagreb 2025, with slides available here. • The book was published and is now available on the FreeBSD website under Documentation > Books > Accessibility Handbook. At present, the handbook describes assistive technologies related to visual disabilities. It is part of the Vision Accessibility project sponsored by the FreeBSD Foundation. The handbook is structured into two parts and six chapters: 1. Help — Covers how to request assistance effectively through appropriate FreeBSD communication channels. 2. Virtual Terminal — Documents vision-related accessibility features of the FreeBSD virtual console (vt(4)). 3. Colors — Explains how to configure color schemes, including high-contrast themes and adjusting screen colors for ambient lighting. 4. Low Vision — Outlines accessibility tools in graphical desktop environments for users with low vision, such as screen magnifiers, readable fonts, and scaling. 5. Blindness — Describes assistive technologies for blind users, focusing primarily on screen readers and compatible tools. 6. Development — Provides resources for developers to make their software accessible, test accessibility, and improve support for users with visual impairments. The handbook deliberately avoids images and minimizes non-plain-text elements to enhance compatibility with assistive technologies. Tips and new ideas are welcome. If possible, send reports to the FreeBSD Accessibility mailing list, to share and to track discussions in a public place. Sponsored by: The FreeBSD Foundation ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ FreeBSD Git Weekly Links: FreeBSD Git Weekly URL: https://freebsd-git-weekly.tarsnap.net/ Contact: Graham Percival <gperciva@tarsnap.com> These are weekly lists of commits to the FreeBSD source tree, split into categories such as "documentation", "hardware support", "testing", and "kernel". We also include quarterly lists of the categorized commits, for those who prefer to see three months of development at once. Our goal is to make it easier for developers and users to keep track of changes in FreeBSD that are relevant to them, without needing to subscribe to the dev-commits-src-main mailing list and look at every single commit which lands in their mailbox. There is a freebsd-git-weekly@tarsnap.com mailing list that provides announcements about each report. Sponsor: Tarsnap Backup Inc. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ The FreeBSD Russian Documentation Project Links: FreeBSD Official Website in Russian URL: https://www.freebsd.org/ru/ FAQ URL: https://docs.freebsd.org/ru/books/faq/ The FreeBSD Russian Documentation Project site URL: https://github.com/freebsd-doc-ru/freebsd-doc/discussions Contact: Andrey Zakhvatov <andy@FreeBSD.org> Contact: Vladlen Popolitov <vladlen@FreeBSD.org> The FreeBSD Russian Documentation Project’s current goal is to provide up-to-date Russian translations of the most important parts of the FreeBSD documentation (FAQ, Handbook, website content). It is essential to support Russian speaking users with high-quality official technical materials and to increase the adoption of the operating system worldwide. We hope this initiative will gain support within the Russian-speaking FreeBSD community and lead to an increase in translated materials. During the last quarter: • 100% of the text in Weblate has been translated, accounting for all recent changes. • The review and update process for the remaining documentation has been completed. All 47 documents (books and articles) are now fully synchronized on the Russian documentation site. • The Russian language section of www.FreeBSD.org/ru has been restored, with approximately 90% of its pages updated. • News, event announcements, and press links are now being translated and published on the Russian website. Additionally, Errata Notices and Security Advisories have been translated into Russian starting from January 2025. • For the FreeBSD 15.0 release, the complete set of release documentation (release notes, errata, etc.) has been translated into Russian in a timely manner alongside the English originals. • The project to translate FreeBSD man pages has been initiated and is in its very early stages. Preliminary examples can be found at GitHub. This report acknowledges with appreciation the contributions of the following colleagues who performed reviews of our commits during the quarter (in Phabricator or by email): • Sergio Carlavilla Delgado • Eugene Grosbein • Dmitry Morozovsky • Maxim Konovalov • Michael Zhilin • Sergey Kandaurov • Lorenzo Salvadore Plan for next quarter: • Finalize the update of all remaining pages on the Russian language website. • Establish a sustainable workflow to keep the translated content (News, Events, Press, Errata, Security Advisories) up to date and publish it on the website as promptly as possible. • Translate the new "FreeBSD Accessibility Handbook" as soon as it becomes available for translation in Weblate. • Continue the ongoing project to translate FreeBSD man pages. Check the official translation guide if you would like to help. We would appreciate your assistance with translating the following materials: • Web pages • Man pages ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Ports Changes affecting the Ports Collection, whether sweeping changes that touch most of the tree, or individual ports themselves. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ FreeBSD HPC Ports Modernization: Slurm 25.11 and Unbundled PMIx/PRRTE Links: sysutils/slurm-wlm: 23.11.7 → 25.11.0 URL: https://cgit.freebsd.org/ports/commit/?id=1536bac0dd26d81e315652929b8bfaff9c136089 net/pmix: Process Management Interface for Exascale (PMIx) URL: https://www.freshports.org/net/pmix/ net/prrte: PMIx Reference RunTime Environment (PRRTE) URL: https://www.freshports.org/net/prrte/ sysutils/py-clustershell: Python framework for efficient cluster administration URL: https://www.freshports.org/sysutils/py-clustershell/ Kavocado Monthly Status Reports – FreeBSD HPC notes URL: https://kavocado.net/reports/ Contact: Generic Rikka <rikka.goering@outlook.de> During this quarter, a significant amount of work has gone into making FreeBSD a more practical target for modern HPC clusters by bringing key components of the Slurm + PMIx + PRRTE stack up to date and available as first-class ports. Work completed • Updated sysutils/slurm-wlm from 23.11.7 to 25.11.0, tracking the latest upstream long-term series and drastically reducing the number of local patches required for FreeBSD. • Refreshed the Slurm rc.d scripts so that slurmctld and slurmd integrate better with a typical FreeBSD deployment (configurable config/log directories, pidfiles, status and cleanup helpers). • Introduced net/pmix and net/prrte as standalone ports, and switched net/ openmpi to use these unbundled runtimes instead of the copies shipped inside the OpenMPI distfile. This aligns FreeBSD more closely with how many Linux HPC distros package the MPI runtime stack. • Added sysutils/py-clustershell, a Python framework widely used for scalable cluster administration, providing FreeBSD users with a familiar tool found on many production HPC systems. Work in progress • Iterating on additional Slurm integration improvements (plugins, defaults, documentation) to make it easier to deploy Slurm on FreeBSD in real clusters. • Extending the HPC userland stack with further tools such as test frameworks and job-oriented utilities, so that FreeBSD can serve as a realistic development and validation platform for HPC software. • Porting sysutils/mpifileutils and its dependencies (devel/libcircle, devel/ lwgrp, devel/lwgrpd) to provide MPI-parallel file utilities commonly used on large HPC filesystems (currently under review). • Adding and refining HPC-oriented Python tooling, including benchmarks/ py-reframe (HPC regression testing framework) and continued work around sysutils/py-clustershell. • Initial work on bringing devel/spack to FreeBSD as a complementary tool for HPC software development and experimentation, with the goal of improving compatibility with existing HPC workflows. Future plans • Continue tracking upstream Slurm, PMIx and PRRTE releases closely so that FreeBSD remains a viable target for sites that expect a modern MPI/Slurm stack. • Document a “reference” Slurm + OpenMPI + PMIx + PRRTE setup on FreeBSD, to lower the barrier for new sites that want to experiment with FreeBSD in an HPC context. • Identify and address FreeBSD-specific gaps or regressions to ensure the software stack remains feature-complete and robust on FreeBSD. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ GCC on FreeBSD Links: GCC Project URL: https://gcc.gnu.org/ GCC 13 release series URL: https://gcc.gnu.org/gcc-13/ GCC 14 release series URL: https://gcc.gnu.org/gcc-14/ GCC 15 release series URL: https://gcc.gnu.org/gcc-15/ GCC 16 release series URL: https://gcc.gnu.org/gcc-16/ Contact: Lorenzo Salvadore <salvadore@FreeBSD.org> Very little has happened for GCC on FreeBSD this quarter. The main news is that the exp-run to update GCC default version from 13 to 14 is finally finished. It took longer than expected due to some segmentation fault which happens in the emacs ports only on most recent FreeBSD versions. Since the GCC_DEFAULT update was already long due, it has been chosen to pin the emacs ports to GCC 13 for now, so that this single bug does not prevent the rest of the ports tree from getting advantage of a more recent GCC version by default. Please see PR 288303 for more information. GCC 15 is already in our ports tree and the process to bring GCC_DEFAULT to 15 will soon start. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Improve libvirt support for bhyve hypervisor Links: libvirt: Bhyve driver URL: https://libvirt.org/drvbhyve.html Contact: Roman Bogorodskiy <novel@FreeBSD.org> Completed work • libvirt/bhyve driver: □ NVMe device support added. □ PCI passthrough support added. □ SLIRP networking support added. □ More configuration options added: SATA nmrr/RPM, NVMe queues, VNC wait. • Enabled libvirt-tck hooks tests. Plans for the next quarter • Add support (targeted, but might roll over to next quarter) for: □ Boot order configuration. □ TPM devices. □ Complete suspend/resume support. □ arm64 support. □ virtio-scsi support. □ Guest NUMA configuration support. • Improve virt-manager support on FreeBSD. Sponsor: The FreeBSD Foundation ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Improve OpenJDK on FreeBSD Links: Project description URL: https://freebsdfoundation.org/project/improving-openjdk-on-freebsd/ Project repository URL: https://github.com/freebsd/openjdk Contact: Harald Eilertsen <haraldei@FreeBSD.org> FreeBSD Java mailing list <freebsd-java@lists.freebsd.org> The goal of this project is to improve OpenJDK support for FreeBSD/amd64 and FreeBSD/arm64. Java is an important runtime environment for many high performance, critical enterprise systems. Making sure Java based applications run correctly and efficiently on FreeBSD is important to ensure that FreeBSD will continue to be a viable and attractive platform for enterprises, as well as businesses and organizations of all sizes. In this quarter the following issues/milestones were reached: • Released a port for OpenJDK 25, later updated to OpenJDK 25.0.1. Thanks to Greg Lewis and Kurt Miller for helping. • Added headless and jre FLAVORS to the OpenJDK 25 port. This enables building and installing only a headless (no GUI) version of the JDK or just the Java Runtime Environment (no compiler or dev tools). It is also possible to combine these to only install a headless-jre variant. This is useful in server environments, or other resource constrained environments where the full JDK and tools are not necessary. The plan is to extend these FLAVORS to the remaining OpenJDK ports as well. • Submitted a fix upstream that fixed invalid memory alignment on systems using jemalloc, or other allocators that do not use the strong alignment interpretation of the C standard alignment requirements. This caused problems when allocating small off-heap memory segments using the java.lang.foreign.Arena API on FreeBSD. This fix will be included in OpenJDK 26. • Deprecated OpenJDK ports no longer supported by upstream. The ports will expire and be removed throughout the first half of 2026, leaving the LTS versions and the latest maintained ports behind. Other notes: • Spent some time digging into the history of getrlimitusage(2) system call discovering it was available since version 14.2 despite the man page saying it first appeared in version 15. See also related review by emaste. This was relevant because the performance improvements from previous quarter relies on this system call. Knowing that it is available for all currently maintained versions of FreeBSD, means we do not need to keep code to fall back to less efficient ways of obtaining the same information. • Updates made to the Mac OS X implementation of the Hotspot Serviceability Agent debugging facility broke the BSD implementation. Due to history, these implementations share the same source files and directories despite being somewhat different implementations. Work has been started on moving the OS X code to it’s own implementation, so that we can work on the BSD implementation without having to step on each others toes. • Work on changing the way we bootstrap OpenJDK builds in the ports system has been resumed. This work is more relevant again as deprecating unmaintained ports breaks the previous assumption that you could depend on the previous OpenJDK version to build the current version. The new bootstrapping mechanism must be in place before actually expiring the existing ports. • I lost access to my Aarch64 test system in the beginning of this quarter, so I have not been able to test as well as I want on that architecture. This situation is now remedied, and I am in the process of getting the new system set up for building and testing. Sponsor: The FreeBSD Foundation ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Make OpenJDK 21 the default JAVA_VERSION Links: Issue 272855 URL: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272855 Sheet tracking Work in Progress URL: https://docs.google.com/spreadsheets/d/17hmRQ0ShY4SHHVEkQBVxqK2G88fPZLriTzO26zXdjC4/edit?usp=sharing Contact: Ronald Klop <ronald@FreeBSD.org> The default JAVA_VERSION in FreeBSD ports is still OpenJDK 8. It is time to upgrade this to a more modern version like OpenJDK 21. We need to test and fix all ports using Java to build or run with JDK 21, or pin JAVA_VERSION in the port to the latest supported version. The work is being tracked in PR 272855 and a Google Sheet for more details. Already more than half of the ports that failed a test run is fixed. If you have experience with Java and the ports system you are invited to help. I think it is reasonable to have the ports in shape for the JAVA_VERSION=21 setting in February 2026. Plan: • Check the last 12 ports and create a PR or commit • Commit the PRs that are timing out on maintainer feedback • Ask for another exp-run • If done, increase JAVA_VERSION ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ KDE on FreeBSD Links: KDE/FreeBSD initiative URL: https://freebsd.kde.org/ FreeBSD — KDE Community Wiki URL: https://community.kde.org/FreeBSD Contact: KDE on FreeBSD Mailing List <kde@FreeBSD.org> The KDE on FreeBSD project packages CMake, Qt, and software from the KDE Community, for the FreeBSD ports tree. The software includes a full desktop environment called KDE Plasma (for both X11 and Wayland) and hundreds of applications that can be used on any FreeBSD machine. The KDE team is part of desktop@, building the software stack to make FreeBSD beautiful and usable as a daily driver graphical desktop workstation. Infrastructure CMake was updated to 3.31.10. Ninja was updated to 1.13.2. Qt6, PyQt6, and PySide6 were updated to 6.10.1. Qt5 was updated to 5.15.18 KDE patch collection. Upstream standard support for Qt5 is officially over. This might be the last update for Qt5 on FreeBSD. KDE Stack KDE Frameworks, Plasma, and Gear release happen very regularly. KDE team lands these updates shortly after their upstream release. • KDE Frameworks ports were updated to 6.21.0. • KDE Plasma Desktop was updated to 6.5.4. • KDE Gear was updated to 25.12.0. With KDE Gear 25.12.0 the last two applications have been finally ported to Qt6, and KDE Stack is liberated from Qt5 packages now. The x11/kde port has been reduced and does not install Plasma 6 integration plugins for Qt5 and GTK2 applications anymore. They are still available and can be installed via x11/ plasma6-plasma port if required. Support for Plasma/Wayland has been improved. It can be used as a daily driver instead of Plasma/X11. Related Ports The KDE team maintains nearly 730 ports and updates them all as needed. According to portscout only 1% ports are outdated. The KDE team would like to thank Gleb Popov, Jason E. Hale, Loïc Bartoletti, and Max Brazhnikov for keeping things up-to-date. The KDE team is grateful to Harley (SponiX on IRC) for sharing his building box. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Use Bazel as build tool for MongoDB 8.0 Links: MongoDB 8.0 port URL: https://www.freshports.org/databases/mongodb80/ Bazel 8 PR URL: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287546 Contact: Ronald Klop <ronald@FreeBSD.org> MongoDB is a production level NoSQL database. Our ports has the Community edition of MongoDB for many years already. MongoDB is used by several WiFi controller software in ports like Unifi and Omada. In MongoDB 8.0.13 the build system is changed from SCons to Bazel. We have version 8 of Bazel in Bugzilla (PR 287546). With this version the build of MongoDB 8.0 starts. Unfortunately the build errors pretty quickly. Because of security issues in the MongoDB 8.0 port it becomes important to upgrade the port to the latest version. I am looking for somebody with experience of a Bazel build to help. • Contact me. • Set up your build environment with Bazel 8. • Compile and fix. • Let us commit it! ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ OpenVox (Puppet) Links: Vox Pupuli URL: https://voxpupuli.org/ OpenVox GitHub organization URL: https://github.com/OpenVoxProject/ Vox Pupuli GitHub organization URL: https://github.com/voxpupuli/ Contact: Puppet Team <puppet@FreeBSD.org> OpenVox (Puppet) is a Free Software configuration management tool, composed of a source of trust (OpenVox Server) that describes the expected configuration of machines with a domain-specific language, and an agent (OpenVox Agent) on each node which enforces that the actual configuration matches the expected one. An optional database (OpenVoxDB) can be setup for reporting and describing advanced schemas where the configuration of a machine depends on the configuration of another one. A lot of things happened in the Puppet world this year. After Perforce announced major changes regarding how they contribute to Open-Source, they discontinued the Open Source version of Puppet (also known as OSS Puppet), advising users to switch to Puppet Enterprise (closed source flavor of Puppet that has existed for years) or Puppet Core (a new closed source flavor of Puppet, not developed in the open, and accessible only after signing an End-User License Agreement (EULA)). The Vox Pupuli community tried to reason with Perforce, but without success. Vox Pupuli therefore took maintainership of the Apache-2.0 licensed Puppet code, and continue to maintain it, update it, provide packages, instead of Perforce. The name "Puppet" being owned by Perforce, the project has been renamed to "OpenVox" in order for users to not confuse the old unmaintained Open-Source Puppet with the new version maintained by OpenVoxProject, which is part of Vox Pupuli. To follow these changes, a bunch of ports have been added to the FreeBSD ports tree: • sysutils/openvox-agent8 replaces sysutils/puppet8; • sysutils/openvox-server8 replaces sysutils/puppet-server8; • databases/openvoxdb8 replaces databases/puppetdb8; • databases/openvoxdb-terminus8 replaces databases/puppetdb-terminus8; • sysutils/rubygem-openbolt replaces sysutils/rubygem-bolt; • sysutils/rubygem-openfact replaces sysutils/rubygem-facter. They are drop-in replacement of the former ports: while the packages are named "openvox", the service keep their legacy name for now. Switching to them is as easy as installing them, and answering yes when pkg propose to remove the legacy packages and install the new ones. No other action is required: the module you used with Puppet are expected to continue working with OpenVox. During this year, Puppet 7 has also reached End-of-Life, so the corresponding ports have been deleted from the FreeBSD ports tree. Puppet 7 was the last version that allowed to choose between the C and the Ruby version of facter, the port for the C version (sysutils/facter) has therefore also been removed. Because the legacy ports of Puppet 8 will not be updated anymore, they will be deprecated soon, and follow the same fate.home | help
