Re: Parsing package filenames (was: Re: New ftp method for dselect)
Fernando Alegre <fernando@mars.superlink.net> said:
> [...] the whole sunsite and tsx archives, which
> store packages with an almost standard format. Even though they are not
> Debian packages right now, some (many?) could be in the future. And the
> debianized name should be as close to the upstream name as possible.
> Adding a revision number between the package-and-version block and the
> extension (almost always tar.gz or tgz) is OK, but touching something
> within the package-and-version block (which was chosen by the original
> author) seems to me as an intrusion.
That sounds like a very good point. Also, most current packages probably
already conform to this.
One major difference between this and our current naming scheme is that
this leaves open the possibility of a non-'-' separator, or no separator
at all, between package and version, while we presently require a '-'.
Another major difference is that Version does not seem to be guaranteed
to be machine-parseable from package-and-version.
I think having the upstream version as a separate and identifiable
field is probably too deeply ingrained into our package handling
procedures to consider changing that at this point.
A mostly-compatable compromise would seem to be:
Package-Version-Revision.Extension
Package: Retained unchanged. May contain any printable chars.
Maintainer makes a judgement regarding the separation
of the upstream package and version fields. If they're
not separated by a '-' in the upstream package-and-version
field, maintainer mangles the package-and-version field
from upstream to debianize it as package-version.
Version: Debian package naming conventions forbid embedded '-'
chars in version numbers. Maintainer mangles the
upstream version number as necessary to eliminate any
of these. Most packages should not need to have their
upstream package-and-version field mangled, but some will.
Revision: Added by debian package maintainer. Usually numeric,
but may contain any printable chars except '.'.
Extension: May contain any printable chars.
Reply to: