Version 1.1 of How To Name Things As MetaLab gets larger, and with the new semi-automated maintainance process in place, it's getting more important that submissions avoid name collisions and use a consistent naming scheme that programs as well as humans can deduce things from. Here are some guidelines for helping that happen. Right now they're optional. At some point in the not-very-distant future they will become requirements and Sunsite will begin rejecting packages or changing their names to match. It's helpful to everybody if your archive files all have GNU-like names -- all-lower-case alphanumeric stem prefix, followed by a dash, followed by a version number, extension, and other suffixes. The stem prefix should be common to all a project's files, and it should be easy to read, type, and remember. So please don't use underscores. And don't capitalize or BiCapitalize without extremely good reason -- it messes up the natural human-eyeball search order and looks like some marketing weenie trying to be clever. Let's suppose you have a project you call `foobar' at version 1, release 2, level 3. If it's got just one archive part (presumably the sources), here's what its names should look like: foobar-1.2.3.tar.gz -- the source archive foobar.lsm -- the LSM. (It's OK if the LSM has a version number, but not necessary) Please *don't* use these: foobar123.tar.gz This looks to our programs like an archive for a project called `foobar123' with no version number. foobar1.2.3.tar.gz This looks to our programs like an archive for a project called `foobar1' at version 2.3. foobar-v1.2.3.tar.gz Our programs think this goes with a project called `foobar-v1'. foo_bar-1.2.3.tar.gz The underscore is hard for people to speak, type, and remember FooBar-1.2.3.tar.gz Unless you *like* looking like a marketing weenie. This is also hard for people to speak, type, and remember. If you have to differentiate between source and binary archives, or between different kinds of binary, or express some kind of build option in the file name, please treat that as a file extension to go *after* the version number. That is, please do this: foobar-1.2.3.src.tar.gz -- sources foobar-1.2.3.bin.tar.gz -- binaries, type not specified foobar-1.2.3.bin.ELF.tar.gz -- ELF binaries foobar-1.2.3.bin.ELF.static.tar.gz -- ELF binaries statically linked foobar-1.2.3.bin.SPARC.tar.gz -- SPARC binaries foobar-1.2.3.tar.gz Please *don't* do this: foobar-ELF-1.2.3.tar.gz The reason we're asking is so we can have some hope of building filename parsing code that knows about version numbers *without* making it an AI project. The general form of name we're looking for has these parts in order: 1. project prefix 2. dash 3. version number 4. dot 5. "src" or "bin" (optional) 6. dot or dash (dot preferred) 7. binary type and options (optional) 8. archiving and compression extensions If your project prefix conflicts with someone else's we'll tell you and perhaps ask you to change the name. Thanks for your cooperation. -- Your Friendly Neighborhood Archive Maintainers