Jalv 1.4.6

jalv 1.4.6 has been released. Jalv is a simple but fully featured LV2 host for Jack which exposes plugin ports to Jack, essentially making any LV2 plugin function as a Jack application. For more information, see http://drobilla.net/software/jalv.


  • Show newly saved presets in the preset menu
  • Generate Qt moc nonsense at build time for broader compatibility
  • Update for latest LV2 Atom Object simplifications
  • Set port pretty names via new Jack metadata API
  • Add support for data-access extension (based on patch by Filipe Coelho)
  • Support new UI show/hide interface in console version
  • Add option to print control output changes to stdout
  • Support saving the same preset several times
  • Update man pages and console jalv help output for new options
  • Upgrade to waf 1.7.16

Ganv 1.4.2

ganv 1.4.2 has been released. Ganv is an interactive Gtk canvas widget for graph-based interfaces (patchers, modular synthesizers, finite state automata, interactive graphs, etc). For more information, see http://drobilla.net/software/ganv.


  • Fix bug where edges would not update when nodes are moved after the canvas is cleared (fix stuck connections in Patchage after refresh).
  • Upgrade to waf 1.7.16

Lilv 0.20.0

lilv 0.20.0 has been released. Lilv is a C library to make the use of LV2 plugins as simple as possible for applications. For more information, see http://drobilla.net/software/lilv.


  • Don't load files multiple times if they are listed as rdfs:seeAlso for several plugins
  • Call lv2_lib_descriptor separately for different bundle paths (fix loading several dynamic plugins like Ingen at once)
  • Tolerate calling lilv_node_as_uri or lilv_node_as_blank on NULL
  • Add convenient lilv_new_file_uri for creating file URIs
  • Fix use of lv2info -m and -p options to write plugin data (useful for porting plugins bridges with NASPRO)
  • Fix issues with lilv_plugin_get_author_name and friends (thanks Filipe Coelho)
  • Improved/working lv2_apply.py to apply plugin to a .wav (thanks Joe Button)
  • Add lilv_world_unload_bundle() and lilv_world_unload_resource()
  • Fix several minor memory leaks
  • Improve test coverage
  • Upgrade to waf 1.7.16

Suil 0.8.2

suil 0.8.2 has been released. Suil is a library for loading and wrapping LV2 plugin UIs. For more information, see http://drobilla.net/software/suil.


  • Fix embedding several Qt UIs in Gtk
  • Add configure options to disable all Gtk or Qt support
  • Upgrade to waf 1.7.16

Sratom 0.4.6

sratom 0.4.6 has been released. Sratom is a library for serialising LV2 atoms to/from RDF, particularly the Turtle syntax. For more information, see http://drobilla.net/software/sratom.


  • Update for latest LV2 Atom Object simplification
  • Don't set eg prefix in sratom_to_turtle
  • Upgrade to waf 1.7.16

Sord 0.12.2

sord 0.12.2 has been released. Sord is a lightweight C library for storing RDF statements in memory. For more information, see http://drobilla.net/software/sord.


  • Fix iteration over an entire graph ( * graph)
  • sordmm.hpp: Remove unused members
  • Update to waf 1.7.16

Serd 0.20.0

serd 0.20.0 has been released. Serd is a lightweight C library for RDF syntax which supports reading and writing Turtle and NTriples. For more information, see http://drobilla.net/software/serd.


  • Support new RDF 1.1 Turtle
  • Don't write xsd:decimal literals to Turtle bare if they would not be read back with the same type
  • Fix possible crash in serd_writer_end_anon() when writing invalid lists
  • Generate blank names like :b1 and :B2 not :genid1 :docid2
  • Correctly handle posix_memalign failure
  • Fix const-correctness violation for reader input string
  • Add -lm to pkg-config libs
  • Update to waf 1.7.14

Patchage 1.0.0

patchage 1.0.0 has been released. Patchage is a modular patch bay for Jack and ALSA based audio/MIDI systems. For more information, see http://drobilla.net/software/patchage. -- David Robillard d@drobilla.net


  • Allow removing connections by selecting their handle and pressing delete
  • Remove Raul dependency
  • Switch from FlowCanvas to Ganv (much improved looks and performance)
  • Remove LASH support and simplify UI
  • Fix font configuration on OSX
  • Use Mac style key bindings on OSX
  • Integrate with Mac menu bar on OSX
  • Support for DOT export for rendering with GraphViz
  • Use XDG_CONFIG_HOME instead of ~/.patchagerc
  • Make port colours configurable
  • Support port pretty names via new Jack metadata API

Ganv 1.4.0

ganv 1.4.0 has been released. Ganv is an interactive Gtk canvas widget for graph-based interfaces (patchers, modular synthesizers, finite state automata, interactive graphs, etc). For more information, see http://drobilla.net/software/ganv.


  • Begin using library and pkg-config names suitable for parallel installation. This version of flowcanvas is flowcanvas-1 and is NOT compatible with previous versions
  • Clean up API and improve documentation.
  • Add font size API
  • Use system theme font size by default
  • Size empty ports in font based units so they look right when zoomed
  • Adjust padding and placement to precisely fit text
  • Add ability to select connections directly
  • Add Connection::set_curved()
  • Fix lingering handle when deleting connections
  • Dramatically increase performance by rendering text manually rather than using the truly awful Gnome::Canvas::Text.
  • Remove use of boost smart pointers. Adding and removing from containers (e.g. Canvas, Module) is now done automatically.
  • Clean up API/ABI by hiding private implementations.
  • Add ability to select connections by their handles, either individually or in groups with rect select.
  • Further slight improvements in memory consumption and alignment.
  • Improve scalability to graphs with many connections (eliminate linear connection searches and redundant connection collections).
  • Switch to GPLv3+

Disabling the obnoxious lights on the Evoluent Vertical Mouse 4

I've been a fan of the Vertical Mouse for a while now, since the extreme wrist pronation of a conventional horizontal mouse aggravates my wrist. Unfortunately, however, Evoluent saw fit to put a blindingly bright blue lit-up logo on the back of the latest version (much to the delight of absolutely nobody in their target market). This is particularly problematic if you work late or sleep in the same room as your computer (blue light messes with your sleep cycle, hence tools like Redshift).

The offending logo (unlit).

After unplugging my mouse every night for so long, I finally decided to tear the thing apart and see how easy it would be to disable those lights. It turns out this is very easy, you don't even need to desolder anything. There are four screw holes hidden under the label and front pad on the bottom. You don't need to remove the other two pads like I did in the process of figuring this out.

Screw hole locations.

Remove all four screws and the top should come off easily. There are ribbon cables connecting the buttons, though, so don't pull too hard. Now you can see the battery of LEDS.

The seven (!) offending LEDs. When Evoluent shoots for annoying they go full out.

Luckily, this pointless board is connected with a header, so you can simply unplug it, and reassemble the mouse.

Disconnected LED board connector.

Much better.

« Page 3 / 13 »