A change introduced in commit 5b11f47f0d59c95f6dcf1ff75badede5ec84e72e [1] causes postgresql12-server not to be able to start via its rc script. The %%PG_VERSION%% variable does not get expanded, and the resulting rc script ends up using the literal string. This likely affects versions 10 through 14 as their files/postgresql.in files all have the same string on line 35. As a side note, postgresql15-server is hardcoded to point to ${postgresql_user}/data14 which might cause some funny issues as well. The problem was reported earlier in #264097 but the PR was closed because it referenced portmaster and not postgresqlXX-server. [1] diff excerpt: -eval postgresql_data=${postgresql_data:-"~${postgresql_user}/data12"} +eval postgresql_data=${postgresql_data:-"~${postgresql_user}/data%%PG_VERSION%%"}
Looking at the poudriere built postgresql13-server packages by my 13.1 server I see that the 12.3 version has the problem but the 13.1 version does not. I even rebuilt the 12.3 version with no change. I played around a bit with interactive poudriere jails (12.3 and 13.1) but could not reproduce the issue.
This was a problem fixed in commit 9230d75a823cc4191f (bug #264097) Palle
*** This bug has been marked as a duplicate of bug 264097 ***