Hi all!I've always thought that adding Multi-Arch: foreign to Architecture: any binaries was somewhat trivial in most cases. For example, if I have a C program which converts Markdown into HTML I can set it MA:foreign since of course its behaviour is the same regardless of its architecture.
And that's how I've always approached this.A couple of days ago, though, I've had an interesting discussion with Patrick Franz (delta-one) about this exact topic: setting MA:foreign for the md2html package (currently in NEW). You can find the full discussion at <https://salsa.debian.org/qt-kde-team/3rdparty/md4c/-/merge_requests/3>, but I'll try to summarize it here.
In short, Patrick makes this interesting argument, which I find somewhat unlikely but still valid:
Assume that package foo depends on md2html and md2html is marked as M-A:foreign. That would mean that you can install md2html:s390x on your system and it would satisfy foo's dependencies because md2html satisfies the dependencies of any architechture. As you correctly pointed out, you cannot run md2html:s390x on your amd64 system but if marked M-A:foreign you're saying it's fine to do so.
I'd recommend to read the full thread on the merge request to get the full picture. It isn't that long.
Why isn't this an issue? Or am I fundamentally misunderstanding how Multi-Arch: foreign works?
Thanks all! Bye :)
Attachment:
signature.asc
Description: PGP signature