aboutsummaryrefslogtreecommitdiff
path: root/pkgs/misc/solfege
diff options
context:
space:
mode:
authorBjørn Forsman <bjorn.forsman@gmail.com>2013-06-05 23:12:16 +0200
committerBjørn Forsman <bjorn.forsman@gmail.com>2013-06-06 19:30:41 +0200
commit142fca279b0d4469a7c96ca0b80824d2fd1f3953 (patch)
treef1d7624973eb39f9080c3f86744b52ed74743e02 /pkgs/misc/solfege
parentaaac7100c8fe3745c370fdd449d4ff033bb2515e (diff)
solfege: new package
Solfege is an ear training application. This patch is based on the work of @mornfall.
Diffstat (limited to 'pkgs/misc/solfege')
-rw-r--r--pkgs/misc/solfege/default.nix44
1 files changed, 44 insertions, 0 deletions
diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix
new file mode 100644
index 000000000000..0449f72c9972
--- /dev/null
+++ b/pkgs/misc/solfege/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchurl, pkgconfig, python, pygtk, gettext, texinfo
+, ghostscript, pysqlite, librsvg, gdk_pixbuf, txt2man, timidity, mpg123
+, alsaUtils, vorbisTools, csound, lilypond
+, makeWrapper
+}:
+
+stdenv.mkDerivation rec {
+ name = "solfege-3.22.0";
+
+ src = fetchurl {
+ url = "mirror://sourceforge/solfege/${name}.tar.gz";
+ sha256 = "10klrhdb1n67xd4bndk6z6idyf0pvwz7hcdg9ibalms7ywl3b23x";
+ };
+
+ buildInputs = [ pkgconfig python pygtk gettext texinfo
+ ghostscript pysqlite librsvg gdk_pixbuf txt2man makeWrapper
+ ];
+
+ preBuild = ''
+ sed -i -e 's|wav_player=.*|wav_player=${alsaUtils}/bin/aplay|' \
+ -e 's|midi_player=.*|midi_player=${timidity}/bin/timidity|' \
+ -e 's|mp3_player=.*|mp3_player=${mpg123}/bin/mpg123|' \
+ -e 's|ogg_player=.*|ogg_player=${vorbisTools}/bin/ogg123|' \
+ -e 's|csound=.*|csound=${csound}/bin/csound|' \
+ -e 's|lilypond-book=.*|lilypond-book=${lilypond}/bin/lilypond-book|' \
+ default.config
+ '';
+
+ postInstall = ''
+ set -x
+ find "${librsvg}" "${gdk_pixbuf}" -name loaders.cache -print0 | xargs -0 cat > "$out/gdk-pixbuf.loaders"
+ wrapProgram "$out/bin/solfege" \
+ --prefix PYTHONPATH ':' "$PYTHONPATH" \
+ --set GDK_PIXBUF_MODULE_FILE "$out/gdk-pixbuf.loaders"
+ '';
+
+ meta = {
+ description = "Ear training program";
+ homepage = http://www.solfege.org/;
+ license = stdenv.lib.licenses.gpl3;
+ platforms = stdenv.lib.platforms.linux;
+ maintainers = with stdenv.lib.maintainers; [ bjornfor ];
+ };
+}