add a README
authorHelmut Grohne <helmut@subdivi.de>
Wed, 19 Jun 2013 18:15:57 +0000 (20:15 +0200)
committerHelmut Grohne <helmut@subdivi.de>
Wed, 19 Jun 2013 18:15:57 +0000 (20:15 +0200)
Outline what onoff is about and what problem it aims to solve.

MANIFEST.in
README.md [new file with mode: 0644]
TODO

index eb762f3..2301d36 100644 (file)
@@ -1 +1,2 @@
 include COPYING
+include README.md
diff --git a/README.md b/README.md
new file mode 100644 (file)
index 0000000..dfdf9eb
--- /dev/null
+++ b/README.md
@@ -0,0 +1,33 @@
+onoff
+=====
+
+Activate devices on demand and turn them off after usage automatically. This is
+what onoff is for. From the perspective of onoff a device has four states. It
+may be active, inactive of transitioning to one of those two states. Devices
+are exported via a dbus interface (currently versioned 0 to declare API
+instability). A client can activate a device for a particular duration or
+activate it until a filedescriptor is closed. The latter allows inheriting
+filedescriptors to other processes and getting a signal once they terminate.
+Consider the following use cases:
+
+ * When printing a page, first switch on the printer and after printing, switch
+   off the printer. When printing two jobs, do not turn it of between the jobs.
+   This can be achieved with [sispmctl][] or [slugpower][] for example.
+ * Similarly when scanning, turn on the scanner.
+ * Using [redshift][] is a nice thing in the evening. Occasionally you may need
+   clear colours though. Videos tend to look bad with redshift activated. So
+   consider automatically inhibiting redshift during video playback.
+ * Monitor the local [mpd][]. Whenever it plays music switch on the sound
+   device and turn it of when music stops. Also turn on sound when watching a
+   video of course.
+ * The inhibitor concept can also be applied to [mpd][] itself. When your phone
+   rings, stop mpd.
+ * When you suspend the whole machine, clients should disconnect from remote
+   services. This is another inhibiting strategy. It is already being solved by
+   [systemd-inhibit][] though.
+
+[sispmctl]: http://sispmctl.sf.net
+[slugpower]: http://chezphil.org/slugpower/
+[redshift]: http://jonls.dk/redshift/
+[mpd]: http://www.musicpd.org
+[systemd-inhibit]: http://www.freedesktop.org/software/systemd/man/systemd-inhibit.html
diff --git a/TODO b/TODO
index c767ec9..2bf80d8 100644 (file)
--- a/TODO
+++ b/TODO
@@ -14,3 +14,4 @@
 * State across restarts?
   When restarting the service all state is lost. Maybe detect device state on
   startup and at least serialize the timed activations?
+* Activate multiple devices from one command.