poudriere: apply ports options

I'm considering switching from ports to building packages with poudriere. However, I use custom options for several ports that differ from the defaults. Is there a way to transfer or apply these custom ports options within poudriere?
 
Yes, you can transfer them to your poudriere jail's options directory, create it if you don't have it. Your ports' options are stored in /var/db/ports directory, poudriere uses same layout too, just copy them to there.

Code:
% cat /usr/local/etc/poudriere.d/142amd64-default-options/x11-wm_dwm/options
# This file is auto-generated by 'make config'.
# Options for dwm-6.5
_OPTIONS_READ=dwm-6.5
_FILE_COMPLETE_OPTIONS_LIST=DMENUANDSTERM DOCS SUPERASMODKEY VOLUMECONTROL XINERAMA
OPTIONS_FILE_UNSET+=DMENUANDSTERM
OPTIONS_FILE_UNSET+=DOCS
OPTIONS_FILE_UNSET+=SUPERASMODKEY
OPTIONS_FILE_UNSET+=VOLUMECONTROL
OPTIONS_FILE_UNSET+=XINERAMA
yusuf@hale ~ % cat /var/db/ports/x11-wm_dwm/options
# This file is auto-generated by 'make config'.
# Options for dwm-6.5
_OPTIONS_READ=dwm-6.5
_FILE_COMPLETE_OPTIONS_LIST=DMENUANDSTERM DOCS SUPERASMODKEY VOLUMECONTROL XINERAMA
OPTIONS_FILE_UNSET+=DMENUANDSTERM
OPTIONS_FILE_UNSET+=DOCS
OPTIONS_FILE_UNSET+=SUPERASMODKEY
OPTIONS_FILE_UNSET+=VOLUMECONTROL
OPTIONS_FILE_SET+=XINERAMA
 
Also I have some jails with different software, for example one jail runs PHP 8.3 and another runs Valkey. Do I have to transfer /var/db/ports from jails to /usr/local/etc/poudriere.d/142amd64-default-options ? Or I can use different ports options for each jail?
 
And last question: Will it work if I use a KVM VPS with FreeBSD 14.2 and ZFS with 4 CPU Cores, 8 GB RAM and 160GB disk?
 
Do I have to transfer /var/db/ports from jails to /usr/local/etc/poudriere.d/142amd64-default-options ?
Yes, you can transfer them directly. The "142amd64-default" here is my jail's name and my ports' tree name, respectively. Your's may be different.

Code:
% poudriere jail -l
JAILNAME VERSION         ARCH  METHOD TIMESTAMP           PATH
134i386  13.4-RELEASE-p3 i386  ftp    2025-02-16 18:14:30 /poudriere/jails/134i386
142amd64 14.2-RELEASE-p1 amd64 ftp    2025-02-18 20:29:40 /poudriere/jails/142amd64
142i386  14.2-RELEASE-p1 i386  ftp    2025-02-14 19:21:23 /poudriere/jails/142i386

% ls /usr/local/etc/poudriere.d
134i386-default-options  142i386-default-options  jails                    ports
142amd64-default-options hooks

% poudriere ports -l
PORTSTREE METHOD TIMESTAMP           PATH
default   null   2025-01-30 16:27:58 /usr/ports/


Or I can use different ports options for each jail?
Each jail should have different port options, they will be in seperate directories like above.


And last question: Will it work if I use a KVM VPS with FreeBSD 14.2 and ZFS with 4 CPU Cores, 8 GB RAM and 160GB disk?
It should work but compilation times differ in different specs.
 
In the production server /usr/local/etc/pkg/repos/FreeBSD.conf I wrote:

Code:
FreeBSD: { enabled: no }
CretaForce: {
          url: "https://pkg.cretaforce.gr/packages/142amd64-default/",
          mirror_type: "none",
          signature_type: "pubkey",
          pubkey: "/root/poudriere.pem",
          enabled: yes
}

but I get this:

Code:
pkg update
Updating CretaForce repository catalogue...
Unable to update repository CretaForce
Error updating repositories!

Any idea why?
 
Back
Top