It would be great if we could get an updated debian/ubuntu package for it too.
This major release makes a lot of changes this will make packaging a bit more tricky.
Basically now scheduling of tests is no longer handled by cron, but by the ooniprobe-agent system daemon.
This means that we will have to cleanup the crontab from old ooniprobe related entries and configure a systemd or equivalent script to make the agent start at boot.
Should the systemd service be installed disabled by default then? Or does it do a check on startup that it was wanted by looking at a conf file?
I am not sure what would be the "least surprising" way to go about this. What does tor do when it's installed? Does it configure the service to run by default?
When it's started the first time it is setup so that it's actually not running any tests so the user actually has to go through the informed consent procedure (by either running ooniprobe -z from the command line or by visiting http://127.0.0.1:8842/) to make it run any measurement.
I see two options for going about this:
We make the startup of the system service an option that the user can opt in via an interactive step of the setup process (like it is now for the configuration of the cronjob)
We make it startup by default, but inform in some way (maybe with a dialog or just printing a line on post install) that they will have to login to http://127.0.0.1:8842/ to agree to the informed consent before it will do anything.
I think, as long as it doesn't run any tests by default, running the agent by default is OK.
We can provide a /usr/share/doc/ooniprobe/README.Debian to cover how to configure ooniprobe to run tests, and we can also give a NEWS entry that will be displayed on upgrade to let users know that their previous cron job will be removed and that they will need to tell ooniprobe to run measurements.
Tor starts up and runs by default, but until you connect to the SOCKS port it won't send any traffic over the circuits, though they are built. If you're installing ooniprobe, I think it's reasonable to assume that users want to run it.
I think, as long as it doesn't run any tests by default, running the agent by default is OK.
We can provide a /usr/share/doc/ooniprobe/README.Debian to cover how to configure ooniprobe to run tests, and we can also give a NEWS entry that will be displayed on upgrade to let users know that their previous cron job will be removed and that they will need to tell ooniprobe to run measurements.
Tor starts up and runs by default, but until you connect to the SOCKS port it won't send any traffic over the circuits, though they are built. If you're installing ooniprobe, I think it's reasonable to assume that users want to run it.
Yes all this makes a lot of sense. Let's go with it.
I've been working today on the packaging of ooniprobe 2.x in Debian. I've got a package building and it's almost ready for upload to Debian unstable.
There is still some testing to be done for upgrade scenarios. There may also be some more backport work to be done before looking at backporting ooniprobe itself.
I have hit an issue with the web UI in that I cannot find the sources for the files in:
I'll have to build a second package for the Web UI assets then, do you see any problem with the ooniprobe package being built without the Web UI assets present and then having a hard dependency on the package containing the built assets?
All dependencies are now waiting for inclusion in jessie-backports (uploaded to NEW). sid (debian and deb.tpo), stretch (on deb.tpo only, awaiting migration) and jessie (on deb.tpo only, awaiting migration and dependency inclusion) now have packages available for 2.0.2 fixing up some maintainer script bugs in the packaging also.
Completion blocked Package ooniprobe 2.0.2 for Debian jessie-backportsby tasks: Package klein backport for torporject.org trusty Package klein backport for torporject.org xenial Package certifi backport for torporject.org xenial Package certifi backport for torporject.org trusty Package ooniprobe backport for torporject.org xenial Package ooniprobe backport for torporject.org trusty Package ooniprobe backport for torporject.org yakkety