pkg: fail to install packages from local file repository targeted via file:///

Matthias Andree matthias.andree at gmx.de
Fri Feb 5 07:11:23 UTC 2016


Am 04.02.2016 um 11:29 schrieb O. Hartmann:
> On Tue, 02 Feb 2016 18:34:01 +0100
> Patrick Hess <patrickhess at gmx.net> wrote:
> 
>> O. Hartmann wrote:
>>> 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  
>>
>> These files are supposed to be created by "pkg repo". I'm not
>> familiar with this nanoBSDbuilding thingamabob, but what happens
>> if you just run
>>
>>     pkg repo /pool/poudriere/data/packages/head-amd64-head-default
>>
>> manually?
>>
>>> the documentation doesn't give much about handling local repositories  
>>
>> This particular issue is not specific to local repos. In fact,
>> any pkg repo, no matter how it's being accessed, should provide
>> these two files.
>>
>> Patrick
> 
> After checking the setup of NanoBSD's and after ensuring the correct
> installation of a local package repository via poudriere, exchanging the
> PACKAGESITE (url: in repos.conf) with an official site like 
> 
> url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
> 
> does not have any issues.
> 
> poudriere(8) provides at the location specified by my alternative, local
> repositories' path 
> 
> meta.txz
> 
> as well as 
> 
> packagesite.txz
> 
> but they are symbolic links,
> 
> [...]
> ls -l /pool/poudriere/data/packages/head-amd64-head-default/
> total 3
> lrwxr-xr-x  1 root  wheel  11  1 Feb. 15:04 All -> .latest/All
> lrwxr-xr-x  1 root  wheel  14  1 Feb. 15:04 Latest -> .latest/Latest
> lrwxr-xr-x  1 root  wheel  19  1 Feb. 15:04 digests.txz -> .latest/digests.txz
> lrwxr-xr-x  1 root  wheel  16  1 Feb. 15:04 meta.txz -> .latest/meta.txz
> lrwxr-xr-x  1 root  wheel  23  1 Feb. 15:04 packagesite.txz
> 
> It seems that pkg is not handling links - either by intention for security
> reasons or by mistake - or I miss some neat configuration option.
> 
> Since a remote repo works perfectly as mentioned above, but the local
> repository created by poudriere (I do not doubt the correctnes of poudriere's
> directory hierarchy because it is as described in pkg-repo(8) and
> pkg-repository(5)), I consider this behaviour a bug. FILE: is supported by
> fetch(3), and there is no menetioning of the exclusion of symbolic links.

Oliver,

similar links to be seen on my system,
> $ ls -l /usr/local/poudriere/data/packages/101amd64-default/
> total 0
> lrwxr-xr-x  1 root  wheel  11  7 Feb  2015 All -> .latest/All
> lrwxr-xr-x  1 root  wheel  14  7 Feb  2015 Latest -> .latest/Latest
> lrwxr-xr-x  1 root  wheel  19  7 Feb  2015 digests.txz -> .latest/digests.txz
> lrwxr-xr-x  1 root  wheel  16  7 Feb  2015 meta.txz -> .latest/meta.txz
> lrwxr-xr-x  1 root  wheel  23  7 Feb  2015 packagesite.txz -> .latest/packagesite.txz

pkg does seem to follow these links here, with   url:
"file:///usr/local/poudriere/data/packages/101amd64-default/.latest/",

but I do see a difference in that packagesite is not a link on my
system, but if I remove the ".lastest/" part from the url, it still
works for me.  FreeBSD 10.2 amd64, pkg 1.6.3,


Are you using special kernels (unstable -CURRENT),
special file systems, or
special versions of pkg?



More information about the freebsd-ports mailing list