protonscr

Debian packaging: Add Provides: steam field for the steam package

steamclosed reviewed
ValveSoftware/steam-for-linux#1381 · opened 2013-02-07 by tjormola · updated 2013-02-08 · 3 comments · github
Ttjormola 2013-02-07 github

Hi,

I'm using 64-bit Ubuntu 12.04 LTS. I'm able to manually install steam from your repo just great. But I'd like to add steam as dependency to a meta Debian package that I'm maintaining for pulling stuff I need installed on a new machine quickly. However, if your native platform is amd64, this doesn't work since the steam package provided by Valve is known with the name "steam:i386" as it's compiled for i386 architecture by APT. If the meta package declares "Depends: steam" in its debian/control file, APT is only able to pull the steam as dependency on another i386 machine but not on amd64. And unfortunately you can't declare architecture in the depend in the meta package like this "Depends: steam:i386", it just won't work.

The workaround would be to add "Provides: steam" in the "Package: steam" section of the debian/control file for the steam source package. By providing a virtual package name in the steam package like this, you should be able to pull the steam package as a dependency also on amd64. Could you please do that for the future packaging, thanks?

Hhyperair 2013-02-08 github

No, actually what you propose won't work, because packages cannot declare dependencies on any specific architecture other than their own. See https://wiki.ubuntu.com/MultiarchSpec for more information.

The proper solution would be to set "Multi-Arch: foreign" in the binary package, so that it can be used to satisfy dependencies of other (foreign) architectures.

Sslouken 2013-02-08 github

Which we have actually done in the latest update. :)

Thanks!

Ttjormola 2013-02-08 github

Ok, my bad. That makes sense. Waiting for the update to hit the repo and check it out ;)

Nothing extracted yet.