Understanding the numbers in package names (?OT)

Constantine Evans constantine at evanslabs.org
Wed Sep 13 08:08:47 BST 2006


Michael Bienia wrote:
> The %3a is decoded a :. The complete version for kgpg is 4:3.5.2-0ubuntu8.
> The 4: is called epoch. It is used when the newer version number is
> lower then the previous (for whatever reason, mostly upstream). When
> comparing versions first the the epoch is compared (no epoch = 0) then
> the upstream version and then the revision.
> The version for kgpg splited:
> - epoch: 4
> - upstream version: 3.5.2
> - revision: 0ubuntu8
>   - debian revision: 0 (no Debian package for this upstream version exists)
>   - ubuntu revision: ubuntu8 (its the 8th change from ubuntu)
> 
> HTH
> 
> Michael
> 

If I recall correctly, it should also be added that epochs have been
considered harmful in many cases for quite a while, but I can't quite
remember where I read that. I do know that they were misused by third
parties in the past.

As another question in naming strangeness, why do we still have .*c2[a]
 around? If I recall correctly, this had to do with C++ ABI changes
relating to gcc version changes. But the naming scheme is not very well
explained - according to one of the few packages that acknowledged the
suffixes, c102 is for gcc 3.x, c2 is for gcc 4.x, and no suffix is for
gcc 2.95, which still doesn't explain c2a. It appears that these
suffixes now only serve to add meaningless characters to the ends of
various library names, probably because it would be somewhat difficult
to change them back, and doing so would result in little visible gain. I
am unable to find any cases where the scheme is still being used as
intended - for example, libxine1 is a real library in main whereas
libxine1c2 is in multiverse and, despite having essentially the same
description, is actually is a virtual package that installs extra codecs
and the obsolete package libxine-main1.

Of course, this is probably mostly an issue with Debian still having the
 remnants of the naming scheme around. But there are still a variety of
packages in main with c2 and c2a suffixes.

Constantine




More information about the ubuntu-devel mailing list