Re: Go (golang) packaging, part 2
On Wed, Jan 30, 2013 at 09:22:12AM +0100, Michael Stapelberg wrote:
> > 3. Software packages from Apt cannot declare dependencies against
> > language-specific packages, for the same reasons highlighted in
> > #1.
> Irrelevant argument in our case, as outlined earlier in the
That's not quite true.
If a Debian package uses a service (think database, webserver,
etc) provided by a laguage-specific package, you cannot declare
such dependency because Apt doesn't have visibility into the
other system's information.
At that point you are in the Rubygems situation, where you have
to start packaging the language-specific packages for Debian.
You get into trouble when rubygems sees package-0.0.1 installed
(and managed by dpkg) and the user installs (via gems)
application-1.0.0 which declares a dependency on package-0.1.0.
Now what would you expect to happen?
rubygems tells dpkg to upgrade package-0.0.1? What about the
other stuff managed by dpkg which depends on package-0.0.1?
rubygems installs package-0.1.0 on its own? What happens to
package-0.1.0 managed by dpkg?
What happens if application-1.0.0 gets packaged for dpkg?
Should it be handed over from one system to the other?
Should rubygems packages be hidden from dpkg, let the two
systems coexist in parallel?
This situation gets so messy, that some Ruby developers prefer
to _not_ install ruby via dpkg at all. And they get mad when
something in the dependency chain pulls Ruby into the system.