Solved FreeBSD-base has a wrong packagesite

Hi guys,

I am trying to make friend with FreeBSD-base but it looks like it is quite picky and selective...

I use this repository as recommended by the Handbook:
Code:
FreeBSD-base {
    url = "pkg+https://pkg.freebsd.org/${ABI}/base_release_${VERSION_MINOR}";
    mirror_type = "srv";
    signature_type = "fingerprints";
    fingerprints = "/usr/share/keys/pkg";
    enabled = yes;
}

However I get a lot of complains:
Code:
# pkg update -r FreeBSD-base
Updating FreeBSD-base repository catalogue...
pkg: Repository FreeBSD-base has a wrong packagesite, need to re-create database
Fetching meta.conf: 100%    179 B   0.2kB/s    00:01   
Fetching data.pkg: 100%   80 KiB  81.6kB/s    00:01   
pkg: No trusted public keys found
FreeBSD-base repository is up to date.
FreeBSD-base is up to date.

# pkg update
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
Updating FreeBSD-ports-kmods repository catalogue...
FreeBSD-ports-kmods repository is up to date.
Updating FreeBSD-base repository catalogue...
pkg: Repository FreeBSD-base has a wrong packagesite, need to re-create database
Fetching meta.conf: 100%    179 B   0.2kB/s    00:01   
Fetching data.pkg: 100%   80 KiB  81.6kB/s    00:01   
pkg: No trusted public keys found
FreeBSD-base repository is up to date.
All repositories are up to date.

How can I fix this?

Thanks... 🙏
 
Last edited:
Hi guys,

I am trying to make friend with FreeBSD-base but it looks like it is quite picky and selective...

I use this repository as recommended by the Handbook:
Code:
FreeBSD-base {
    url = "pkg+https://pkg.freebsd.org/${ABI}/base_release_${VERSION_MINOR}";
    mirror_type = "srv";
    signature_type = "fingerprints";
    fingerprints = "/usr/share/keys/pkg";
    enabled = yes;
}

However I get a lot of complains:
Code:
# pkg update -r FreeBSD-base
Updating FreeBSD-base repository catalogue...
pkg: Repository FreeBSD-base has a wrong packagesite, need to re-create database
Fetching meta.conf: 100%    179 B   0.2kB/s    00:01   
Fetching data.pkg: 100%   80 KiB  81.6kB/s    00:01   
pkg: No trusted public keys found
FreeBSD-base repository is up to date.
FreeBSD-base is up to date.

# pkg update
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
Updating FreeBSD-ports-kmods repository catalogue...
FreeBSD-ports-kmods repository is up to date.
Updating FreeBSD-base repository catalogue...
pkg: Repository FreeBSD-base has a wrong packagesite, need to re-create database
Fetching meta.conf: 100%    179 B   0.2kB/s    00:01   
Fetching data.pkg: 100%   80 KiB  81.6kB/s    00:01   
pkg: No trusted public keys found
FreeBSD-base repository is up to date.
All repositories are up to date.

How can I fix this?

Thanks... 🙏
Change the fingerprints to: fingerprints = "/usr/share/keys/pkgbase-${VERSION_MAJOR}";

Why base_release_0 uses /usr/share/keys/pkgbase-15 and base_latest/base_weekly uses /usr/share/keys/pkg i don't know.
 
Change the fingerprints to: fingerprints = "/usr/share/keys/pkgbase-${VERSION_MAJOR}";

Why base_release_0 uses /usr/share/keys/pkgbase-15 and base_latest/base_weekly uses /usr/share/keys/pkg i don't know.
Is this confirmed? That base_release uses pkgbase-VERSION AND base_latest and base_weekly use pkg only
 
Change the fingerprints to: fingerprints = "/usr/share/keys/pkgbase-${VERSION_MAJOR}";

Why base_release_0 uses /usr/share/keys/pkgbase-15 and base_latest/base_weekly uses /usr/share/keys/pkg i don't know.

That solved the issue... However it is totally confused...
 
The linked section only indicates that it is not possible to upgrade/update from a Alpha/Beta build to the release version due to "late breaking changes". It does not explain the why base_release_0 uses one set of keys and the other two (base_latest and base_weekly) another set.

I'm just mentioning this because the handbook has this information at the moment: https://docs.freebsd.org/en/books/handbook/cutting-edge/#_preparations

Code:
FreeBSD-base {
    url = "pkg+https://pkg.freebsd.org/${ABI}/base_release_0";
    mirror_type = "srv";
    signature_type = "fingerprints";
    fingerprints = "/usr/share/keys/pkg";
    enabled = yes;
}

And as can be seen in the git repo: https://cgit.freebsd.org/src/tree/usr.sbin/pkg/FreeBSD.conf.quarterly-release?h=releng/15.0

But when using base_latest/base_weekly you have to use another set:

Code:
FreeBSD-base: {
  url: "pkg+https://pkg.FreeBSD.org/${ABI}/base_latest",
  mirror_type: "srv",
  signature_type: "fingerprints",
  fingerprints: "/usr/share/keys/pkg",
  enabled: no
}

This is a bit confusing and has led to some issues with upgrades as can been seen on the forums.
 
What OS version are you actually running?
Please post the output of pkg -vv | sed -nE -e '/(OSVERSION|ABI|BACKUP)/ p' -e '/^Repositories:/,$ p'
Hi,

15-STABLE (same string on freebsd-version -rku)

$ pkg -vv | sed -nE -e '/(OSVERSION|ABI|BACKUP)/ p' -e '/^Repositories:/,$ p'
IGNORE_OSVERSION = false;
BACKUP_LIBRARIES = false;
BACKUP_LIBRARY_PATH = "/usr/local/lib/compat/pkg";
ABI = "FreeBSD:15:amd64";
ALTABI = "freebsd:15:x86:64";
OSVERSION = "1500502";
Repositories:
FreeBSD-ports: {
url : "pkg+https://pkg.freebsd.org/FreeBSD:15:amd64/latest",
enabled : yes,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkg"
}
FreeBSD-ports-kmods: {
url : "pkg+https://pkg.freebsd.org/FreeBSD:15:amd64/kmods_latest",
enabled : yes,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkg"
}
FreeBSD-base: {
url : "pkg+https://pkg.freebsd.org/FreeBSD:15:amd64/base_weekly",
enabled : yes,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkg"
}
 
Hi guys,

I apology, I messed everything by myself.
I restored the repository the way they must do. Them were already setup and I made a pebcak... 🤦‍♂️

Anyway I am still convinced that FreeBSD should use a simpler scheming naming and not the smarter... 🤔
 
Back
Top