How To Name Things
(Paul Johnson, 2001-11-02, adapted from Metalab's How To Name Things document)

We have adopted a version of the Linux Software Map (LSM) for Swarm ftp.

To allow indexing and accessibility, it is necessary to follow a few guideline in naming of files.

Generally, LSM needs these name parts in this order:

  1. project prefix
  2. dash
  3. version number
  4. dot
  5. "src" or "bin" (optional)
  6. dot
  7. archiving and compression extensions
Users who are interested in your application typically need to know which version of Swarm you were working with when you developed your applicataion.  Many example Swarm programs have version numbers that are exactly the same as the Swarm version with which they were working.  For example, look at swarmapps-2.1.1.tar.gz or sss-2.1.1.tar.gz.  In that case, the standard LSM filename will do.

If you have given your project a unique version, then please add the Swarm version in your file name as well, separating the two version numbers by a dash.

Example:
 

Suppose your project is `wonderModel` and your version number is 1.2.3, meaning version 1, release 2, level 3.  Suppose the Swarm you were using was 2.1.1.  Then please consider using a version number like:

 wonderModel-1.2.3-2.1.1.tar.gz
 wonderModel.lsm
 (Note: It's OK to have a version number on the LSM, but not necessary.)
 

Please don't use:
 
wonderModel123.tar.gz
This looks like an archive for a project called  `wonderModel123'  without a version number.
wonderModel1.2.3.tar.gz
 This looks like an archive for a project called   `wonderModel1' at version 2.3.
wonderModel-v1.2.3.tar.gz
 Putting the v before the version is unnecessary and it confuses the archiving software.


Other information in the name:

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. It should go after the version number.

Example

wonderModel-1.2.3.src.tar.gz -- sources
wonderModel-1.2.3.bin.tar.gz -- binaries, type not specified
wonderModel-1.2.3.bin.ELF.tar.gz -- ELF binaries
wonderModel-1.2.3.bin.ELF.static.tar.gz -- ELF binaries statically linked
wonderModel-1.2.3.bin.SPARC.tar.gz -- SPARC binaries
wonderModel-1.2.3.tar.gz


Please *don't* do this:

wonderModel-ELF-1.2.3.tar.gz