Bug 193840

Summary: [ARM] pkg does not see valid packages in the repository
Product: Ports & Packages Reporter: Sean Bruno <sbruno>
Component: Individual Port(s)Assignee: Baptiste Daroussin <bapt>
Status: Closed FIXED    
Severity: Affects Only Me CC: Andrew, bapt, bdrewery, mikael, nox, remko, rene, sson
Priority: Normal Keywords: needs-qa
Version: Latest   
Hardware: arm   
OS: Any   

Description Sean Bruno freebsd_committer freebsd_triage 2014-09-22 16:33:38 UTC
Running pkg 1.3.7 on ARM and using the package repo at http://chips.ysv.freebsd.org/packages/11armv632-default/ downloads meta data files but reports no valid packages are available.

Is this a arch issue, where pkg thinks it is a different arch than the repo?
Comment 1 Remko Lodder freebsd_committer freebsd_triage 2014-09-23 19:59:07 UTC
It seems that my local repo sees it just fine from the pi:

Updating evilcoder repository catalogue...
Fetching meta.txz: 100%   820 B   0.8k/s    00:01    
Fetching digests.txz: 100%  234 KB 239.9k/s    00:01    
Fetching packagesite.txz: 100%  543 KB 555.6k/s    00:01    
Processing new repository entries: 100%
evilcoder repository update completed. 2710 packages processed:
  0 updated, 0 removed and 2710 added.
Comment 2 Remko Lodder freebsd_committer freebsd_triage 2014-09-23 20:03:49 UTC
and further for installing boost-all:

# pkg install boost-all
Updating FreeBSD repository catalogue...
pkg: http://pkg.FreeBSD.org/freebsd:11:armv6:32:el:eabi:softfp/latest/meta.txz: Not Found
pkg: repository FreeBSD has no meta file, using default settings
pkg: http://pkg.FreeBSD.org/freebsd:11:armv6:32:el:eabi:softfp/latest/digests.txz: Not Found
pkg: Unable to update repository FreeBSD
Updating evilcoder repository catalogue...
evilcoder repository is up-to-date.
All repositories are up-to-date.
pkg: Repository FreeBSD cannot be opened. 'pkg update' required
Updating database digests format: 100%
New version of pkg detected; it needs to be installed first.
The following 1 packages will be affected (of 0 checked):

Installed packages to be UPGRADED:
        pkg: 1.3.7 -> 1.3.8 [evilcoder]

The process will require 28 KB more space.
2 MB to be downloaded.

Proceed with this action? [y/N]: y
Fetching pkg-1.3.8.txz: 100%    2 MB   1.1M/s    00:02    
Checking integrity... done (0 conflicting)
[1/1] Upgrading pkg from 1.3.7 to 1.3.8: 100%
Updating evilcoder repository catalogue...
evilcoder repository is up-to-date.
Updating FreeBSD repository catalogue...
pkg: http://pkg.FreeBSD.org/freebsd:11:armv6:32:el:eabi:softfp/latest/meta.txz: Not Found
pkg: repository FreeBSD has no meta file, using default settings
pkg: http://pkg.FreeBSD.org/freebsd:11:armv6:32:el:eabi:softfp/latest/digests.txz: Not Found
pkg: Unable to update repository FreeBSD
All repositories are up-to-date.
pkg: Repository FreeBSD cannot be opened. 'pkg update' required
The following 5 packages will be affected (of 0 checked):

New packages to be INSTALLED:
        boost-all: 1.55.0 [evilcoder]
        boost-libs: 1.55.0_3 [evilcoder]
        icu: 53.1 [evilcoder]
        boost-jam: 1.55.0 [evilcoder]
        boost-docs: 1.55.0 [evilcoder]

The process will require 352 MB more space.
45 MB to be downloaded.

Proceed with this action? [y/N]: y
Comment 3 Rene Ladan freebsd_committer freebsd_triage 2014-09-26 21:04:34 UTC
Does it help if you type 'pkg repo' in the directory containing the All and Latest directories after poudriere is done? That worked for my local build.
Comment 4 Kubilay Kocak freebsd_committer freebsd_triage 2014-09-28 02:29:54 UTC
Assign to bapt for triage. Do we know yet if this belongs in an upstream issue?
Comment 5 Mikael Urankar freebsd_committer freebsd_triage 2014-09-28 07:41:33 UTC
The digests file is empty if you do a 'pkg repo' on an armv6 platform. It works fine if you do it on amd64.
pkg-devel-1.4.0.p.a15 is also affected by this.
Comment 6 Sean Bruno freebsd_committer freebsd_triage 2014-10-04 20:45:47 UTC
This is a bug in qemu-bsd-user.  The implementation of sendmsg() was making ancillary data mandatory and rejecting pkg(8) from using sendmsg() with an invalid pointer in msghdr->msg_control which is supposed to be a struct cmsghdr (see sys/socket.h).

This has been resolved in my qemu-user branch and will be pushed to ports after review by the maintainer.



https://github.com/seanbruno/qemu-bsd-user/commit/ad92220df37d1ab3120316fcc436071c78817561
Comment 7 Juergen Lock freebsd_committer freebsd_triage 2014-10-04 21:48:53 UTC
Committed to ports: (emulators/qemu-devel, emulators/qemu-user-static)

https://svnweb.freebsd.org/changeset/ports/369997

(Sorry I missed this PR so no dfilter mail...)