Re: Multiarch hinter on package tracker: Shall i obey ?
On Sat, Sep 17, 2016 at 04:00:28PM +0200, Thomas Schmitt wrote:
> i am preparing the Debian package for a new upstream release of libisofs
> and see on its tracker page
> https://tracker.debian.org/pkg/libisofs
> a new "action needed":
>
> "Multiarch hinter reports 1 issue(s)"
Thank you for looking into that.
> The link points to
> https://wiki.debian.org/MultiArch/Hints
>
> But where to see the actual complaint ?
tracker.d.o initially displays a compressed form for action items. On
the left of the item there is a little arrow. Clicking that reveals the
actual issues. This is a generic tracker.d.o UI aspect and not specific
to the multiarch hinter.
> The MultiArch/Hints wiki page says
> "marking it Multi-Arch: foreign usually is safe."
> but does not clearly state what it means by "usually".
There are a few obscure exceptions to that rule. For instance, if you
want a package that is only installable for the native architecture, you
can have it depend on an Architecture: all + Multi-Arch: no package.
Also triggers are ignored by the hinter and post-installation actions of
triggers could turn the hint invalid. For the Multi-Arch: foreign hints,
I am not aware of any real-world exceptional use cases.
I'm still looking for ways to improve the explanation text, but it turns
out that multiarch is hard to explain in general.
> There is no mentioning of "Multi-arch" in
> https://www.debian.org/doc/debian-policy/ch-controlfields.html
There are like 6 bugs for adding multiarch to policy. Progress is slow.
> More Google brings me to
> https://wiki.debian.org/Multiarch/HOWTO
> with the statement:
> "If a package is marked 'Multi-Arch: foreign', then it can satisfy
> dependencies of a package of a different architecture."
That's one of the better ones. Also consider
https://wiki.ubuntu.com/MultiarchSpec if you need a specification-like
document.
> I am about as confused as a year ago:
> "Multi-arch and debian/control"
> https://lists.debian.org/debian-mentors/2015/09/msg00403.html
> All packages got "Multi-arch: same" then, except libisofs-doc which
> got no Multi-arch header at all. I cannot find or remember the reason
> for that.
The reason here is that libisofs-doc is Architecture: all. The spec says
that Multi-Arch: same is not applicable to Architecture: all packages at
all. Thus marking it that way would be invalid.
Also things have changed a little since 2015. The whole business around
adding Pre-Depends on multiarch-support is gone. You can still add
${misc:Pre-Depends} to Pre-Depends to ease backporting, but in general
that transition is over and we don't need that Pre-Depends anymore.
> Could somebody please look into
> https://tracker.debian.org/media/packages/libi/libisofs/control-1.4.4-1
> and tell me what to do ?
Add "Multi-Arch: foreign" to the binary package section of libisofs-doc.
The practical effect is that if you install libisofs-dev for a foreign
architecture, its suggestion of libisofs-doc will become resolvable.
> (And was i really expected to google for a link to the 1.9 MB yaml file ?)
No. You were supposed to click the little arrow. Is there any way to
make that more clear?
Helmut
Reply to: