I was thinking about the parsing problem and I had a new idea, which I think would be the best solution. What I think is needed is a reorganization of the Debian tree so that under the root tree for the distribution we have: (root-tree)/<Section>/<Standard Package name>/files(binaries and sources)
For example: /debian-1.1/base/bash/bash-1.14.4-3.deb bash-1-14.4-3.tar.gz bash-1.14.4-3.diff.gz bash-1.14.4-3.changes bash-1.14.4-3.README (if needed) That way, there is absolutely no need to parse the version number, nor it is necessary to modify the file name, which in my opinion could even raise a concern about copyright infringements for some packages. The mirrors interested in binaries only would discard packages not ending in ".deb". That's all they would need to parse. And since moving packages to their location is done manually anyway, the new arrangement would make it even easier for Ian Murdock (isn't it him?) to move them, because maintainers usually upload all those files together. I think this solution is clean and easy for both archive maintainers and people who mirror it. Maybe the revision number, which is Debian-specific, could be made mandatory so that debian binary packages would end in "\.\d+\.deb" instead of "\.deb". We really don't need to be able to parse the version number. We just need to know which package is provided by each file, and a good way to make it explicit is to place the file under a directory named after the standard package name that the file provides. Is there a less expensive (in terms of work involved) or a clearer solution (which does not confuse people not familiar with Debian)? I don't think so, but you could prove me wrong.