what does this look like from a user point of view?
the apt approach requires initial configuration at the client. this only has to be done once:
sudo echo "deb [arch=all] http://weewx.com/apt/ squeeze main" > /etc/apt/sources.list.d/weewx.list
wget http://weewx.com/keys/mwall_test.gpg.key
sudo apt-key add mwall_test.gpg.key
for comparison, this is the install process via dpkg then via apt-get:
the dpkg approach (currently document in docs/debian.html):
1) download the .deb
wget http://weewx.com/downloads/weewx-x.y.z_r.deb
2) install the .deb
sudo dpkg -i weewx-x.y.z_r.deb
3) fix dependencies and finish install (only if dependencies not already installed)
sudo apt-get update
sudo apt-get -f install
the apt-get approach (requires a repo with weewx debs in it):
1) install
sudo apt-get update
sudo apt-get install weewx
similarly, here is the update process:
dpkg approach:
1) download
wget http://weewx.com/downloads/weewx-x.y.z_r.deb
2) update
sudo dpkg -i weewx-x.y.z_r.deb
apt-get approach:
1) update
sudo apt-get update
sudo apt-get install weewx
as an added benefit, when apt-get works with a weewx repo, then all of the other apt tools work as well, such as the gui-based package managers and aptitude.
what does this cost us in maintenance? there are many options for managing an apt repo, from manual manipulation to (overly) simplified scripts. i've been experimenting with the 'aptly' tool, which seems to have a nice balance between simplicity and capability.
each time weewx is released, someone must add the .deb to the apt repository and publish it. it basically boils down to three or four command lines for each release (these are now documented in DEV_NOTES.txt). the biggest problem is the integration with the
weewx.com service provider. if they provided rsync, or if they provided server-side apt repo tools, then this would be trivial to maintain. since they do not, we would have to write a (fairly simple) script to propagate the repo changes on each release.
i have installed weewx 3.0.0 through 3.5.0 in an apt repo at
weewx.com so you can test. warning! do the testing on a non-production system! when i tried in on a deb7 system with aptitude, it pulled in build-essential as an indirect weewx dependency. i think that is due to a suggested requirement of apache2 in the weewx control file. the actual weewx dependencies are, in fact, minimal.
i cannot commit to supporting the apt repo until there is a way to automate the update process.
m