FreeBSD The Power to Serve

FreeBSD Status Report First Quarter 2025

Here is the first 2025 status report, with 40 entries.

As we step into a new year, the FreeBSD community continues its work with unwavering speed, intent, and purpose.

The first quarter has been remarkable, with numerous reports highlighting progress across various areas. Engaging with the community through forums, mailing lists, and conversations has revealed to me more advancements than can ever be captured in a single quarterly report.

We extend our heartfelt thanks to everyone who submitted reports and helped raise awareness of our activities. Your contributions are invaluable in showcasing our collective efforts.

Let us build on the success of 2024 and make this the best year yet for FreeBSD and our community!

Chris Moerz, on behalf of the Status Team.



FreeBSD Team Reports

Entries from the various official and semi-official teams, as found in the Administration Page.


FreeBSD Core Team

Contact: FreeBSD Core Team <core@FreeBSD.org>

The FreeBSD Core Team is the governing body of FreeBSD.

Project roadmap

Core is collecting ideas and comments to draft Project’s roadmap. It is an item core.13 thinks is worth to continue from core.12. The roadmap is not about restricting or limiting what developers and contributors can do, but about the compiled goals and expectations of the Project and things the community can collaborate on. It will also let the FreeBSD Foundation help the Project more effectively, so, this is an important discussion item for the meetings between core and the FreeBSD Foundation.

Work in Progress

Core is currently working on the following items:

  • Policy on generative AI created code and documentation

  • Core and the FreeBSD Foundation are working on the 2025 edition of the Community survey

  • Privacy-friendly web analytics, proposed by the Foundation


FreeBSD Foundation

Contact: Deb Goodkin <deb@FreeBSDFoundation.org>

The FreeBSD Foundation is a 501(c)(3) non-profit organization dedicated to advancing FreeBSD through technical and non-technical support. Funded entirely by donations, the Foundation supports software development, infrastructure, security, and collaboration efforts; organizes events and developer summits; provides educational resources; and represents the FreeBSD Project in legal matters. The following report covers just some of the ways we supported FreeBSD in Q1

Deb Goodkin here. Is it Q2 already? Last quarter was a whirlwind of activity supporting the FreeBSD Project and community. In our report, we will highlight the work we are currently doing to ensure that FreeBSD stays viable and secure for the long term.

As you know, the Foundation is here to support the project in many ways, including software development, security, legal, conferences, and infrastructure. I want to keep this section short, because we have reports throughout this status report to get more details on the work we are doing.

Here is a snapshot of what we worked on last quarter, by the numbers:

  • 2024 funding raised (final amount is determined by February or March): $1,524,259

  • Q1 2025 fundraising: $211,000

  • Active software development projects: 20+

  • Number of commits: 456

  • Amount of technical content published: 8

  • Conferences sponsored/attended: 2

  • Foundation employees: 7

  • Foundation contractors: 19

  • Foundation’s 25th Anniversary: We are thrilled to celebrate 25 years of supporting the FreeBSD Project and community!

Exciting News: Mark Phillips joined the Foundation as our Technical Marketing Manager. Get prepared for some information and helpful technical content coming your way! We also brought on another part-time developer who stepped into our Solutions Specialist role. We will announce that person soon.

Advocacy

In the first quarter of 2025, the Foundation continued its work to support and promote FreeBSD. In addition to our regular activities such as publishing educational and informational content, attending events, and providing travel grants to help FreeBSD contributors participate in conferences we also welcomed a new team member. Mark Phillips joined us in March as our Technical Marketing Manager. With a background in engineering and a passion for storytelling, Mark describes himself as "an engineer by training, a marketer by chance." He has already made connections within the FreeBSD community, and we are excited to see his impact grow. To learn more about Mark, visit our team page.

Other highlights of our Q1 2025 advocacy efforts include:

OS Improvements

The FreeBSD Foundation continued to support two major projects this quarter.

The Foundation’s Laptop Support and Usability project began in Q4 of 2024 and is funded by the FreeBSD Foundation and Quantum Leap Research. It has a budget of $750,000, which will be used over one to two years. The goal is to deliver its public roadmap to improve key features like WiFi, audio usability, suspend and resume functions, graphics, and Bluetooth. The team will also create clear documentation and step-by-step guides to help people use the new features. Work done this quarter includes improvements to the pkg package manager and pkgbase installation, suspend/resume, USB debugging, newer WiFi standards and drivers, updated graphics drivers, performance/efficiency using heterogeneous cores, support for virtual and non-standard audio devices, and integrating donated code to support UVC webcam drivers. Refer to these dedicated report entries for details:

The other major project, commissioned by the Sovereign Tech Agency is to modernize FreeBSD’s infrastructure. To learn more about the project and the updates from this quarter, refer to the Infrastructure Modernization report entry.

Updates are available for three other projects in separate report entries:

Overall, there were 346 src, 96 ports, and 14 doc tree commits identifying the FreeBSD Foundation as a sponsor. A sampling of that work includes:

  • Enhancements to SMBIOS handling, including favoring version 3 (64-bit) entry points, adding diagnostics, and improving code robustness

  • Ongoing work to optimize memory usage during early VM initialization

  • Continued development toward supporting heterogeneous CPU cores

  • Enabling USB driver support for the Allwinner D1 SoC

  • Improvements to makefs(8) for generating reproducible cd9660 images

The Foundation is managing FreeBSD’s participation in the Google Summer of Code (GSoC) program. At the end of February, we were excited to learn that FreeBSD was once again selected as a mentoring organization for GSoC 2025. That marks our 21st consecutive year in the program. We received 64 applications, and we will learn which projects will be awarded slots on May 8.

Continuous Integration and Workflow Improvement

As part of our continued support of the FreeBSD Project, the Foundation supports a full-time staff member dedicated to improving the Project’s continuous integration system and test infrastructure.

Legal/FreeBSD IP

The Foundation owns the FreeBSD trademarks, and it is our responsibility to protect them. We also provide legal support for the core team to investigate questions that arise.

Go to https://freebsdfoundation.org to find more about how we support FreeBSD and how we can help you!


FreeBSD Release Engineering Team

Contact: FreeBSD Release Engineering Team, <re@FreeBSD.org>

The FreeBSD Release Engineering Team is responsible for setting and publishing release schedules for official project releases of FreeBSD, announcing code freezes and maintaining the respective branches, among other things.

The Team managed 13.5-RELEASE, leading to the official RELEASE build and announcement in March; this was the final release from the legacy stable/13 branch. Planning has started for the upcoming 14.3-RELEASE cycle.

The Release Engineering Team continued providing weekly development snapshot builds for the main, stable/14, and stable/13 branches.


Cluster Administration Team

Contact: Cluster Administration Team <clusteradm@FreeBSD.org>

FreeBSD Cluster Administration Team members are responsible for managing the machines the Project relies on to synchronize its distributed work and communications.

In this quarter, the team has worked on the following:

  • Regular support for FreeBSD.org user accounts.

  • Regular disk and parts support (and replacement) for all physical hosts and mirrors.

  • Cluster software refresh.

  • Moving more cluster services to Chicago.

  • Supporting the Grimoirelab dashboard effort.

  • Coordinate community mirrors.

Moving cluster services to Chicago

We started building up our new site in Chicago 2024, with a long-term goal to have Chicago as our primary location. Since 2024Q4, we began decommissioning older machines in New Jersey and moving services to the newer machines in Chicago. In 2025Q1, we started upgrading critical services in the cluster and testing to setup in Chicago.

Git web interface mirrors

While the project’s public read-only git repository is built by a globally distributed mirror, the web interface (cgit) is not. We found there is increasing requirement of accessing it, and for improving the response time and reliability, we setup the cgit on the mirrors around the world.

FreeBSD official mirrors

Current locations are Australia, Brazil, Germany, Japan (two full mirror sites), Malaysia, South Africa, Sweden, Taiwan, United Kingdom (full mirror site), United States of America — California, Chicago, New Jersey (primary site), and Washington.

Our mirror site in Taiwan is experiencing an extended outage. The effort of bringing it back is in progress. We hope to have it back online during the second quarter of 2025.

The hardware and network connection have been generously provided by:

New official mirrors are always welcome. We have noted the benefits of hosting single mirrors at Internet Exchange Points globally, as evidenced by our existing mirrors in Australia, Brazil, and South Africa. If you are affiliated with or know of any organizations willing to sponsor a single mirror server, please contact us. We are particularly interested in locations on the United States West Coast and throughout Europe.

See generic mirrored layout for full mirror site specs and tiny-mirror for a single mirror site.

Sponsors: The FreeBSD Foundation


Continuous Integration

Contact: Jenkins Admin <jenkins-admin@FreeBSD.org>
Contact: Li-Wen Hsu <lwhsu@FreeBSD.org>
Contact: freebsd-testing Mailing List
Contact: IRC #freebsd-ci channel on EFNet

In the first quarter of 2025, we worked with the project contributors and developers to address their testing requirements. Concurrently, we collaborated with external projects and companies to enhance their products by testing more on FreeBSD.

Important completed tasks:

  • Add jobs to build amd64 main, stable/14, and stable/13 with GCC 14 (jhb@)

  • Working with intern students to fix the failing and skipped test cases (lwhsu@)

  • Upgrade and switch the Jenkins server to LTS version.

  • Participate the Foundation’s Sovereign Tech Agency (STA) work package C: improve the project’s CI/CD

Work in progress tasks:

  • Designing and implementing pre-commit CI building and testing and pull/merge-request based system (to support the workflow working group)

  • Designing and implementing use of CI cluster to build release artifacts as release engineering does, starting with snapshot builds

  • Simplifying CI/test environment setting up for contributors and developers

  • Setting up the CI stage environment and putting the experimental jobs on it

  • Redesigning the hardware test lab and adding more hardware for testing

Open or queued tasks:

  • Collecting and sorting CI tasks and ideas

  • Setting up public network access for the VM guest running tests

  • Implementing use of bare-metal hardware to run test suites

  • Adding drm-kmod ports building tests against -CURRENT

  • Helping more software get FreeBSD support in its CI pipeline (Wiki pages: 3rdPartySoftwareCI, HostedCI)

  • Working with hosted CI providers to have better FreeBSD support

Please see freebsd-testing@ related tickets for more WIP information, and do not hesitate to join the effort!

Sponsor: The FreeBSD Foundation


Ports Collection

Contact: Tobias C. Berner <portmgr-secretary@FreeBSD.org>
Contact: FreeBSD Ports Management Team <portmgr@FreeBSD.org>

The Ports Management Team is responsible for overseeing the overall direction of the Ports Tree, building packages, and personnel matters. Below is what happened in the last quarter.

In the last quarter, we welcomed Austin Shafer (ashafer@) as a new ports committer, and welcomed back Eygene Ryabinkin (rea@) and Mark Linimon (linimon@).

According to INDEX, there are currently 36,450 (up from 36,332) ports in the Ports Collection. There are currently about 3,333 (down from 3,368) open ports PRs, of which 887 are unassigned. The last quarter saw 10,733 (up from 10,640) commits by 158 (up from 155) committers on the main branch and 707 (down from 733) commits by 54 (down from 61) committers on the 2025Q1 branch.

The most active committers to main were:

A lot has happened in the ports tree in the last three months, an excerpt of the major software upgrades are:

  • pkg 2.1.0

  • Default version of Lazarus switched to 3.8.0 (aarch64 at 4.99)

  • Chromium 134.0.6998.165

  • Electron 31 removed, Electron 34 added

  • Firefox 137.0-rc2

  • Firefox-esr 128.9.0-rc2

  • Gnome desktop 44.1

  • KDE Frameworks 6.12.0

  • KDE Plasma 6.3.3

  • KDE Gear 24.12.3

  • Qt6 6.8.3

  • Python 3.8 removed

  • Ruby 3.1 removed

  • Ruby 3.3.7

  • Rust 1.85.1

  • SDL 2.32.2

  • SDL 3.2.8, added to USES=sdl

  • Wine 10.0

One USES was removed: qca

During the last quarter, pkgmgr@ ran 20 exp-runs to test infrastructure changes and various ports upgrades.


Bugmeister Team

Contact: Bugmeister <bugmeister@FreeBSD.org>

In this quarter we made major progress on Base System PRs, closing over 1,000 old ones that no longer apply. Many of these were detected by carefully going over all entries in ObsoleteFiles.inc.

Also in this quarter we came even closer to steady-state for ports/doc; we are dealing with incoming PRs more quickly these days. For reference: https://bugs.freebsd.org/bugzilla/page.cgi?id=dashboard.html&days=90.

The overall number of PRs came down from slightly over 11,000 to just under 10,000. This was due to work from several people to go over entire groups of PRs.

Mark Linimon attended several video calls with various src committers. They are doing some experimentation to learn what kind of effort is sustainable. The most recent effort was to evaluate the latest incoming src PRs; you will note that many of them from the past few weeks have been marked as requesting feedback.

Bugmeister folks also did some passes through the database to clean up metadata:

  • re-checked bugs for Product: Base System, Status: In Progress. A few of these were not being actively worked on. The count is essentially holding at 186. The concept is to make sure "In Progress" has some real meaning.

  • edited up the 'application/mbox' patches to be 'text/plain', which Bugzilla is then able to understand.

  • obsoleted many stale patches where more than one patch was in the PR.

The "automate harvesting PRs and evaluating whether they still apply" task has resulted in the release of patchQA.py as beta. The program can take either a number (as a single PR number), or, with some work, a full REST query.

The main current problem is that the py-patch algorithm does not correctly handle fuzz. Until this is fixed, it will stay in beta.

Almost all of the PRs with patches have been processed by patchQA.py and several hundreds of them have been rebased (e.g. Base System patches to be relative to the top of the src tree). We now have a sense of how many Ports patches are not actually patches to the FreeBSD port itself, but instead need to be manually applied to an extracted work/ directory. A script to try to automate this is in alpha.

The other problem known with patchQA.py is that it does not know the origins of files that are installed into /etc by installworld.

However, it does know enough to internally rebase Ports patches to the ports tree base if necessary.

We also created 120+ new Bugzilla accounts by user request. (We no longer create them automatically because of the spammers.)

Clusteradm@ helped us fend off yet more crawler sites. OTOH, we seem to be losing the war against AI bots.


Source Management Team

Contact: srcmgr <srcmgr@FreeBSD.org>

srcmgr@ is focused on finding ways to make src developers more productive, and to try and manage the large numbers of bug reports and pull requests that we receive. The team meets every two weeks to discuss src-related issues and spend time triaging bug reports and pull requests. The current members are Ed Maste, Mark Johnston, John Baldwin, and Warner Losh. Meeting minutes are available on GitHub.

In January and February, srcmgr@ ran two online bug-busting sessions, each attended by roughly 12 developers. The sessions ran for three hours and focused on triaging new src bug reports. The team plans to resume hosting these sessions in the next month.

The srcmgr@ team plans to lead a session at the FreeBSD Developer Summit in June. Topics will include deprecation of 32-bit platforms, and pkgbase support for the upcoming FreeBSD 15.0 release.


Projects

Projects that span multiple categories, from the kernel and userspace to the Ports Collection or external projects.


Infrastructure Modernization

Contact: Ed Maste <emaste@FreeBSD.org>
Contact: Alice Sowerby <alice@freebsdfoundation.org>

The project started in Q3 of 2024 and was commissioned by the Sovereign Tech Agency with a budget of $745,000, to be spent over about one year. The main goals are to improve security tools for the base system, ports, and packages, update the project’s infrastructure to speed up development, enhance build security, and make it easier for new developers to get started.

Q1 update

Three of the five work packages are now in progress, with the remaining two to start in April. The overall schedule has been re-planned to run through to December 2025, allowing for a more sustainable pace of work.

Work Package A: Technical Debt reduction

The Foundation and the FreeBSD Project’s Source Management team is working together to make bug management easier and more sustainable. There is now a bug backlog dashboard, which helps make the backlog easier to understand during "bug busting" sessions, and is already showing that more bugs are being closed than being opened. This is hosted on FreeBSD and documentation has been submitted upstream to the GrimoireLab project so others can do the same.

One way to learn more about the project is to listen to the CHAOSScast episode where we talked about this work package.

We have also been upgrading Bugzilla by applying patches from 2023 onward and improving the upgrade process to ensure smoother future updates.

Work Package B: Zero Trust Builds

Much of the foundational work has been completed to standardize all source release build cases using no-root for creation of release artifacts. We are formalizing and documenting make world and release.sh to provide joined-up documentation for users. In order to get src to build reproducibly we are creating CI tests and are working with Reproducible-Builds.org to restore the FreeBSD reproducible CI. Read their February report.

Work Package C: CI/CD Automation

The high-level goal is to improve CI/CD automation to streamline software delivery and operations for new and existing software. Work so far is focusing on:

  • Improving the quality of incoming commits by providing system-agnostic tooling and documentation so that maintainers and developers can run CI without requiring a 3rd-party service (link:https://reviews.freebsd.org/D48015).

  • Making it possible to run pre-merge CI on proposed submissions (e.g. Pull Requests) (link:https://reviews.freebsd.org/D36257).

  • Documenting the CI management process to make it easier to keep tooling up to date and patched.

  • Updating the Source and Ports tests to include standard linters and other relevant automated analysis tools.

Work Package D: Security Controls in Ports and Packages and Work Package E: Improve Software Bill of Materials (SBOM)

These work packages are scheduled to start in April. The Foundation has been collaborating with FreeBSD Project teams to scope the projects appropriately.

Commissioning body: Sovereign Tech Agency


Automatic pkgbase conversion tool

Contact: Isaac Freund <ifreund@freebsdfoundation.org>

The new pkgbasify tool automatically converts an existing FreeBSD 14+ system to use pkgbase.

I’ve done my best to make pkgbasify as robust as possible and currently believe it to be as reliable as manual conversion if not better.

That said, pkgbasify could use testing on more diverse systems! See the README for usage instructions and details on pkgbasify’s behavior.

Sponsor: The FreeBSD Foundation


Framework Laptop support

Contact: Daniel Schaefer <dhs@frame.work>
Contact: Li-Wen Hsu <lwhsu@FreeBSD.org>
Contact: Sheng-Yi Hong <aokblast@FreeBSD.org>

For a long time, Framework Computer Inc. has been very supportive of the FreeBSD project in many ways, including providing engineering samples to the Foundation for testing and working on compatibility.

The Foundation continues to work on improving overall laptop support, and Framework laptops are one of the target platforms for the Laptop Support and Usability Project.

In March, some FreeBSD developers visited Framework’s Taipei office again to test FreeBSD on pre-release Framework products, the Framework Desktop and Framework Laptop 12. The results of these tests will be used to help shape FreeBSD’s development plans, and the FreeBSD support status will be updated in document after further verification.

Sheng-Yi is using the laptop provided by Framework Computer to add more device support, e.g. hwpstate: add CPPC support for pstate driver on AMD.

Sponsor: The FreeBSD Foundation for Li-Wen and Sheng-Yi’s work
Sponsor: Framework Computer Inc for Daniel’s work, hardware and space support


Hackathon 202503 Tokyo, Japan

Before the AsiaBSDCon-Lite 2025 event, some members of the community gathered and held a hackathon in Tokyo.

Thanks to Christoff Visser and Internet Initiative Japan Inc. who sponsored the venue.

The work done or progressed in the hackathon

Sheng-Yi Hung
Kristof Provost

Wrote a test case for bsnmpd’s snmp_pf module. This revealed that the BEGEMOT-PF-MIB.txt MIB file could not be parsed by bsnmpwalk, which was also fixed. Commits: 712309a64512, c849f5333260 and 36586800803d

Aymeric Wibo
  • Got writing to config space of USB4 routers working and successive reads on AMD USB4 controllers.

  • First steps to suspending USB4 routers.

  • Put up a bunch of preliminary patches regarding the USB4 stuff.

  • Tried passing through USB4 devices to Linux guest to suspend them (did not work).

Mark Johnston
  • Worked on various syzkaller reports, e.g.: fe7fe3b175b6

  • Looked for races in pf after getting some vague bug reports from the OPNsense developers and, with Gleb and Kristof, found and fixed a rare race which could cause a use-after-free: 8efd2acf07bc

Philip Paeps
  • Fixed the libtrue website — we now have libtrue.so :-)

  • Worked on clusteradm technical debt

  • Good progress on our LDAP update

  • Updated a couple of internal machines

Li-Wen Hsu
  • Project’s Git infrastructure improvements, including system updating, maintenance scripts and git hooks fixes

  • Plan the cluster goals and roadmap for 2025 and longer with Philip Paeps

Sponsor: Christoff Visser and Internet Initiative Japan Inc. for the venue


Sylve — A Unified System Management Platform for FreeBSD

Contact: Hayzam Sherif <hayzam@alchemilla.io>

Sylve is a modern, unified system management platform for FreeBSD, inspired by Proxmox. It intends to provide an integrated web interface for managing virtual machines (via Bhyve), Jails, ZFS storage, networking, and firewalling. The backend is implemented in Go, while the frontend uses SvelteKit with Tailwind CSS and ShadCN UI components.

The project emphasizes a minimal system footprint, currently requiring only sysutils/smartmontools and sysutils/tmux as runtime dependencies.

Sylve addresses a key gap in the FreeBSD ecosystem: a user-friendly, full-featured web interface for system management. By unifying virtualization, storage, and network management, it aims to lower the barrier for users and administrators deploying FreeBSD in complex environments.

We started working on the project since February and have made significant progress across several areas:

  • PAM-Based Authentication: Integrated support for FreeBSD’s native PAM system, with optional fallback to local authentication.

  • Disk Management: Users can view and manage physical disks and partitions through the web UI, with SMART-based health monitoring included.

  • Frontend Infrastructure: Continued development of reusable UI components and layout structure, with a responsive and accessible design.

The project remains under active development and is not yet production-ready.

Planned tasks for the upcoming quarter include:

  • ZFS Management: Implementing full support for creating and managing ZFS pools and datasets via the web interface.

  • Virtual Machine Management: Continuing the Bhyve integration to support VM creation, monitoring, and control.

  • Basic Network and Firewalling: Providing web-based interfaces for NAT, port forwarding, and firewall rule configuration.

Contributions, testing, and feedback are very welcome. If you are interested in contributing, consider helping with:

  • UI testing and accessibility feedback

  • Bug reports and feature requests via GitHub

Sponsor: FreeBSD Foundation and Alchemilla (development and infrastructure support)


Userland

Changes affecting the base system and programs in it.


Jail metadata feature

Contact: Igor Ostapenko <igoro@FreeBSD.org>
Contact: Dave Cottlehuber <dch@FreeBSD.org>

The meta and env new parameters of jail(8) have been introduced. Each one is an arbitrary string associated with a jail. It can be set upon jail creation or added/modified later:

# jail -cm ... meta="tag1=value1 tag2=value2" env="configuration"

The values are not inherited from the parent jail. A parent jail can read both metadata parameters, while a child jail can read only env via the newly added security.jail.env sysctl.

The maximum size of meta or env per jail is controlled by the global security.jail.meta_maxbufsize sysctl. Decreasing it does not alter the existing meta information.

Each metadata buffer can optionally be handled as a set of key=value\n strings:

# jail -cm ... meta="$(echo k1=v1; echo k2=v2)" env.1=one
# jls meta.k2 env.1 meta.k1

While meta.k1="" or meta.k1= resets the value to an empty string, the meta.k1 without the equal sign removes the given key. The flua’s libjail has been updated respectively to support the key-based handling.

Sponsor: SkunkWerks GmbH


Kernel

Updates to kernel subsystems/features, driver support, filesystems, and more.


Audio Stack Improvements

Contact: Christos Margiolis <christos@FreeBSD.org>

I have been working on the audio stack since 2024Q1. Below is a list of the previous status reports:

Important work since last report:

  • Large refactor in sound(4)'s format conversion framework: 433e270f341c. Further simplifications and refactors in the rest of the processing chain.

  • Implemented AFMT_FLOAT support.

  • More out-of-the-box laptop support, especially Framework models.

  • Virtual channels are now allocated on-demand: 02d4eeabfd73

  • Re-implementing /dev/dsp as a virtual/router device: D49216. Apart from the standalone benefits of this change, it will also help us improve automatic sound redirection in snd_hda(4).

  • More sound(4) cleanups, fixes and improvements.

  • New virtual_oss release: https://github.com/freebsd/virtual_oss/releases/tag/v1.3.2

  • Got my audio-related BSDCan 2025 talk proposal accepted.

  • Put porting SOF to FreeBSD on the backburner for now. See here for an explanation.

  • In contact with potential GSOC students interested in porting virtual_oss to base.

Future work includes:

  • Finish currently open tasks.

  • More bug fixes, support, optimizations and general improvements, in all areas of the sound stack.

  • Get back to audio(8)

  • Implement a generic MIDI layer, similar to pcm/, and improve/modernize the MIDI codebase in general.

You can also follow the development process in freebsd-multimedia@, where I post regular reports.

Sponsor: The FreeBSD Foundation


DRM drivers

Contact: Jean-Sébastien Pédron <dumbbell@FreeBSD.org>

DRM drivers are kernel drivers for integrated and discrete GPUs. They are maintained in the Linux kernel and we port them to FreeBSD. As of this report, we take the AMD and Intel DRM drivers only (NVIDIA FreeBSD drivers are proprietary and provided by NVIDIA themselves).

We usually port them one Linux version at a time. This allows us to ship updates more often and it eases porting and debugging because we have a smaller delta compared to a bigger jump skipping several versions.

This quarter, we ported DRM drivers from Linux 6.7 and 6.8. This effort did not hit the Ports tree yet because several patches to the FreeBSD kernel (the linuxkpi compatibility layer specifically) are still being reviewed and improved.

So far, the feedback was good for GPUs that were already supported by previous versions of the drivers. For newer GPUs, especially Intel ones, panics and display corruptions were reported. At this point, it is difficult to say if we just miss fixes from Linux that were published in a later version, or if these issues are actual bugs on FreeBSD.

These updates target the FreeBSD 15-CURRENT development branch for now. Once kernel patches are accepted and the DRM drivers updates merged, we will evaluate if/how we can backport the kernel patches to earlier release branches (namely 14-STABLE).

If you want to try them, you will find instructions to build and install a kernel with the non-committed changes, the drivers and the firmwares, in the pull requests’ descriptions.

The next steps are:

  1. Finish the polishing of kernel patches and commit them

  2. Review and merge the DRM drivers updates

  3. Evaluate a backport of the kernel patches to release branches to allow to use these updates on older versions of FreeBSD.

This work is kindly sponsored by the FreeBSD Foundation as part of the Laptop and Desktop Project.

Sponsor: The FreeBSD Foundation


Suspend/Resume Improvement

Contact: obiwac <obiwac@FreeBSD.org>

Suspend-to-idle and support for S0ix sleep is in the process of being added to FreeBSD.

This will allow modern Intel and AMD laptops (e.g. AMD and newer Intel Framework laptops), some of which do not support ACPI S3 sleep, to enter low power states to increase battery life.

Suspending and resuming is working on the Framework 13 AMD Ryzen 7040 series, though the deepest S0ix state (S0i3), necessary for significant power savings, cannot yet be entered on AMD systems. The major blocker for this at the moment is being able to suspend all the USB4 routers correctly, without which the power management firmware will refuse to enter S0i3. USB4 suspend support in FreeBSD is necessary as the BIOS wakes them up and runs a pre-OS connection manager for USB4 to work before an OS loads with its own connection manager, so they start off in an awake state.

Work has been picked up from the initial USB4 driver Scott Long started writing, but it is not yet at a stage where the routers are being fully suspended.

An amdsmu driver was written to read last suspend statistics and sleep-state residency counters (which were unavailable in the ACPI _LPI objects). The SMU is a small coprocessor on AMD CPUs which runs the power management firmware and is ultimately what decides to enter S0i3 or not. These statistics can tell us if the system entered S0i3 during the last suspend, how much time it took to enter, and which proportion of suspended time was spent in S0i3.

Sponsor: The FreeBSD Foundation


Syzkaller Improvement for WiFi on FreeBSD

Contact: Jian-Lin Li <ljianlin99@gmail.com>
Contact: Li-Wen Hsu <lwhsu@FreeBSD.org>

Syzkaller is an operating system kernel fuzzer that can look for vulnerabilities in the kernel.

This project aims to improve the support of Syzkaller on FreeBSD. Based on the existing WiFi fuzzer designed for Linux, we drafted a WiFi fuzzer for FreeBSD. We planned to use wtap(4), a virtual wifi interface for testing, in order to support WiFi fuzzing.

Some of the design details include:

  • Initialize wtap devices in Syzkaller before WiFi fuzzing

  • Inject 802.11 frames via the existing ioctl interface provided by wtap

  • Inject 802.11 frames via the Netlink interface, which is not supported by FreeBSD for now

We have developed a WiFi fuzzer using existing ioctl interface provided by wtap. One can check out the result in this branch.

We hope to introduce Netlink interface, which is adopted by the Syzkaller to inject 802.11 frames into Linux kernel, to FreeBSD to improve the compatibilities between Linux and FreeBSD.

Sponsor: The FreeBSD Foundation


LinuxKPI 802.11 Wireless Update

Contact: Bjoern A. Zeeb <bz@FreeBSD.org>
Contact: The FreeBSD wireless mailing list <wireless@FreeBSD.org>

With multiple wireless projects ongoing, this report focuses on the efforts using permissively licensed Linux wireless drivers mostly unmodified on FreeBSD. The currently supported drivers are iwlwifi(4), rtw88(4), and rtw89(4).

The rtw88(4) driver was made to work (associate) again (Bugzilla PR#283142). In addition, thanks to the massive help debugging and testing by the community, the cause for leaking memory got resolved (Bugzilla PR#283903).

Tunables to selectively control HT and VHT support in rtw88(4), and rtw89(4) were added. HW crypto offload was enabled by default for CCMP. It turns out that a lot of users are still using TKIP. Work is in on the way to support this and will hopefully land early in Q2.

HT (11n) and VHT (11ac) support are now also compiled in by default for the LinuxKPI based drivers. The drivers and entire framework changes were merged from main to stable/14 so both branches have the same level of support.

People installing firmware using fwget(8) will get HT and VHT automatically enabled for iwlwifi(4) 2200 (mostly AX200), AX210, and BE200 chipset generations. Older iwlwifi(4) chipset generations, rtw88(4), and rtw89(4) will need extra work in LinuxKPI or the driver to provide working support.

It was announced that iwlwififw(4) will follow rtw88(4), and rtw89(4) firmware and be removed from the base system in April 2025 for both main and stable/14 in favor of the ports based solution and fwget(8) support (Announcement).

Sponsor: The FreeBSD Foundation


Wireless Update

Contact: Tom Jones <thj@FreeBSD.org>
Contact: The FreeBSD wireless mailing list <wireless@FreeBSD.org>

At the end of 2024 Future Crew LLC provided the source for their iwx port from OpenBSD. I opted to merge the two drivers together using the Future Crew driver as a base and importing my modifications.

I worked on this driver, tidying up and removing a lot of development code and expanding support for more devices. iwx in FreeBSD should now attach to any device supported by OpenBSD. Firmware is available thanks to bz@ in the net/wifi-firmware-iwlwifi-kmod package.

iwx landed in FreeBSD on the final day of the quarter. iwx probes with a lower priority than iwlwifi to avoid breaking deployed configurations.

iwx supports legacy, HT and VHT rates and some users have reported significant throughputs in test. There remain many issues around rate selection and development is continuing.

Sponsor: The FreeBSD Foundation


Architectures

Updating platform-specific features and bringing in support for new hardware platforms.


Pinephone Pro Support

Contact: Toby Kurien <toby@tobykurien.com>

The project to port FreeBSD over to the Pinephone Pro is progressing. The aim of this project is to step by step support components of the Pinephone Pro in FreeBSD so that the device one day might be usable as a highly mobile FreeBSD device.   In this quarter, console output to the screen was enabled, using EFI framebuffer support. This requires using a specific version of U-boot that sets up the EFI framebuffer, which FreeBSD’s kernel is then able to use for output while booting up. While this comes with limitations (like no hardware acceleration), it is a big step forward in making FreeBSD usable on the PinePhone Pro. To make it easier to try the current code changes out, a script was added to the repository to create a flashable image for booting from an SD card. This script downloads and patches a FreeBSD CURRENT mini-memstick image with the custom device tree and kernel. The resulting image can then be copied to an SD card using dd and booted up on the phone. See the repo for details.

Work on enabling the USB port was started but has stalled and help is needed, particularly from someone who understands the USB subsystem and can help move this forward. Currently, some USB controllers are detected by FreeBSD but no USB devices are visible, e.g. the internally connected modem. Help is also needed to port the WiFi driver from Linux, which would be the same driver needed for Raspberry Pi 3b+/4/5 (Broadcom 43455 wifi module connected via SDIO). Anyone wanting to assist can contact me by e-mail.

Sponsor: Honeyguide Group


Cloud

Updating cloud-specific features and bringing in support for new cloud platforms.


FreeBSD on Microsoft HyperV and Azure

Contact: Microsoft FreeBSD Integration Services Team <bsdic@microsoft.com>
Contact: freebsd-cloud Mailing List
Contact: The FreeBSD Azure Release Engineering Team <releng-azure@FreeBSD.org>
Contact: Wei Hu <whu@FreeBSD.org>, <weh@microsoft.com>
Contact: Souradeep Chakrabarti <schakrabarti@microsoft.com>
Contact: Li-Wen Hsu <lwhsu@FreeBSD.org>

In this quarter, we have published the 13.5-RELEASE on Azure Marketplace.

Wei Hu continues bug fixing for FreeBSD MANA NIC device.

Work in progress tasks:

  • Automating the image publishing process and merging to src/release/.

  • Making the process of publishing to Azure Marketplace more smoothly.

  • Support FreeBSD in Azure VM utilities.

Open tasks:

Sponsor: Microsoft for people in Microsoft, and for resources for the rest
Sponsor: The FreeBSD Foundation for everything else


Containers and FreeBSD: Cloud Native Buildpacks

Contact: Robert Gogolok <gogolok@gmail.com>

Cloud Native Buildpacks (CNBs) transform application source code into container images. Those images can run on any cloud. With buildpacks, organizations can concentrate the knowledge of container build best practices within a specialized team, instead of having application developers across the organization individually maintain their own Dockerfiles.

My goal for this quarter was to enable building the tool pack on FreeBSD.

With the following changes, it is now possible to compile pack on FreeBSD:

The next steps are:

  • Provide missing FreeBSD functionality to lifecycle and pack.

  • Further investigate FreeBSD as a build target in lifecycle.

  • Provide lifecycle and/or pack via FreeBSD ports.

  • Investigate the idea of FreeBSD buildpacks for some popular languages, similar to paketo buildpacks.


FreeBSD on EC2

Contact: Colin Percival <cperciva@FreeBSD.org>

FreeBSD is available on both amd64 (Intel and AMD) and arm64 (Graviton) EC2 instances.

In the past quarter, considerable effort has gone into making "hot unplug" (e.g. detaching EBS volumes) work correctly, with several different fixes required on different instance types. This is expected to be fully functional in the upcoming FreeBSD 14.3.

Sponsor: Amazon
Sponsor: https://www.patreon.com/cperciva


Documentation

Noteworthy changes in the documentation tree, manual pages, or new external books/documents.


Documentation Engineering Team

Contact: FreeBSD Doceng Team <doceng@FreeBSD.org>

The doceng@ team is a body to handle some of the meta-project issues associated with the FreeBSD Documentation Project; for more information, see FreeBSD Doceng Team Charter.

Document changes

Handbook
  • The Filesystems chapter has been reworked.

  • The information about official mirrors have been updated.

  • Multiple examples have been updated including vnet, jails, git, etc.

Porter’s Handbook

The following USES were documented:

  • ansible

  • angr

  • apache

  • azurepy

  • electronfix

  • elixir

  • emacs

  • fpc

  • jpeg

  • kodi

  • lazarus

  • mlt

  • mpi

  • ocaml

  • trigger

  • waf

New variables were documented for USES=samba:

  • SAMBA_TALLOC_PORT,

  • SAMBA_TDB_PORT

  • SAMBA_TEVENT_PORT

Website
  • Manual pages for NetBSD 10.1 have been added.

  • Manual pages for Rocky Linux 8.10, 9.4 and 9.5 have been added.

  • Manual pages for FreeBSD 13.5 have been added.

  • Pages for OpenSolaris 2010.03 have been added.

FreeBSD Translations on Weblate

Q3 2024 Status
  • 18 team languages

  • 246 registered users

7 new translators joined Weblate:

  • Squirrel-hue (ES, ES_CL)

  • Javier Faig (ES)

  • Сергей (RU)

  • Renan Birck Pinheiro (PT)

  • Davi Rodrigues (PT)

  • laiis akibo

  • Raoul Taddei (FR_FR)

Languages
  • Chinese (Simplified) (zh-cn) (progress: 7%)

  • Chinese (Traditional) (zh-tw) (progress: 3%)

  • Dutch (nl) (progress: 1%)

  • French (fr) (progress: 1%)

  • German (de) (progress: 1%)

  • Greek (el) (progress: 1%)

  • Indonesian (id) (progress: 1%)

  • Italian (it) (progress: 4%)

  • Korean (ko) (progress: 30%)

  • Norwegian (nb-no) (progress: 1%)

  • Persian (fa-ir) (progress: 2%)

  • Polish (progress: 2%)

  • Portuguese (progress: 0%)

  • Portuguese (pt-br) (progress: 23%)

  • Spanish (es) (progress: 36%)

  • Turkish (tr) (progress: 2%)

We want to thank everyone that contributed, translating or reviewing documents.

And please, help promote this effort on your local user group, we always need more volunteers.

Packages maintained by DocEng

During this quarter the following work was done in packages maintained by doceng@:

Open issues

There are no open PRs assigned to doceng@.

During this quarter the following PR was closed:

  • 276923 www/gohugo link error under poudriere


FreeBSD Wiki

Contact: Mark Linimon <linimon@FreeBSD.org>
Contact: Wiki admin <wiki-admin@FreeBSD.org>

The wiki team needs new blood.

Since the last status report (2024Q3) forward progress has stalled. We have given out several dozen new accounts but most of the changes by these new authors have been to individual pages, not to the overall structure.

Mark Linimon still thinks the wiki could be a great resource if people were willing to put time into it. But right now, there are more complaints about stale data than there are new contributors and new ideas.

It is fair to say that right now, the wiki is on autopilot.

Previous plans that have stalled

Preliminary work was being done on updating the wiki software itself. Earlier, we were looking at switching implementations because MoinMoin development seemed to have stalled, leaving us with an unwanted hanging python2 dependency. However, MoinMoin now claims that they are nearing a 2.0 release. We have not yet tried an install of their latest beta version to test compatibility.

Specific short-term requests for help

If anyone knows about MoinMoin markup, contact Mark.


Vision Accessibility — Accessibility Handbook

Contact: FreeBSD Accessibility mailing list <freebsd-accessibility@FreeBSD.org>
Contact: Alfonso Sabato Siciliano <asiciliano@FreeBSD.org>

The FreeBSD Foundation is supporting a series of projects to enhance accessibility for users with visual impairments.

FreeBSD offers several assistive technologies, thanks to the dedicated work of contributors and committers. An ongoing effort focuses on listing and documenting these accessibility features in a new handbook. Currently, the project centers on documenting features for blind, low-vision, and colorblind users, covering both PORTS and BASE system functionalities. For example: ports for screen magnification, screen readers (which aid users who cannot see the screen), as well as tools for adjusting colors in desktop environments. Additionally, accessibility features available in the BASE system to enhance visibility are also being documented with examples and tips: such as the ability to modify colors, fonts, and sizes in the system’s virtual console vt(4).

The new handbook will be organized into sections. The first section will serve as an introduction, while the second will delve into assistive technologies for visual accessibility. The repository mentioned above provides access to the handbook’s work-in-progress, including the code (in a fork of the FreeBSD "doc" repository, accessibility-book branch) and an HTML preview. Completion and review for publication are expected soon. Future plans include adding a Section 3 for hearing accessibility, a Section 4 for interaction accessibility, and a "Miscellaneous" chapter in Section 1 to cover general aspects. A discussion on this topic is available on the accessibility mailing list.

Furthermore, during this quarter, the port www/edbrowse has been updated. This is a fully command-line web browser designed for compatibility with screen readers. A solution is also being developed to facilitate easy color customization for TUI utilities in the BASE system, with the potential to set high contrast directly from the system installer bsdinstall(8).

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


Ports

Changes affecting the Ports Collection, whether sweeping changes that touch most of the tree, or individual ports themselves.


A bhyve management GUI written in Freepascal/Lazarus

Contact: José Alonso Cárdenas Márquez <acm@FreeBSD.org>

Bhyvemgr is a bhyve management GUI written in Freepascal/Lazarus on FreeBSD. It needs a bunch of tools mostly installed on base system and some installed from ports/packages. The main goal is to be a desktop application focus on desktop user to easily and quickly setup and run virtual machines on FreeBSD hosts.

During this quarter, there were many bugfixes and improvements to Bhyvemgr.

These are some highlights that were added:

  • Improve aarch64 support

  • RDP Login form keeps data of resolution and username used on previous connection while bhyvemgr is running

  • Support for selecting TCP remote connection at com1 of LPC device

  • Fix zombie process bug when xfreerdp and remote-viewer are running from bhyvemgr. Now bhyvemgr uses Tthread instead of only TProcess for it

  • VM name and com1 connection strings can be copied to clipboard from Virtual Machine popup menu

  • Now xfreerdp3 loads arguments from rdp.args file

  • Re-use device forms. It avoids to consume memory each time that device forms are opened/used

  • Network device name can be added/modified manually from Network device form. Take on mind that valid names are tapX or vmnetX (e.g tap0, vmnet0)

  • Log messages support

Bhyvemgr supports aarch64 only on 15-CURRENT and amd64 from FreeBSD 13.x to 15-CURRENT. Also, bhyvemgr can be compiled or installed from ports or pkg binaries with gtk2, qt5 or qt6 interface support.

A big thank to Entersekt for sponsor my work. Now I can use a RockPro64 (aarch64) for testing bhyvemgr on aarch64.

People interested in helping or supporting the project are welcome.

Current version: 1.5.0

TODO

  • Add uart device support

Sponsor: Entersekt


Container orchestration: Overlord, Director and AppJail

Contact: Jesús Daniel Colmenares Oviedo <DtxdF@disroot.org>

AppJail is an open-source BSD-3 licensed framework entirely written in POSIX shell and C to create isolated, portable and easy to deploy environments using FreeBSD jails that behaves like an application.

Director is a tool for running multi-jail environments on AppJail using a simple YAML specification. A Director file is used to define how one or more jails that make up your application are configured. Once you have a Director file, you can create and start your application with a single command: appjail-director up.

Overlord is a fast, distributed orchestrator for FreeBSD jails oriented to GitOps. You define a file with the service intended to run on your cluster and deployment takes seconds to minutes. This orchestration tool uses AppJail, Director and can even create VMs with vm-bhyve, but as its philosophy is "deploy using code" you can create a single file once and deploy many times. Through a tree chaining system Overlord deploys jails on connected systems sharing their resources almost infinitely. See the wiki for articles that use Overlord.


GCC on FreeBSD

Contact: Lorenzo Salvadore <salvadore@FreeBSD.org>

The exp-run to update GCC default version from 13 to 14 has been suspended. Indeed it has been noticed that FreeBSD 13.4 lacks symbols that are used by GCC 14 for linking, please see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=284499#c0 for a more detailed explanation. The symbols are however already present in higher FreeBSD version. Since FreeBSD 13.4 is expected to go out of support soon (on June 30th), it has been decided that it is preferable to suspend the exp-run until then. I plan to put it back on track on July 1st.

In the meantime, work is being done on bugs. Bugs 276070 and 284441 have been fixed. At the time this report is written, some bugs are being discussed addressing special values of the CPUTYPE variable, please see for example 285711.


IPv6 Support on ksocket Netgraph Module

Contact: Seyed Pouria Mousavizadeh Tehrani <info@spmzt.net>

Support for IPv6 has been added to the ng_ksocket(4) module.

The ng_ksocket node type allows users to open a socket inside the kernel and have it appear as a netgraph node. While attempting to export traffic flow using ng_netflow(4), I recognized the need for IPv6 implementation within the ng_ksocket module.

There was a previous attempt to add IPv6 support to the ng_ksocket module (see Phabricator review D23788).

After looking into those changes, I decided to complete the efforts and also add validation to comply with standards.

The result is now available as an updated review on Phabricator.

Now, we can create IPv6 sockets using the ksocket module directly within the netgraph framework. After my changes, I was able to export my traffic flows directly using netgraph without the need to enable IPv4 on my network links.


KDE on 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.

It Goes to 6!

The KDE ports have caught up with the current generation of upstream development and now deliver up-to-date KDE Frameworks 6, KDE Plasma 6, and KDE Gear. Where possible, the default version of every KDE application has been updated to a recent one that uses KDE Frameworks 6. Many Qt-based applications have also been updated to default to a Qt6 flavor.

This positions FreeBSD alongside OpenBSD and Linux distributions with a modern KDE experience.

Qt5 remains in the ports tree. KDE Frameworks 5 remain in the ports tree for some consumers. Qt5 reaches end-of-life from its upstream on May 26, 2025, so it is not recommended for use. KDE Frameworks 5 is in a similar security-only maintenance mode.

Thanks to makc@, arrowd@, and kenrap@ for landing this KDE update in ports.

Infrastructure

  • CMake received several patch-level updates

  • Qt and PySide (the Python bindings for Qt) were updated to 6.8.2


OpenBGPd Fix FIB handling on FreeBSD

Contact: Seyed Pouria Mousavizadeh Tehrani <info@spmzt.net>

This work fixes FIB handling on FreeBSD when an interface is destroyed.

I encountered this issue on one of our OpenBGPd-enabled FreeBSD servers, where destroying an interface caused all our BGP sessions to drop due to a crash in OpenBGPd.

I decided to debug the issue and fix the problem; the results can be found in this GitHub pull request.

Now, we can safely create or destroy virtual or cloned interfaces alongside OpenBGPd without worrying about our BGP sessions.


Improve OpenJDK on FreeBSD

Contact:
Harald Eilertsen <haraldei@freebsdfoundation.org>
FreeBSD Java mailing list <freebsd-java@lists.freebsd.org>

The main goal of this project is to improve OpenJDK support on 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.

We released a port for OpenJDK 23 for FreeBSD at the very end of last year, and have since then fixed issues with font management and some other minor improvements. We have also been following the development of OpenJDK 24 closely, and are just finishing a port for it that should be available by the time this status update is published.

In parallel with porting OpenJDK 24 work has been ongoing on moving the BSD port also to the mainline OpenJDK development tree, and the first patches have been accepted upstream. Currently the focus is on reviving the OpenJDK BSD port project, as well as getting a separate project repository set up under it.

A lot of the work of this quarter has gone into cleaning up the patches of the BSD port based on the development in the upstream mainline and jdk24 branches. Also a lot of time has been spent on improving the results of the built in test suites (jtreg and gtest) on FreeBSD. This has involved both changes to the tests themselves, but also various parts of the low level OpenJDK code. More work is needed to get the final few tests passing, especially on Aarch64, but compared to previous OpenJDK releases on FreeBSD the results have been improving.

Finally, a significant amount of time has been spent on communicating and discussing how to approach the goal of integrating the BSD support in the mainline OpenJDK codebase. The OpenJDK project has been very open, welcoming and supportive of the effort, and seems more than willing to help make this happen in a good way.

Sponsor: The FreeBSD Foundation


Wazuh on FreeBSD

Contact: José Alonso Cárdenas Márquez <acm@FreeBSD.org>

Wazuh is a free and open source platform used for threat prevention, detection, and response. It is capable of protecting workloads across on-premises, virtualized, containerized, and cloud-based environments.

Wazuh solution consists of an endpoint security agent, deployed to the monitored systems, and a management server, which collects and analyzes data gathered by the agents. Besides, Wazuh has been fully integrated with the Elastic Stack or OpenSearch Stack, providing a search engine and data visualization tool that allows users to navigate through their security alerts.

During this quarter, there were many bugfixes and improvements to wazuh ports.

A quickly Wazuh jail installation to test it can be done using Wazuh AppJail-Makejails.

A big thank to Entersekt for sponsor my work. Now I can use a RockPro64 (aarch64) for Wazuh testing/packaging.

People interested in helping with the project are welcome.

Current version: 4.11.0

TODO

  • Add Wazuh cluster-mode infrastructure AppJail makejails

  • Add vulnerability detection support to FreeBSD Wazuh agent

  • Add FreeBSD like official support platform by Wazuh Inc

  • Update FreeBSD SCA Policies to new FreeBSD CIS Benchmark

Sponsor: Entersekt


Third Party Projects

Many projects build upon FreeBSD or incorporate components of FreeBSD into their project. As these projects may be of interest to the broader FreeBSD community, we sometimes include brief updates submitted by these projects in our quarterly report. The FreeBSD project makes no representation as to the accuracy or veracity of any claims in these submissions.

Chinese FreeBSD Community (CFC)

Community member count: QQ group 249 members, WeChat group 175 members

FreeBSD-Ask

Contact: ykla <yklaxds@gmail.com>
Contact: Voosk <roisfrank@icloud.com>

FreeBSD-Ask is an open-source FreeBSD introductory guide written in Simplified Chinese, initiated by ykla from the Chinese FreeBSD Community (CFC). FreeBSD-Ask was established on March 14, 2021.

Updates in this quarter:

As always, feedback and patches are welcome.

Sponsors: Chinese FreeBSD Community (CFC)


FreeBSD Discord Server

Contact: Setesh Strong <setesh.strong@gmail.com>

The FreeBSD Community Discord server has grown to over 5.3K members, with over 3K members active in the last month. To help support our community’s health and pursue growth in project contribution and engagement, the BSDlabs group developed the Helper program, more than two years ago now. After several phases of growth, we have reached the point where the team has thrived enough that it has become necessary to divide it into three distinct functional teams.

Our community health and culture helpers (@moderators) are led by Alexander Vereeken. Our newcomer onboarding and training helpers (@mentors) are led by Alexander Ziaee. Our event organizer and outreach helpers (@organizers) are led by Ahmad Abdulla.

Since the creation of the new teams, all of our helpers have been hard at work, driving growth within the areas of their remit within the program. We are proud to share some of the outcomes of their efforts with you, as well as several of the areas of focus and objectives we will tackle in the upcoming quarter.

Antranig Vartanian led the development of our recurring series of Ask the Greybeards AMAs (Ask Me Anything) with the support of other veteran sysadmins and developers. This recurring event provides an opportunity for users and those still gaining mastery of our platform to meet and learn from the depth of experience our community offers. Special thanks to Michael Dexter and many others for their engagement and support of this event. Your expertise and skills help nurture the future of our ecosystem.

Significant progress into onboarding new contributors has occurred through the efforts of the newcomer helper team under Alexander Ziaee’s leadership. His work has brought newly increased activity to our docs tree.

At the request of Warner Losh, we have created a workspace for #google-summer-of-code on the server. This space provides a location for those engaged with GSoC to ask questions and receive feedback and assistance. In further pursuit of our desire to bridge between silos, we are in the process of establishing a matterbridge bot. This will serve to connect with the #freebsd-gsoc IRC channel, as well as other potential links in the future with FreeBSD’s IRC and Matrix communities.

We are proud to welcome developers working on FreeBSD’s wifi stack to our server. We have created the #wifi-hacking workspace to facilitate their efforts. Special thanks to Adrian Chadd for bringing this opportunity to us, and leading the way in the thriving activity in this workspace.

We are currently in the process of developing our new Co-op Study Club, driven by the leadership of Jesper Schmitz Mouridsen. This will provide members of our community with the opportunity to build their skills in side-by-side study, under the guidance of our newcomer helper team. As a project driven study group, it will develop our members’ passions into strengths, while building comfort and familiarity with contributing to the project via porting, src development, and documentation testing and patching. Experienced mentorship will be on hand to provide learning resources for those who join this study group, answer questions that cannot be answered by peer support, and aiding in overcoming blockers. Our objective is to provide a roadmap and environment for achieving excellence as both developers and FreeBSD contributors.

Thanks to the efforts of community helper Jessica Hawkwell, with the support of events team leader Ahmad Abdulla, we have seen the addition of a #foss-ecosystem channel. This development marks the beginning of the process of bridging between the various silos, both within the FreeBSD community, and in the larger FOSS ecosystem. If you want us to add a link to your segment of the community and it is not already contained in our directory in this channel, please reach out to us.

In addition to the existing tools afforded by Discord for our server, we are currently in the process of upgrading and expanding our infrastructure. This effort focuses on ensuring the availability of Discord bot infrastructure and tooling, as well as restoring etherpad and dpaste functionality for collaboration. We seek to improve support for all of the dedicated developers within the workspaces of our community.

If you are a member of the FreeBSD ecosystem and have not yet connected to our Discord presence, we invite you to do so via the invite link available on the wiki at the top of this report. If you have experience or passion for any of the areas of our current helper teams, or a passion for Discord bot infrastructure development, we would love to have you on our teams. We invite you to contact us via the above contact email, or by sending a DM on Discord (@setesh.strong).


Framework Kernel Module

Contact: Chris Moerz <freebsd@ny-central.org>

The development of the framework-kmod kernel module originated from discussions and collaborative efforts within the FreeBSD Laptop and Desktop Workgroup (LDWG). This module addresses a specific need for dynamic screen dimming functionality, particularly suited for environments where full-featured desktop environments are not in use.

The primary feature of the framework-kmod kernel module is to dynamically dim the screen when the computer is not in use and to restore brightness upon detecting user activity. This functionality is designed to enhance power efficiency and user experience, especially in minimalistic setups.

By default, the module dims the screen very aggressively, dimming it after approximately one second of inactivity. This behavior ensures immediate power savings but may need adjustment based on user preferences. The module’s settings can be customized through sysctls, allowing users to tailor the behavior to their needs. Users can set different brightness levels for the dimmed and bright states, adjust the length of time that needs to pass without any input signal before dimming the screen, and apply different settings depending on whether the laptop is running on a power outlet or battery. Brightness levels can also be adjusted through the use of the keyboard’s brightness control keys.

The module tracks input signals through evdev(4). If no input is detected within the set timeout period, the screen brightness is reduced. Upon detecting user input, the brightness is immediately restored to the previous level. The module requires drm-kmod drivers to be loaded in advance, ensuring compatibility with the necessary graphics drivers.

The framework-kmod is not a general-purpose screen dimming driver. It is specifically designed for use with tty consoles or simple window managers like suckless' dwm or i3. Users of full-featured desktop environments like Gnome or KDE are advised to use the built-in screen dimming functions provided by those environments.

The development of this module was driven by the needs identified during LDWG calls, highlighting the collaborative nature of the workgroup. A port of the framework-kmod has been submitted, making it accessible for broader use and further development by the FreeBSD community.


Laptop and Desktop Work Group (LDWG)

Contact: Chris Moerz <freebsd@ny-central.org>

The FreeBSD Laptop and Desktop Workgroup (LDWG) has continued its dedicated efforts throughout the first quarter.

LDWG holds monthly meetings to discuss the state of FreeBSD on laptops and desktops and to review progress. These meetings are scheduled every second Monday at 5 PM UTC. The next meeting is set for Wednesday, May 14, at 10 AM PST / 1 PM EDT / 5 PM UTC.

A survey has been initiated to explore alternative calling options that would enable participants from APAC regions to join the calls more conveniently.

All calls are now available on YouTube, allowing broader access for interested parties to stay updated on the group’s activities.

The group’s participants have made notable advancements in several areas:

  • Audio Improvements: Enhancements have been made to improve audio quality.

  • Documentation: Significant improvements have been made to the documentation, making it more comprehensive and user-friendly.

  • Wireless Speed and Stability: Efforts have led to better wireless speed and stability, enhancing overall connectivity.

All activities are meticulously documented on the group’s worksheet. LDWG encourages anyone interested in contributing to add their name to the worksheet. If there is any planned or ongoing work, participants are welcome to include it in the worksheet.

The established LDWG’s call agenda includes:

  • News Updates: Sharing news around FreeBSD on desktops and laptops, including work not otherwise covered by the workgroup.

  • FreeBSD Foundation Laptop Project: The project continues to progress well, with reports highlighting the need for volunteers to support testing efforts and the formation of a UX test group.

  • Project Reviews and Announcements: Reviewing and presenting progress, announcing new projects, and calling for actions.

  • Q&A Sessions: Providing a platform to ask questions about ongoing projects; serving as a rallying point to organize developers, users, and stakeholders on focus areas.

LDWG is working to improve the call’s agenda in collaboration with the Enterprise Working Group. Both groups face the challenge of having more areas of interest and work streams than available resources. Therefore, a process is being developed to ensure that available time is spent on matters that have the required resources and attention.

The group is open to anyone interested in the matter. We welcome anyone who wants to join the group and/or calls to do so.

Hope to see you there!


Containers and FreeBSD: Pot, Potluck and Potman

Contact: Luca Pizzamiglio (Pot) <pizzamig@FreeBSD.org>
Contact: Bretton Vine (Potluck) <bv@honeyguide.eu>
Contact: Michael Gmelin (Potman) <grembo@FreeBSD.org>

Pot is a jail management tool that also supports orchestration through Nomad. Potluck aims to be to FreeBSD and Pot what Dockerhub is to Linux and Docker: a repository of Pot flavours and complete container images for usage with Pot and in many cases Nomad.

During this quarter, there was a new Pot release 0.16.1 which includes a number of minor fixes. The FreeBSD port was updated accordingly.

Potluck got a new OnlyOffice Documentserver image that can be used together with the Nextcloud image. Additionally, a large number of images have received improvements and bug fixes again, e.g. Nextcloud Spreed, Grafana, Vault or Consul and all images have been rebuilt for an updated base image.

Last not least, we are in the process of moving the main repository to Codeberg with GitHub acting as a mirror.

As always, feedback and patches are welcome.

Sponsors: Nikulipe UAB, Honeyguide Group


Last modified on: May 20, 2025 by Chris Moerz