Alexander Kojevnikov | Blog

xmonad-log-applet 2.1.0 released, with MATE support

I've just released a new version of xmonad-log-applet. Thanks to Ari Croock it now works with the MATE desktop environment, just include --with-panel=mate when configuring the applet.

Because GitHub recently disabled new downloads, the tarballs are now hosted on Google Code.

I also added a new tag for the applet in case you want to follow just x-l-a related posts.

Published: 2013-01-16

Tags: xla xmonad gnome

The Boston Hackfest

The GNOME and Mono Festival of Love was a blast! I finally met Bertrand and Aaron -- my fellow Banshee co-maintainers; as well as a lot of GNOME and Mono people. I also met Udesh, the SoC student I'm mentoring this year, who is working on voice control in Banshee.

I reviewed and committed a bunch of (mostly long overdue) patches in Banshee and taglib-sharp, and released a new version of the latter. We also discussed with Udesh his project and went through some technicalities.

I want to thank David for organising the event, GNOME Foundation for covering my plane tickets and our sponsors for making it happen:

GNOME Foundation

Microsoft NERD



Published: 2012-07-05

Tags: banshee gnome

GNOME and Mono Festival of Love

Thanks to the travel sponsorship of the GNOME Foundation, this week I'm going to Boston to attend the hackfest. I will be in Boston from Thursday evening till Sunday afternoon.

Looking forward to finally meeting fellow Banshee developers!

GNOME Foundation

Published: 2012-06-25

Tags: banshee gnome

xmonad-log-applet for GNOME and Xfce

xmonad-log-applet is a handy panel applet/plugin for GNOME (and now Xfce) users who use Xmonad as an alternative window manager. The applet will show the visible workspace(s), active window's title or anything you send its way from your xmonad.hs.

I recently took over xmonad-log-applet maintainership from Adam Wick, and today I'm happy to announce the release of version 2.0.0.


Changes since the previous release:

To install get and unpack the tarball or clone the repo, then run:

% ./configure --with-panel=gnome2
% make
% sudo make install

Substitute gnome2 with gnome3 or xfce4 if that's what you use. If you cloned the git repo, use ./ instead of ./configure. After restarting the panel you should be able to add the applet.

Use the provided sample xmonad.hs file to bind it to Xmonad. It depends on the DBus package, which currently doesn't compile with GHC 7.x, but it's easy to work around:

% cabal update
% cabal unpack DBus
% cd DBus-0.4
% $EDITOR DBus/Internal.hsc

Replace import Control.Exception with import Control.OldException, then:

% cabal configure
% cabal build
% cabal install

After this, your xmonad.hs should compile.

EDIT: With GHC 7.4, you also need to edit DBus/Message.hsc and prepend Foreign. to unsafePerformIO.

Happy Xmonading!

Published: 2011-09-20

Tags: gnome haskell xmonad xla

Spek 0.7 Released

I'm happy to announce the release of Spek 0.7 – a multi-platform acoustic spectrum analyser.

This version features multi-lingual support and a much better OS X integration. It also includes performance tweaks and many bug fixes.

Read the NEWS file for a full change log.

Download links and installation instructions are on the Spek website, get it while it's hot!

Published: 2011-04-24

Tags: spek gnome

Spek status update

Just a quick update on the status of the project.

Spek is now translatable, the next version will feature at least these translations: Dutch, German, Russian, Swedish and Ukrainian. We use Transifex to manage translations. Feel free to translate it into your language or to improve an existing translation. Transifex is a very easy to use tool, you don't have to know anything about programming to translate.

Some progress has been made on the packaging front, Spek packages are now available in Arch Linux, FreeBSD and Gentoo repositories.

I also created a package for Debian which needs a sponsor. If you are a Debian Developer I would appreciate a review and eventually an upload. The package can be found on

Last but not least, the next version will show some OS X love. Many OS X specific bugs have already been fixed or are scheduled to be fixed for the next release.

I expect to release Spek 0.7 sometime this spring. If you are feeling adventurous, try Spek from git master, compilation instructions are on the wiki.

Published: 2011-03-16

Tags: gnome spek

Spek 0.6 Released

I'm happy to announce the release of Spek 0.6 – a multi-platform acoustic spectrum analyser.

This version is about 3 times faster than 0.5 thanks to the lightning-fast FFmpeg decoders and the new multi-threaded analysis algorithm.

Spek 0.6 also features dramatically reduced size of the Windows installer (from 17.1 MiB to 9.8 MiB) and OS X bundle (from 10.5 MiB to 6.1 MiB)

Read the NEWS file for a complete change log.

Published: 2010-07-13

Tags: spek gnome

GStreamer, FFmpeg and Spek

Next version of Spek will use FFmpeg libraries to decode audio files. There are several reasons for the switch from GStreamer:

GStreamer is a fantastic framework for building complex multimedia pipelines, however what Spek really needs is a simple decoder and FFmpeg's libavformat and libavcodec do just that.

To handle some audio formats (e.g. APE and DTS), GStreamer relies on FFmpeg anyway, so the switch will result in fewer dependencies. It doesn't matter too much on GNU/Linux, but this will reduce the size of the Windows and Mac OS X installers.

Spek used GStreamer's spectrum plugin to perform the actual spectral analysis, with FFmpeg I had to implement it myself. The code I ended up with is very compact and gives room for a lot of experimentation, from using different window functions (it's still Hamming) and working on performance optimisations to switching to a faster FFT library.

The last bit is actually done, Spek now uses FFTW which in my tests is 1.5x to 2x faster than Kiss FFT used by GStreamer. Apart from that, FFTW can scale to multiple threads with near linear performance increase, future versions of Spek will take advantage of this.

UPDATE: As one of commenters pointed out, FFTs on small number of samples are not very parallelisable and my benchmarks confirm this. Also, I switched from FFTW to avfft which is built into FFmpeg. It's a little bit faster than FFTW for my particular use case. Lastly, 1.5x to 2x speed up was actually caused by a faster decoder, not by a faster FFT library.

Another thing that would be hard with GStreamer is static cross-compilation using mingw-cross-env to produce a single Windows executable. Because FFmpeg doesn't employ a plugin architecture, static linking is not an issue.

Last, but not least, the whole experience was very educational. I now remember why I loved C back in the days, the trick is to not even attempt to write any GObject code with it, that's what Vala is for. Fast Fourier Transform and the maths behind it is much fun, and NR was very helpful here.

For the curious, the code is merged to git master and pushed to Gitorious. The next version of Spek will be released sometime in July.

Published: 2010-07-04

Tags: spek gnome

Spek 0.5 - Mac OS X port

I'm happy to announce the release of version 0.5 of Spek, a multi-platform acoustic spectrum analyser.

Spek under OS X

Changes since the previous release:

This is the first version of Spek that features a Mac OS X port. All binaries in the app bundle are compiled completely from scratch using a slightly modified version of Aaron's excellent bockbuild project (the same tool that is used to package Banshee for OS X).

If your project uses the GNOME stack and you want to port it to Mac OS X -- give bockbuild a try. Check Spek's bundle script for gory details.

Published: 2010-06-27

Tags: gnome spek

Spek 0.4 Released

I've just released version 0.4 of Spek -- an acoustic spectrum analyser for GNU/Linux and Windows.

Spek showing a 24-bit FLAC file

This version brings the following features and improvements:

Grab Spek 0.4 while it's hot, the source code tarball and the Windows installer can be downloaded here.

A special "thank you" to users of a popular private tracker, their great suggestions helped to shape this release.

P.S. Hello, Planet GNOME! :)

Published: 2010-05-21

Tags: gnome spek

Page 1 / 2 »