pomavold

Intro

For some time I used Gizmo Daemon to let my Griffin PowerMate control various apps on my Gentoo Linux box. But Gizmod doesn't compile on Gentoo anymore due to some Python/boost related problems. They use cmake for compiling which is more obscure than automake/autoconf. So I wrote pomavold, the PowerMate volume daemon, as controlling the volume of my soundcard accounts for more than 80% of my PowerMate's use.

Compile

  1. Download the latest version of pomavold
  2. Untar the archive and change into the newly created directory
  3. Type make and sudo make install
Please note that you need ALSA and its development headers and libraries.

Usage

/usr/local/libexec/pomavold -h gives some additional help:

pomavold V0.4 - POwerMAte VOLume Daemon

usage: pomavold [-i <device>] [-s <soundcard>] [-c <control>] [-u <user>]
                [-w <timeout>] [-d]
       pomavold -h

  -i <device>       use <device> as knob wheel; default:
    /dev/input/by-id/usb-Griffin_Technology__Inc._Griffin_PowerMate-event-if00
  -s <soundcard>    use <soundcard> as soundcard; default: default
  -c <control>      use <control> as volume control; default: Master
  -u <user>         run as <user> and chroot to /var/empty
  -w <timeout>      wait <timeout> seconds before accessing devices
  -d                run in foreground, debug to stdout, don't log to syslog
  -h                this help ;-)

examples:

run in foreground as the current user:

  pomavold -i /dev/input/by-id/*Griffin*Technology*PowerMate* -d

to start automatically when the device is plugged in
add the following to /etc/udev/rules.d/99-local.rules and
do a `udevadm trigger`:

  DEVPATH=="/devices/*/usb*/input/input*/event*",\
  ATTRS{product}=="Griffin PowerMate",\
  RUN="/usr/local/libexec/pomavold -u nobody -i %N"

Download