Jan 272019

After enabling the report notifications yesterday, they failed to go out. Why? A hardcoded hostname in a Perl module. Here are the errors I found this morning. from=’FreshPorts Watch Daemon <FreshPorts-Watch@FreshPorts.org>’ to=’dvl@example.org’ subject=’FreshPorts daily new ports’ could not open Email::Sender. from=’FreshPorts Watch Daemon <FreshPorts-Watch@FreshPorts.org>’ to=’dvl@example.org’ subject=’FreshPorts daily new ports’ errorcode=’unable to establish SMTP connection to […]

Jan 262019

Ever since the new server went into production, sometime in 2017, the notification emails, which tell you what has changed, have been coming from the old server. I never did that changeover. The old server was still processing incoming commits, so the notifications were accurate. However, new accounts would not get notifications and changes to […]

Jan 042019

When the website enters maintenance mode, there are a few steps to ensure the database is not updated while we dump the data, but still allow the website to display pages. Disable ingress commit processing In the ingress host (for example, x8dtu-ingress01), stop the FreshPorts daemon: [dan@x8dtu-ingress01:~] $ sudo svc -d /var/service/freshports/ [dan@x8dtu-ingress01:~] $ Ensure […]

Jan 042019

x8dtu contains two jails for database servers: x8dtu-pg01 and x8dtu-pg02. At any given time, one is the production database server, and contains the IP address Let’s assume x8dtu-pg02 is on PostgreSQL 10.6 and we are upgrading to PostgreSQL 11.1 on x8dtu-pg01 The new packages would be installed on x8dtu-pg01. pg_dump would be run on […]

Jan 042019

This procedure is rarely used, but is documented nonetheless. A database server change is usually accomplished by moving the IP address from one server to another, not by adjusting the clients. The production database server is usually at When changing from one database server to another, there are a few configuration files to update: […]

Dec 272018

I originally documented this so I would have a reference while tracking down the problem. I have since solved the issue and you can jump to the bottom of this post to find the solution. What I do not know is why this was not an issue under PostgreSQL 10.6 but was under PostgreSQL 11.1. […]

Oct 062018

From IRC: [Oct 05 22:41] zi: we have conflict matches: https://dev.freshports.org/security/openssl/ [Oct 06 09:08] dvl: cute. possible to add in a clickable link to take you to that matching port? :) [Oct 06 10:50] zi: That matching port, it’s just a package name, sometimes there is a matching port, sometimes there is not… But yeah, […]

Oct 042018

Today I updated the fp-listen and freshports daemons. These are the scripts which invalidate the cache and process incoming commits, respectively. No code changes were made, just the installations directories. Previously, this code when into /var/service but now they go into /usr/local/libexec/freshports-service and I create a symlink from /var/service as as required. This confirms to […]

Sep 262018

This post serves two goals: document the CONFLICTS implementation within FreshPorts show how you can use triggers to update a secondary table The FreeBSD ports tree / package collection has a method for resolving conflicts. This feature allows a port maintainer to specify what, if any, packages conflict with a given port. The reasons why […]