Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Feb 2016 10:35:48 +0100
From:      "O. Hartmann" <ohartman@zedat.fu-berlin.de>
To:        freebsd-ports <freebsd-ports@freebsd.org>
Subject:   pkg: fail to install packages from local file repository targeted via file:///
Message-ID:  <20160202103548.1b2adab1@freyja.zeit4.iv.bundesimmobilien.de>

next in thread | raw e-mail | index | archive | help
Using nanoBSDbuilding images for embedded systems and poudriere for the
provision of ports, I run into a problem installing packages from the
poudriere repository located on the same filesystem as the nanoBSD build. 

While installing the world and doing configuration steps in etc, I run into the
error shown here while trying to install packages via pkg:

[...]
file:///pool/poudriere/data/packages/head-amd64-head-default/meta.txz: No such
file or directory repository myrepo has no meta file, using default settings
pkg:
file:///pool/poudriere/data/packages/head-amd64-head-default/packagesite.txz:
No such file or directory Unable to update repository myrepo
[...]

The culprit skript-portion in nano.conf is like this section:

[...]

: ${L_ABI={head-amd64"}
cust_pkg_local_cfg() {

    local   RCCONF_PKG RCCONF_REPOS

    RCCONF_PKG="usr/local/etc/pkg.conf"
    RCCONF_REPOS="usr/local/etc/pkg/repos/myrepo.conf"

    mkdir -p ${NANO_WORLDDIR}/usr/local/etc/pkg/repos

    cd ${NANO_WORLDDIR}
    
    cat > ${RCCONF_PKG} <<EOF
    repos_dir: [
        "/etc/pkg",
        "/usr/local/etc/pkg/repos",
        ]
    syslog: false
    autodeps: true
    developer_mode: false
EOF
    cat > ${RCCONF_REPOS} <<EOF
myrepo: {
    url:            "file:///pool/poudriere/data/packages/${L_ABI}",
    sinature_type:  "none",
    enabled:        yes,
}
FreeBSD: {
    enabled: no
}
EOF

# Install packages
env ASSUME_ALWAYS_YES=YES PACKAGESITE="/pool/poudriere/data/packages/${L_ABI}"
${NANO_WORLDDIR}/usr/sbin/pkg -c ${NANO_WORLDDIR} bootstrap env
ASSUME_ALWAYS_YES=YES ${NANO_WORLDDIR}/usr/sbin/pkg -c ${NANO_WORLDDIR} update
-r myrepo env ASSUME_ALWAYS_YES=YES ${NANO_WORLDDIR}/usr/sbin/pkg -c
${NANO_WORLDDIR} install ports-mgmt/portmaster

# Cleanup
rm -rvf ${NANO_WORLDDIR}/var/cache/pkg

}
customize_cmd   cust_pkg_local_cfg

At this very moment, I feel lost - the documentation doesn't give much about
handling local repositories and the path given by 
URL: "file:///pool/poudriere/data/packages/${L_ABI}"
resolves typed in firefox or used via "fetch" - why is this piece of software
pkg not working as expected?

What do I miss here?

Thanks in advance, please CC me, as I do not subscribe this list.

Kind regards,

O. Hartmann



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160202103548.1b2adab1>