Seems like it isn't really clear that we want packagers to evoid
epochs like the devil. There are some situations that require epochs,
when there is no other way to undo versioning and, of course, when
there were epochs to start with.
Currently epochs are only mentioned under the Requires section:
Second, the Epoch must be listed when adding a versioned dependency
to achieve robust epoch-version-release comparison. A quick way to
check the Epoch of package foo is to run:
I'd like to clarify that so that it refers only to non-zero epochs to
avoid people adding "0:" upfront of every mentioned version(-release),
e.g. change "the Epoch" against "a non-zero Epoch"
Then I'd like to have somewhere a recommendation that epochs should be
avoided as much as possible. This seems to belong to
Packaging/NamingGuidelines, where epochs seem to have been left off
(probably deliberately to not lead people into temptation). How about
epochs are generally to be avoided. They provide a last-resort
mechanism to override package version and release, but are more
trouble than they are worth while. If you realy have to use an epoch
you MUST use a simple integer (technically anything that is suited
for the version/release tags is also suited here). Make sure you
explore all other possiblities before deciding to use epochs.
Axel.Thimm at ATrpms.net