* Stephan Sürken abs...@debian.org [141104 14:39]:
with a Debian native package having a setup like (for example) so
debian - debian-wheezy
debian-squeeze/
debian-wheezy/
, i.e., 'debian/' being a symlink, reprepro fails to find
'debian/control', and finally fails with
---
No section and no priority for 'PACKAGE', skipping.
There have been errors!
---
This is due to 'sourceextraction.c: parse_tarfile()', which
iterates through all archive entries, and will never find
debian/control as archive member string. I.e., iterating of
libarchive entries, you only get
debian
debian-wheezy/control
in this case. Maybe some extra code when debian/ is a symlink
may help here, in that loop.
Of course this (i.e., using a symlink here) is not a standard or
desireable setup; however, other Debian tools just work find
with such a setup, and I don't know of any documented
restrictions -- so I think this should be fixed in reprepro.
To quote the manpage:
Note that .dsc files do not contain section or priority, but the
Sources.gz file needs them. reprepro tries to parse .diff and .tar
files for it, but is only able to resolve easy cases. If reprepro
fails to extract those automatically, you have to either specify a
DscOverride or give them via -S and -P
i.e. extracting the section and priority from the source package is a
let's try efford, and there are other cases where I decided reprepro
will just give up (like some cases where debian/control is both in
.orig.tar.gz and .diff.gz).
I'll have a look. I guess the case where the symlink is before the
directory might be easy to add, while the reverse case will likely
fall in the not easily done with sequential parsing, thus not
supported category. Sorry.
There are three workarounds:
- As the manpage says, name section or priority with -S and/or -P or
via a override file.
- Use include with the .changes file. A .changes file usually contains
section and priority for the source, so reprepro
- for private repositories or packages, there is a non-standard (and
I guess also undocumented) extension reprepro has: If a .dsc contains
Section: or Priority: it will use those values instead of looking
further. (Not sure what the best way is to get them there, in specific
workflows adding a XS-Section: in addition to the Section: in the
debian/control might get this. Only suiteable for private packages
of course).
Bernhard R. Link
--
F8AC 04D5 0B9B 064B 3383 C3DA AFFC 96D1 151D FFDC
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org