mojira.dev
MCL-13662

Minecraft.deb depends on libpango1.0-0 (transitional package)

Hello,

the Minecraft.deb package can not be cleanly installed any more due to the fact that it depends on the transitional package libpango1.0-0. The package libpango1.0-0 was introduced in 2013 and was now removed from the testing repository for good reasons. The packages libpango-1.0-0, libpangocairo-1.0-0, libpangoft2-1.0-0, libpangox-1.0-0 contain what was supplied by libpango1.0-0. You can find further information here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956520

When trying to install the package it can not be configured because of the missing libpango1.0-0 dependency:

#dpkg -i Minecraft.deb
[...]
dpkg: dependency problems prevent configuration of minecraft-launcher:
 minecraft-launcher depends on libpango1.0-0 (>= 1.14.0); however:
 Package libpango1.0-0 is not installed.
dpkg: error processing package minecraft-launcher (--install):
 dependency problems - leaving unconfigured
[...]

The MC-Launcher still works and Minecraft can be run/played perfectly but apt is now having a problem with an unresolved dependency and the package has to be removed before installing or updating anything else.

Please update the dependency libpango1.0-0 it its equivalents: 
libpango-1.0-0,
libpangocairo-1.0-0,
libpangoft2-1.0-0,
libpangox-1.0-0
 

Best Regards

Chris

Linked issues

Attachments

Comments 10

I can confirm. Debian had libpango1.0 in transitional state for a few years now, so it's a bit surprising to see it being used for new things (the MC deb isn't as old).

Seems Ubuntu went through the same change, but they fixed their bug somehow: https://bugs.launchpad.net/ubuntu/+source/pango1.0/+bug/1869716

Hi, I'm a member of the team in Debian that is responsible for packaging Pango.

I confirm that depending on libpango1.0-0 is no longer considered correct. Please make Minecraft.deb depend on the individual library packages libpango-1.0-0, etc., depending on which ones it actually needs.

Further information (originally a comment on MCL-13512):

libpango1.0-0 (without the dash) was an old Pango package containing multiple shared libraries: libpango-1.0.so.0, libpangocairo-1.0.so.0, libpangoft2-1.0.so.0, libpangox-1.0.so.0 and libpangoxft-1.0.so.0.

About 7 years ago, it was split into multiple smaller packages, one for each shared library in line with normal Debian policy (libpango-1.0-0 and so on), to make it possible to remove deprecated libraries. To make sure existing systems upgraded correctly, we also introduced a new "transitional" libpango1.0-0 package, which is empty but has dependencies on all the individual libraries that used to be included. These transitional packages are normally meant to be kept for one stable release cycle (2 years) and then removed, so we were already long overdue for removing libpango1.0-0 this year; we don't keep them forever, to avoid a large number of these transitional packages building up over time.

One of the libraries that used to be in libpango1.0-0, libpangox-1.0.so.0, is obsolete and is likely to be removed from the next versions of Debian/Ubuntu (its 32-bit version has already been removed from Ubuntu), so we can't really keep the transitional libpango1.0-0 fully intact beyond this point anyway.

The changes in version 1.44.7-2ubuntu2 of the pango1.0 source package in Ubuntu is a workaround, and is not really correct or compatible with the old libpango1.0-0: it only pulls in the main library libpango-1.0-0, and not the other related libraries.

Please change the metadata of Minecraft.deb to depend on the individual, smaller packages for each specific library that it depends on. For example, if it requires libpango-1.0.so.0 and libpangocairo-1.0.so.0, then it needs "libpango-1.0-0, libpangocairo-1.0-0" in its Depends field. These smaller packages have been available in all stable releases since Debian 8 and Ubuntu 14.04.

If you need to support even older releases (Ubuntu 12.04 and Debian 7), it is possible to have dependencies like "libpango-1.0-0 | libpango1.0-0, libpangocairo-1.0-0 | libpango1.0-0" which will accept either the new or old packages. However, these older releases have reached end-of-life and no longer receive any security support from Debian or Ubuntu, so users of these releases should really already have upgraded.

I hope this is useful information. Please let me know if you have any questions, or contact the Debian GNOME mailing list: [email protected]

"Seems Ubuntu went through the same change, but they fixed their bug somehow"

They applied a workaround so that third-party packages like Minecraft and Dropbox would be installable. This workaround is not really correct, and neither Debian nor Ubuntu will want to keep it in the long term.

It's possible that we will apply a similar workaround in Debian. However, even if we do, please don't rely on it: instead, please change Minecraft.deb so that it will install cleanly without needing the libpango1.0-0 package. This will allow the workarounds to be removed eventually.

"libpangox-1.0-0"

Please don't depend on this package unless Minecraft specifically needs it. It is unmaintained and obsolete, doesn't compile correctly with newer versions of Pango, and is likely to be removed from Debian and Ubuntu soon.

I am running Debian Bullseye (testing). To identify the pango libraries in use I ran the following:

lsof -P -T -p <minecraft-launcher PID> | grep pango

The above shows that the launcher depends on the following individual pango libraries:

  • libpango-1.0-0

  • libpangocairo-1.0-0

  • libpangoft2-1.0-0

I modified the control file of the current Minecraft launcher (2.1.13829) debian package file (Minecraft.deb) accordingly and it runs without problems.

The contol file I used is attached. The minimum version number I used for the three libraries is the current version used for Debian Jessie (1.36.8-3)

[media]

@hmuller: I've repackaged the deb file with your control. Works nicely. 🙂 I'm using SparkyLinux (based on Debian Testing), so I can confirm at least for Testing.

@hmuller Thank you. This works on Kali Linux.

I suggest using this to quickly and easily edit the control file

 

This appears to no longer be an issue in minecraft-launcher (2.1.14403).

You are right.

I was able to install the current version 2.1.14930 from minecraft.net/download page

So this ticket can be closed, I believe.

Thanks for verifying the fix. I'm closing this ticket.

Christian Luca Lützenkirchen

(Unassigned)

Unconfirmed

Retrieved