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 via email to