Solved PKG: duplicate dependency listing

Out of nowhere, I'm now getting these messages. Any ideas how to fix this?

Code:
Synth repository update completed. 231 packages processed.
All repositories are up to date.
Checking for upgrades (134 candidates):   2%
pkg: aspell: duplicate dependency listing: perl5
pkg: aspell: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  15%
pkg: groff: duplicate dependency listing: perl5
pkg: groff: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  36%
pkg: mysql80-client: duplicate dependency listing: perl5
pkg: mysql80-client: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  37%
pkg: mysql80-server: duplicate dependency listing: perl5
pkg: mysql80-server: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  41%
pkg: opendkim: duplicate dependency listing: perl5
pkg: opendkim: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  42%
pkg: p5-Bit-Vector: duplicate dependency listing: perl5
pkg: p5-Bit-Vector: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  43%
pkg: p5-Carp-Clan: duplicate dependency listing: perl5
pkg: p5-Carp-Clan: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  44%
pkg: p5-Date-Calc: duplicate dependency listing: perl5
pkg: p5-Date-Calc: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  44%
pkg: p5-Digest-HMAC: duplicate dependency listing: perl5
pkg: p5-Digest-HMAC: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  45%
pkg: p5-Error: duplicate dependency listing: perl5
pkg: p5-Error: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  46%
pkg: p5-MIME-Base32: duplicate dependency listing: perl5
pkg: p5-MIME-Base32: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  47%
pkg: p5-MIME-Base64: duplicate dependency listing: perl5
pkg: p5-MIME-Base64: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  47%
pkg: p5-Mail-SPF: duplicate dependency listing: perl5
pkg: p5-Mail-SPF: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  48%
pkg: p5-Net-DNS: duplicate dependency listing: perl5
pkg: p5-Net-DNS: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  49%
pkg: p5-NetAddr-IP: duplicate dependency listing: perl5
pkg: p5-NetAddr-IP: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  50%
pkg: p5-Sys-Hostname-Long: duplicate dependency listing: perl5
pkg: p5-Sys-Hostname-Long: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  50%
pkg: p5-URI: duplicate dependency listing: perl5
pkg: p5-URI: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  53%
pkg: pflogsumm: duplicate dependency listing: perl5
pkg: pflogsumm: duplicate dependency listing: perl5
Checking for upgrades (134 candidates):  80%
pkg: postfix-policyd-spf-perl: duplicate dependency listing: perl5
pkg: postfix-policyd-spf-perl: duplicate dependency listing: perl5
Checking for upgrades (134 candidates): 100%
Processing candidates (134 candidates): 100%
Checking integrity... done (0 conflicting)
 
Code:
$ pkg -vv | sed -nE -e '/^OSVERSION|^ABI/ p' -e '/^Repositories:/,$ p'
ABI = "FreeBSD:14:amd64";
OSVERSION = "1403000";
Repositories:
  FreeBSD-kmods: {
    url             : "pkg+https://pkg.FreeBSD.org/FreeBSD:14:amd64/kmods_quarterly_3",
    enabled         : yes,
    priority        : 0,
    mirror_type     : "SRV",
    signature_type  : "FINGERPRINTS",
    fingerprints    : "/usr/share/keys/pkg"
  }
  Synth: {
    url             : "file:///var/synth/live_packages",
    enabled         : yes,
    priority        : 0
  }
 
By means of using the Synth repository, you seem to rely on locally available packages. Recently there have been a number of new versions of pkg in rapid succession; currently we're at pkg v 2.4.2_1. There have been problems with pkg segfaulting when trying to upgrade.

I suggest you install the most recent pkg v. 2.4.2_1 by building it from the ports tree as this version seems not yet available as a package on quarterly.
 
I suggest you install the most recent pkg v. 2.4.2_1 by building it from the ports tree as this version seems not yet available as a package on quarterly.

Synth does exactly that. It builds the latest versions from the port tree.

Code:
pkg-2.4.2_1                        =   up-to-date with port

What does cat /usr/local/etc/pkg/repos/FreeBSD.conf show?

Here it is:

Code:
$ cat /usr/local/etc/pkg/repos/FreeBSD.conf
# These options are merged with /etc/pkg/FreeBSD.conf

FreeBSD: {
        url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest"
        enabled  : no,
}
 
I believe there was a Perl patch or update this morning. Synth rebuilt it - along with everything that depended on it - and it appears the issue has been resolved.

I tried looking up lang/perl5.42 on the ports page, but I didn’t see any entries for today. So I'm not sure what triggered Synth to rebuild it this morning.

Code:
$ sudo pkg update
Updating FreeBSD-kmods repository catalogue...
FreeBSD-kmods repository is up to date.
Updating Synth repository catalogue...
Synth repository is up to date.
All repositories are up to date.

$ sudo pkg upgrade
Updating FreeBSD-kmods repository catalogue...
FreeBSD-kmods repository is up to date.
Updating Synth repository catalogue...
Synth repository is up to date.
All repositories are up to date.
Checking for upgrades (131 candidates): 100%
Processing candidates (131 candidates): 100%
Checking integrity... done (0 conflicting)
Your packages are up to date.
 
What am I missing out on by disabling it?
Nothing, if you have correctly set up your local build server, I presume using poudriere(8), your packages always match your kernel and other relevant libraries. The 'kmods' repository was introduced during the run of 14.2-RELEASE on a somewhat experimental basis: (Possible solution to the drm-kmod kernel mismatch after upgrade from Bapt). The kmods aims to more quickly adapt to current developments where it concerns packages that contain kernel modules such as wireless and graphics drivers, for example graphics/drm-61-kmod. As a consequence the KAPI interface for a supported branch may have to be broken when, for example, relying on externally sourced Linux drivers. The kmods also solves the problem of remote packages only supporting the lowest supported -RELEASE minor version of a major version during the three month overlap period (think 14.2-RELEASE and 14.3-RELEASE for example).

Starting with 14.3-RELEASE the kmods are by default setup and enabled: 14.3-RELEASE Release Notes.

If you rely on building all your packages locally, you do not need any remotely build packages (except when specifically specified as such in your build config). However, when upgrading (and installing) packages you should not have multiple repositories enabled that provide the same packages, resulting for instance in "duplicate dependency".

I find it somewhat surprising that you did not ran into these issues earlier; perhaps you only recently upgraded from 14.2-RELEASE to 14.3-RELEASE.
 
Back
Top