Short instructions on how to pack a release
Check the build
We use autotools and their latest version has the 'distcheck' target which is very useful to check if everything is allright.
To pack the tar.gz of the release and obtain a bug report regarding the build if a problem arises, use make distcheck.
If all goes well, the tar.gz ready for distribution should be there.
We use .tar.gz files unless there is a really good reason to change to bz2 - for instance if a lot of space is saved.
Tag the commit
Once you are sure this is the right point in time to tag a release, use a git tag: simply a number prefixed by 'v'
git tag v1.2 git push --tags
Sign the release
Create an md5 sum file of the .tar.gz and put it in .tar.gz.md5
Sign the .tar.gz.md5 file with your gpg key (registered on pgp.mit.edu)
gpg -b -a file.tar.gz.md5
Upload to ftp
All our releases from the very beginning of dyne.org are server on our FTP.dyne.org (now over HTTP, however..)
To upload, ask someone that has a shell on quico: the ftp repository is located on quico.dyne.org in /maxtor/ftp/anonymous/
Place the sourcecode .tar.gz and its md5 and signature into the releases/ subdirectory of the project
Place any pre-compiled binaries in a binaries/ subdirectory
Overwrite all basic documentation files with the new versions, putting them into the base of the directory
README ChangeLog NEWS TODO AUTHORS
Upload on the ftp also any rendered manual and possibly also an html version of the manpage
Prepare DEB packages for APT.dyne.org
There is a page for that: Code/PackageForAptDyne
We use git-buildpackage to
Announce on freshmeat (now freecode)
All our software is announced on freecode.com so find the entry for the one you are packaging, ask the current maintainer to include you as uploader for the project (and of course make an account on freecode if you don't already have one) then add the release summary there (in properly spelled and well formed short english phrases).
Announce on our website
Add a New Post on the new dyne.org website and categorize it as Announcements then give it the name of the software and its version, write down all the information you think might be useful to know for the large public. Also include the git log output if you like, with all entries between the last and this release, using something like:
git log --oneline 1.1..1.2
If for instance this is the 1.2 release then this will spit out all the history since 1.1 (of course after you have tagged 1.2 in git)
Twit, status.net, identi.ca and social networks in general
Enjoy spreading the news :^) remember that we prefer to link our webpage announcement and then put more information there, so use the url dyne.org/hasciicam-1.2 or so