Re: workflow for managing ports patches against /usr/ports in poudriere

From: Juraj Lutter <otis_at_FreeBSD.org>
Date: Fri, 27 Mar 2026 16:06:36 UTC

> On 27. Mar 2026, at 16:52, Lexi Winter <ivy@freebsd.org> wrote:
> 
> void wrote in <acal_3lhCUYvXjwj@int21h>:
>> On IRC I've been advised to use overlays for this.
>> So let's say there's a port and the patches for it aren't in the tree.
>> I download a fresh ports tree, null mount it and make that my overlay tree.
>> Then strip out all the ports I don't want to patch, then patch the port in the
>> overlay.
>> 
>> Then
>> 
>> poudriere bulk -j builder -p /usr/ports -O overlay category/patched-port
>> 
>> is this correct? Or is the patch just put somewhere in the overlay tree?
>> Or is there some documentation explaining exactly what to do?
>> I have around five or so ports needing patches and the patches aren't in the
>> official tree yet.
> 
> i just have /usr/ports configured as a null ports tree:
> 
> # poudriere ports -c -p default -m null -M /usr/ports
> 
> then i can do whatever i want with /usr/ports (update from git, apply
> local patches, whatever) and Poudriere just uses whatever is there.
> 
> from what i understand, i don't think overlays is the right way to go
> here.


Overlays are handy if you keep your /usr/ports on tip of “main” branch, for example.

—
Juraj Lutter
otis@FreeBSD.org