I am trying to install multiple versions of python on my machine using the deadsnakes ppa on debian (not ubuntu):

deb http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu xenial main

However, I'm finding problems with package dependencies. Older versions of python (e.g. python3.4) depend upon udeb packages, but apt can't find these.

The strange things is that I can find these packages on the debian package lists: (e.g. https://packages.debian.org/buster/zlib1g-udeb). And if one follows the links through then the udeb packages seem live in main like other packages http://ftp.us.debian.org/debian/pool/main/z/zlib/zlib1g-udeb_1.2.8.dfsg-5_amd64.udeb . But apt just isn't finding these.

One finds the ominous warning:

Warning: This package is intended for the use in building debian-installer images only. Do not install it on a normal Debian system.

But I would prefer not to build python from source so am wiling to take the risk of installing these packages on my machine.

How can I get apt to find these udeb packages?


  • 1
    Do not use ppa in Debian, they are only made for Ubuntu and will break your Debian. The source you've added to your sources.list clearly says that's for the Xenial (16.04) version of Ubuntu. The reason behind this is that both have their own tolerances about how stability, compilation, system, etc. There is one better way to install an older version of a software on Debian, but this will probably also break either your Debian or your python installation. Same goes if you would think to do that with Ubuntu. Your safest bet would be to use a virtual machine with an old version of Debian.
    – X.LINK
    Feb 23, 2021 at 15:22

1 Answer 1


As the “ominous” warning says, micro-debs (udebs) are only intended for use in the Debian installer (they contain simplified packages which are used to build the installation environment). They mustn’t be installed on a normal system: they aren’t intended to be uninstalled or upgraded, which makes them unsuitable for use in an installed system (the installer runs a RAM-based system, so they’re fine there). udebs are typically either specific to the installation process, or have non-udeb equivalents which should be used instead (see for example libevdev2 and libevdev2-udeb).

No non-udeb package should have a dependency on a udeb, and indeed as far as I can tell none do (in Debian and Ubuntu).


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .