[Pkg-zsh-devel] Bug#808977: zsh-common: Please add Multi-Arch: foreign

Elrond elrond+bugs.debian.org at samba-tng.org
Tue Dec 29 11:08:12 UTC 2015


Hi,

On Mon, Dec 28, 2015 at 15:07:08 +0000, Daniel Shahaf wrote:
[...]
> Does zsh-syntax-highlighting need this set too?
[...]
> So, unless I hear otherwise, I'll go aead and set that for z-sy-h too.

TL;DR
- Go ahead
- zsh itself probably should be "Multi-Arch: allowed"
- The "Depends: zsh" probably should be "zsh:any"


More details:

First of all, this is only going to be relevant, if/when
other packages depend on zsh-sy-h.

So let's assume we have zsh-foo, which depends on zsh-sy-h.
Why is zsh-foo depending on zsh-sy-h?  To provide the extra
script files and use them. That's an architecture
independant interface being used. So that's the base answer
to the question: Use "foreign".

zsh-sy-h itself pulls in zsh. It currently pulls the main
arch of zsh. But really, it does not need a specific arch
of zsh, because the reason it needs zsh, is just to let zsh
read the script files. Any (runnable) arch version could do
that. So it probably should depend on zsh:any instead.
Read on, why keeping "Depends: zsh" and marking zsh
"Multi-Arch: foreign" does not work.

At the first glance, zsh could be "foreign" too, because it
provides an interpreter to its users (i.e. zsh-sy-h).
But that's only half of the story.  It also has a shared
library interface to load extensions.  So zsh-extension-bar
could provide zsh_bar.so and so it needs the same arch of
zsh.  So zsh probably should be tagged "Multi-Arch:
allowed" (this is basicly, what python is doing, I think).

Extra note: If someone needs a specific arch version of zsh
and zsh-sy-h, they should "Depends: zsh" and not let
zsh-sy-h pull that in.  Example: zsh-foo2 uses the syntax
highlighting and has a zsh_foo2.so in 32 bit.  If it
only depends on zsh-sy-h, then that could pull in zsh in 64
bit.  zsh_foo2.so not working.  So zsh-foo2 should
explicitly depend on zsh (without :any).


> Cheers,
> 
> Daniel


Cheers

Elrond



More information about the Pkg-zsh-devel mailing list