You don't need to reboot (or restart anything) for these settings to apply.but even after rebooting am still seeing the same error
~]$ cat /usr/local/etc/pkg/repos/custom.conf
custom: {
url: "http://192.168.n.n/15amd64-local-kjpservers",
mirror_type: "none",
enabled: yes,
}
# pkg repos
FreeBSD-ports: {
url : "pkg+https://pkg.FreeBSD.org/FreeBSD:15:amd64/quarterly",
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_quarterly_1",
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_release_1",
enabled : no,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkgbase-15"
}
custom: {
url : "http://192.168.n.n/15amd64-local-kjpservers",
enabled : yes,
priority : 0,
signature_type : "NONE"
}
$ cat /usr/local/etc/pkg/repos/Poudriere*
Poudriere: { url="file:///usr/local/poudriere/data/packages/144amd64-main" }
Poudriere2: { url: "http://0.0.0.0:3169" }
pkg -j jailname upgradeif (mirror_type != NULL) {
if (STRIEQ(mirror_type, "srv"))
r->mirror_type = SRV;
else if (STRIEQ(mirror_type, "http"))
r->mirror_type = HTTP;
else
r->mirror_type = NOMIRROR;
}
I'm struggling to find where I can download or see that.
if (mirror_type != NULL) {
if (STRIEQ(mirror_type, "srv"))
r->mirror_type = SRV;
else if (STRIEQ(mirror_type, "http"))
r->mirror_type = HTTP;
else
r->mirror_type = NOMIRROR;
}
And you seriously think it changed on this point?The current version is 2.8.4 and that is where the behaviour has changed since 2.8.1, so what the code was in 2.7.5 is not relevant. It is the code in 2.8.4 we need to see. I'm struggling to find where I can download or see that.
make fetch extract and then grep mirror_type. I didn't find a way to grep on github. Maybe someone knows?static struct pkg_repo *
pkg_repo_new(const char *name, const char *url, const char *type)
{
struct pkg_repo *r;
r = xcalloc(1, sizeof(struct pkg_repo));
r->dfd = -1;
r->ops = pkg_repo_find_type(type);
r->url = xstrdup(url);
r->signature_type = SIG_NONE;
r->mirror_type = NOMIRROR;
r->enable = true;
r->rwhich_database = true;
r->meta = pkg_repo_meta_default();
r->name = xstrdup(name);
vec_push(&repos, r);
return (r);
}
static struct pkg_repo *
pkg_repo_new(const char *name, const char *url, const char *type)
{
struct pkg_repo *r;
r = xcalloc(1, sizeof(struct pkg_repo));
r->dfd = -1;
r->ops = pkg_repo_find_type(type);
r->url = xstrdup(url);
r->signature_type = SIG_NONE;
r->mirror_type = NOMIRROR;
r->enable = true;
r->meta = pkg_repo_meta_default();
r->name = xstrdup(name);
DL_APPEND(repos, r);
return (r);
}
The code is self-explaining... I can't tell more about this.but it does explain why leaving the line out is equivalent to "none"