[elrepo-devel] Naming guidelines

Phil Perry phil at elrepo.org
Wed Nov 25 19:49:40 EST 2009


Nikolay Ulyanitsky wrote:
> I have not found any ELRepo naming guidelines.
> 
> I think we must use Fedora Naming Guidelines
> (http://fedoraproject.org/wiki/Packaging/NamingGuidelines)
> as template of ELRepo naming guidelines.
> 
> Example of Naming guidelines:
>   * %{X} - original module version
>   * %{Y} - incremented release number
>   * %{VCSTAG} - version control system tag (20050515cvs, svn12345,
> git5aef11739b, etc).
>   * %{DIST} - macro, for example .el5.repo
> 
> I. Packages with backported modules:
>     %{NAME}-0.0-%{Y}%{DIST}
> 
>     Many kernel modules have a version < 1.0.0, for example: 0.0.3,
> 0.12, 0.99t-ac, etc.
>     We should never change the version from 0.0.
> 
>     foo-0.0-1.el5.repo
>     foo-0.0-2.el5.repo
>     foo-0.0-3.el5.repo
>     ...
> 

We had some discussions regarding package naming guidelines, but I/we 
haven't got around to formally writing them up yet (lets put them on the 
Wiki together with packaging guidelines etc). Unfortunately, those 
discussions took place before we had the mailing lists in place, so they 
weren't public, but in our own roundabout way we arrived pretty much at 
the same place described above (which I guess is a good thing).

Generally,

kmod-foo-0.0-1.el5.elrepo

where no module version information is otherwise available.

I take your point about never incrementing the version number (even the 
minor version number).

Where module version information is available, we use it and then 
increment the release as appropriate. An example of this would be my 
(broken) kmod-sis190-1.3-1.el5.elrepo package using backported kernel 
code labelled as version 1.3 in the code, or for kmod-alsa-1.0.20-1 
based on ALSA 1.0.20.

An example of code snapshot naming can be seen in the current V4L package:

kmod-video4linux-0.0-5.20090615.el5.elrepo

We did make some mistakes early on by versioning some packages starting 
at 1.0-1 and incrementing through 1.1-1 etc (eg, coretemp, it87). After 
realising our mistakes we decided not to go back and correct something 
that's not currently causing a problem as the fix (introducing an epoch) 
might be considered worse than the mistake.

We also discussed at length whether the package version-release should 
contain any information to indicate which kernel the package was built 
against (eg, a package built against the 5.3 release kernel-2.6.18-128 
might be named foo-0.0-1.el5.3.elrepo or foo-0.0-1.128.el5.elrepo) but 
we decided against this as it was felt this information could be 
misinterpreted and/or cause confusion.






More information about the elrepo-devel mailing list