First, download the source code. You can either download the release tarball linked above or get the source directly from git.
Now you get to compile the code. To build the plugin with all its features:
You will need to have the hidapi library installed for this. If you don't need support for blink(1) devices you can disable it and you won't need to install the hidapi library:
Now compile and install the plugin:
make cp src/.libs/blink.so ~/.local/share/profanity/plugins/
You should now be able to load the plugin in profanity:
/plugins load blink.so
If all went well you should see something like this:
02:36:37 - Using Thinklight for notifications 02:36:37 - Loaded plugin: blink.so
If you get any error messages check profanity's log file at
To indicate that everything works as it should, your active device should blink when profanity starts. Currently the plugin supports two types of devices out-of-the-box:
If you compiled profanity-blink with blink(1) support the USB LED device should be used by default. If it's not, check your error log.
You will need to grant yourself write permissions to
/sys/devices/platform/thinkpad_acpi/leds/tpacpi::thinklight/brightness for this to work. You may want to make that change permanent by adding it to your
With a bit of extra work you can use any other type of LED device known to your kernel. Just have a look at
/sys/class/leds/ to get a list of all devices in your machine. To use any of them instead of the ThinkLight, change the
THINKLIGHT_BASE definition in
blink.c before you compile the plugin, then adjust the device permissions as described above.
Use bugs.ott.net to report bugs in profanity-blink.
This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
For more information on this, and how to apply and follow the GNU GPL, see https://www.gnu.org/licenses/gpl.html.