Closed llfw closed 7 months ago
i didn't realize that pkg-search -x is case insensitive by default for a less intrusive fix, you can add -C, but I think looking at origin is probably better
It's probably fixed already in git as we -o REPOS_DIR and -r ${JAILMNT} for the pkg search, can you test please ?
i tested with master (a656392b661fd309f71d9ce0884853663f1baaf1) and got a different error that i don't understand:
# ~lexi/tmp/poudriere/bin/poudriere jail -c -j test -v 15 -a amd64 -m pkgbase=https://pkg.eden.le-fay.org/base
[00:00:00] Creating test fs at /poudriere/jails/test... done
[00:00:00] Installing 15 amd64 from ...pkg: invalid scheme /FreeBSD:15:amd64/https
pkg: Cannot parse configuration file!
pkg: invalid scheme /FreeBSD:15:amd64/https
pkg: Cannot parse configuration file!
pkg: invalid scheme /FreeBSD:15:amd64/https
pkg: Cannot parse configuration file!
[00:00:00] Recording filesystem state for clean... done
[00:00:00] Jail test 15 amd64 is ready to be used
Exiting with status 0
it seems like the pkg repo has been created wrongly:
# cat /poudriere/jails/test/etc/pkg/pkgbase.conf
pkgbase: {
url: "/FreeBSD:15:amd64/https://pkg.eden.le-fay.org/base"
enabled: yes
}
has the command syntax for creating pkgbase jails changed?
seems like this problem is from jail.sh
:
install_from_pkgbase() {
msg_n "Installing ${VERSION} ${ARCH} from ${SOURCES_URL} ..."
mkdir -p "${JAILMNT}/etc/pkg"
cat <<EOF > "${JAILMNT}/etc/pkg/pkgbase.conf"
pkgbase: {
url: "${SOURCES_URL}/FreeBSD:${VERSION}:${ARCH}/${PKGBASEREPO}"
enabled: yes
}
EOF
$SOURCES_URL
is blank, while $PKGBASEREPO
contains the pkgbase URL.
okay, i got it to work with this command:
# poudriere jail -c -j test -v 15 -a amd64 -m pkgbase=latest -U https://pkg.eden.le-fay.org/base
and this seems to install base packages properly.
okay, i got it to work with this command:
# poudriere jail -c -j test -v 15 -a amd64 -m pkgbase=latest -U https://pkg.eden.le-fay.org/base
and this seems to install base packages properly.
That's the intended syntax yes. Shall we close this bug then ?
this one can be closed (i wasn't sure if you prefer to wait for a release before closing bugs) but should i open one for the error when -U
isn't specified? that could be a bit more clear about the right syntax.
Looks like this was fixed in 07f9a730f9d9b7e45c9ccfc4b78119bc62bd38ab. I added some validations for -U
and updated the docs too.
# poudriere jail -c -j test -v 15 -a amd64 -m pkgbase=latest -U https://pkg.eden.le-fay.org/base
Thanks!
I became blind to the 15
above after repeatedly keying 15.0-CURRENT
based on the manual page example,
… version should in the form of “12.0-RELEASE”. …
I'm good, now:
poudriere jail -c -v 15 -j main -m pkgbase=base_latest -U https://pkg.freebsd.org/
Prerequisites
Describe the bug
installing a jail from pkgbase fails if the 'freebsd-git-devtools' package is available:
this is because
jail.sh
tries to use a package name regexp to match base packages. a more reliable method is to use the package origin, which isbase
for pkgbase packages.quick and dirty fix:
How to reproduce
i don't have a reproducer command because i don't see any way at all to install from pkgbase with a publicly accessible repository; poudriere expects the repository to be at '/latest' but the pkg.freebsd.org repository is at '/base_latest'.
Expected behavior
the jail is installed.
Screenshots
N/A
Environment