Edit /etc/make.conf and /usr/local/etc/synth/LiveSystem-make.conf, changing DEFAULT_VERSIONS+=python=3.7 to DEFAULT_VERSIONS+=python=3.8, and DEFAULT_VERSIONS+=python3=3.7 to DEFAULT_VERSIONS+=python3=python3.8.

diff -u -r1.32 /etc/make.conf
--- /etc/make.conf   16 Feb 2021 10:18:47 -0000      1.32
+++ /etc/make.conf   27 Apr 2021 06:06:04 -0000
@@ -67,9 +67,9 @@
 DEFAULT_VERSIONS+=perl5=5.32
 DEFAULT_VERSIONS+=pgsql=11
 DEFAULT_VERSIONS+=php=7.4
-DEFAULT_VERSIONS+=python=3.7
+DEFAULT_VERSIONS+=python=3.8
 DEFAULT_VERSIONS+=python2=2.7
-DEFAULT_VERSIONS+=python3=3.7
+DEFAULT_VERSIONS+=python3=3.8
 DEFAULT_VERSIONS+=ruby=2.7
 DEFAULT_VERSIONS+=rust=rust
 DEFAULT_VERSIONS+=samba=4.13

Ensure Synth’s flavour index is up to date. Or, remove it, typically /var/cache/synth/LiveSystem-index, and run synth status to recreate it. Otherwise, you’ll end up with some strange whining:

www/serf scan aborted because dependency could not be located.
/usr/local/bin/scons-3.8:devel/scons@py38 (required dependency of www/serf) does not exist.
Scan of local/[REDACTED]-localbase failed, it will not be considered.
Scanning existing packages.
Queue integrity lost!   (Synth must exit)

Here are three handy vi(1) commands when editing local metaports:

:g/@py37/s//@py38/
:g/-py37/s//-py38/
:g/py37-/s//py38-/

Maybe the above could be simplified to

:g/py37/s//py38/g

without any ill side effects.

In any case, it’s recommended to scrutinise the output of cvs diff before committing.

When updating your packages it may be necessary to run this command sequence at least twice in a row.

pkg update -f && pkg upgrade && pkg autoremove

Leave a Reply

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

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>