From 142fca279b0d4469a7c96ca0b80824d2fd1f3953 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 5 Jun 2013 23:12:16 +0200 Subject: solfege: new package Solfege is an ear training application. This patch is based on the work of @mornfall. --- pkgs/misc/solfege/default.nix | 44 +++++++++++++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++++ 2 files changed, 48 insertions(+) create mode 100644 pkgs/misc/solfege/default.nix (limited to 'pkgs') 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 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 93837cb6ee1e..94a46f6c6614 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9191,6 +9191,10 @@ let nut = callPackage ../applications/misc/nut { }; + solfege = callPackage ../misc/solfege { + pysqlite = pkgs.pythonPackages.sqlite3; + }; + disnix = callPackage ../tools/package-management/disnix { }; disnix_activation_scripts = callPackage ../tools/package-management/disnix/activation-scripts { -- cgit v1.2.3