More Avahi Love
Today's Avahi Love posting covers publishing SFTP servers. My NAS box runs SSH, so I can use the ssh: method in gnome-vfs to browse the filesystem (it uses SFTP). The magic service file is:
<?xml version="1.0" standalone='no'?>
<service-group>
<name replace-wildcards="yes">Remote Files on %h</name>
<service>
<type>_sftp-ssh._tcp</type>
<port>22</port>
</service>
</service-group>
Restart Avahi and then with a suitable Avahi-enabled gnome-vfs, there will be entries in Places → Network Servers for each machine that file is installed on. Kick arse!
Why I Don't Use GnomeFiles
My Top Five Reasons as to why I don't update the information for Sound Juicer in GnomeFiles often:
- No programmatic way of uploading new versions. Freshmeat has a XML-RPC interface and sample implementation, freshmeat-submit. This means I could integrate posting new versions into my make release script, which also uploads source tarballs to ftp.gnome.org and puts the latest DOAP file on burtonini.com. Ideally GnomeFiles will let me specify a DOAP URL and the server will fetch it regularly, updating the information when it changes.
- When adding a new version I need to fill in the download location field from scratch. For every Sound Juicer release this is going to look like http://ftp.gnome.org/pub/gnome/source/sound-juicer/2.[something]/sound-juicer-2.[something].tar.gz. It's a good assumption that if one version was at some URL, the next version will be at a very similar URL, so why not pre-fill that field with the previous version's URL? Freshmeat does this, and it turns typing in a long URL into changing a single number.
- I need to fill in the file size of the file at the URL. Why can't the server do that? If the download is over HTTP it could do a HEAD request and extract the Content-Length header.
- No support for branches. There are two branches of Sound Juicer development at any moment: stable and development. I have to pick one of these to publish, so am either publishing only the stable release, or the development releases. People who want to know about the other releases can't find this information out.
- This one is petty, but it bugged me. Description of the file to download eg. "Binary" or "gnomefiles.org Server". One of those is a description of the file, the other is a description of the site.
NP: Black Diamond, Angie Stone