54

What are transitional packages and what exact purpose do they have?

NES
  • 33,195

1 Answers1

50

They simplify the transition if a package gets renamed:

Let's say we have a package called mypackage in the current release. Now for some reasons this packages gets renamed mynewpackage in the next release. As the package manager doesn't know anything about renaming packages it will treat mypackage and mynewpackage as different packages so that on upgrade users who have mypackage not get mynewpackage installed but stay with the old mypackage (if the dependencies allow that).

To avoid this, the package maintainer simply creates a transitional package mypackage in the new release that doesn't have any files but just a depends on mynewpackage (this kind of package is called a "meta package").

  • 1
    is it like a pointer or a link that shows from the transitional package on the successor or did i misunderstand this? the old mypackage is completely removed and the new one is just available? i ask mainly because i have a driver problem with my printer, libcupsys was deprecated and libcups seems to be the successor, but the only drivers available from canon base on the old libcupsys. so how could such a transitional package help me in this case? – NES Jan 06 '11 at 22:12
  • 1
    It's similar to a pointer but thinking this way may be misleading in some aspects as a transitional package is still a normal package except it doesn't contain any files but just metadata. What exactly is the problem with your printer driver? Since karmic libcupsys is a virtual package that is provided by libcups, so there shouln'd be dependency problems if the driver depends on libcupsys. – Florian Diesch Jan 07 '11 at 20:49
  • I would upvote this answer if it linked to the page that specifically tells maintainers to do this: https://wiki.debian.org/RenamingPackages . – David Cary Oct 15 '19 at 21:05
  • To avoid what? Also, are transitional packages only for one transition? Let's say I have Ubuntu 20.04 and mypackage. I upgrade to 20.10, and I now I have mypackage (which becomes transitional) and (which depends on) mynewpackage. And then I upgrade to 21.04 and it fails because 21.04 doesn't have mypackage? Meaning, when does mypackage get deleted? Do I have to delete it by hand? Does it happen automatically at some point? – x-yuri Jul 08 '21 at 11:47
  • @x-yuri To avoid users with the original package not getting the renamed version. – Louis Waweru May 09 '22 at 06:57