Upgrading localbase on 13.0-CURRENT using ports-mgmt/synth

I upgraded base from 12.0-ALPHA9 to 13.0-CURRENT (r339639) on a VM today. While preparing for rebuilding localbase, I wiped clean /var/synth/live_packages/{All,Latest}/*, and cleaned the ccache repo stored in /var/cache/ccache. Trouble arose when I ordered ports-mgmt/synth to rebuild some 116 ports according to a specification stored in a local metaport. DEFAULT_VERSION+=ssl=base was being used at the time.

synth status && synth upgrade-system

It turned out that the already installed, and now outdated, pkg, had a serious negative effect on what was going on inside each chroot environment.

I eventually discovered a new package for pkg stored in /var/synth/live_packages/All.

Only by forcefully installing this new pkg package was ports-mgmt/synth able to do its magic.

pkg add -f /var/synth/live_packages/Latest/pkg.txz

The morale of this story is to always upgrade the package manager immediately after migrating to a new major version of the OS.

In hindsight, I should have executed these commands before running ports-mgmt/synth at all:

make -C /usr/ports/ports-mgmt/pkg clean && \
make -C /usr/ports/ports-mgmt/pkg package && \
pkg-static add -f /usr/ports/packages/Latest/pkg.txz && \
make -C /usr/ports/ports-mgmt/pkg clean

Next, I began running these commands:

synth status     local/metaport && \
synth just-build local/metaport && \
synth rebuild-repository

I was forced to remove ports-mgmt/portupgrade from my local metaport as lang/ruby23 isn’t quite ready for OpenSSL 1.1.1 from base nor OpenSSL 1.0.2 from ports. I haven’t tried OpenSSL 1.1.1 from ports, but I expect it to give similar results as the one from base. Don’t worry, patches and workarounds are being worked on in the ports tree and elsewhere.

These commands upgraded localbase of the system and removed the old Ruby:

pkg update && pkg upgrade
pkg delete ruby23

Update 2018-10-27

Running base/head at r339812 and with the ports tree at r483124, setting DEFAULT_VERSION+=ssl=openssl makes all the difference until the various ports catch up with the API changes in OpenSSL 1.1.1.

Published by

Trond Endrestøl

I stopped counting my age years ago. Personal interests besides computers and computer networks include, but are not limited to, astronomy, comics, music, and science (fiction).

Leave a Reply

Your email address will not be published. Required fields are marked *