=== Hackathon 202506 Kitchener-Waterloo, Canada

Links: +
link:https://wiki.freebsd.org/Hackathon/202506[Hackathon/202506 Wiki Page] URL: link:https://wiki.freebsd.org/Hackathon/202506[]
link:https://wiki.freebsd.org/Hackathon[FreeBSD Hackathon Wiki Page] URL: link:https://wiki.freebsd.org/Hackathon[]

In the week following link:https://www.bsdcan.org/2025/[BSDCan 2025], a hackathon took place in the Kitchener-Waterloo area.

Thanks to Ed Maste for hosting this event at the Communitech Hub in Kitchener.

==== Pictures of the hackathon

Pictures of the hackathon are collected link:https://people.freebsd.org/~emaste/hackathon202506/[here].

National FreeBSD day landed sometime during the hackathon, so Charlie Li treated us to a great DJ set to celebrate, mixing entirely on FreeBSD at an arcade bar in Waterloo :)

==== The work done during the hackathon

===== WiFi Testbed (Li-Wen Hsu)

- The hardware of a proof-of-concept wireless has been set up in Foundation's Kitchener office.
- The current setup is simple:
    - One baremetal machine has multiple wireless interface and,
    - One access point is also connected to the machine via a serial console and a private testing network
- Currently we have following hardware to be passthru to bhyve VM provisioned with the image from link:https//artifact.ci.freebsd.org[Artifact server of FreeBSD CI]
    - Intel AX210
    - Realtek RTL8812AU
- The work continues on connecting it to link:https//ci.freebsd.org[FreeBSD CI cluster] as a downstream job after standard tests finishes.

===== Installer (Joseph Mingrone, Ed Maste, Aymeric Wibo)

- Go through installer step-by-step and create the link:https://wiki.freebsd.org/ImproveInstaller[Improving the Installer] wiki page with the notes we collected.
- lualoader: Add distinct brand for installer (Make it obvious to users that the system is booting into the installer.)
  Patch: link:https://reviews.freebsd.org/D51001[]

===== pkgbase (Ed Maste)

- man:bsdinstall[8]: Default to pkgbase if media contains base packages
  Patch: link:https://reviews.freebsd.org/D50467[]
- man:release[7]: Add set -e to abort upon failure
  Patch: link:https://reviews.freebsd.org/D50383[]

===== Landing scheduler run queue patches (Olivier Certner)

- Land all scheduler runqueue patches.
* link:https://reviews.freebsd.org/D45387[D45387]
* link:https://reviews.freebsd.org/D45388[D45388]
* link:https://reviews.freebsd.org/D45389[D45389]
* link:https://reviews.freebsd.org/D45390[D45390]
* link:https://reviews.freebsd.org/D45391[D45391]
* link:https://reviews.freebsd.org/D45392[D45392]
* link:https://reviews.freebsd.org/D46566[D46566]
* link:https://reviews.freebsd.org/D46567[D46567]
* link:https://reviews.freebsd.org/D50880[D50880]


===== Capsicum (Ed Maste)

- Improvements to the man:capsicum[4] manpage.
  Patches: link:https://reviews.freebsd.org/D50855[], gitref:ce65ff203a4f7ce59c8782f87d90a657f7ccbc46[repository=src]
- Capsicumize man:beep[1] to serve as an easy example of Capsicum.
  Patches: link:https://reviews.freebsd.org/D50709[]

===== s2idle/S0ix/USB4 (Aymeric Wibo, Sheng-Yi Hung)

- Fix some more USB4 driver panics.
- Discuss how s2idle should work w.r.t. the scheduler with Olivier & Mark, and temporarily implement "idle" state for the scheduler (where it just always chooses the idle thread).
- Extend amdgpio driver to service all GPIO interrupts (requirement for S0i3 on AMD).
  We were also looking into how we can consume GPIO interrupts in device drivers on x86 for stuff like reducing the latency of the Framework trackpad with Sheng-Yi.
- Implement some more S0i3 debugging features for AMD to help us debug why we would not be entering S0i3.

===== Ports (Joseph Mingrone)

- [.filename]#Mk/Scripts/qa.sh#: Fix false positives in LIB_DEPENDS warnings
  Patch: https://reviews.freebsd.org/D50860[]
- package:editors/emacs-devel[]: Update to 2025-06-17 snapshot
  Patch: gitref:4170f65753805c08842bd6b200efd8d5ae20d464[repository=ports]

===== Miscellaneous (Ed Maste, Olivier Certner, Sheng-Yi Hung, Li-Wen Hsu)

- Enable sccache support as an alternative to ccache when building (through `WITH_CCACHE_BUILD` environment variable).
  Commit: gitref:10cb3979a9bde6c8e441e3ba4aa5fd09963c484f[repository=src]
- Discussion on the CPPC implementation (Sheng-Yi, Olivier), see in particular https://reviews.freebsd.org/D49587[D49587].
- Other various fixes.
  Patches: https://reviews.freebsd.org/D50876[D50876], gitref:956100d60fa86daebc1bd46ea62f207f6b54d93d[repository=src], gitref:fc77abfd1e62751b0c76cd5d8ef3299b8ca398c6[repository=src], https://reviews.freebsd.org/D50938[D50938], gitref:6d8cfd29d477c64376b3e286946cddb93c7373c5[repository=src], gitref:4f33d073003ccd91390709e14e5c1bf1f0c1c85c[repository=src]

Sponsor: The FreeBSD Foundation
