diff options
author | Bjørn Forsman <bjorn.forsman@gmail.com> | 2013-06-05 23:12:16 +0200 |
---|---|---|
committer | Bjørn Forsman <bjorn.forsman@gmail.com> | 2013-06-06 19:30:41 +0200 |
commit | 142fca279b0d4469a7c96ca0b80824d2fd1f3953 (patch) | |
tree | f1d7624973eb39f9080c3f86744b52ed74743e02 /pkgs | |
parent | aaac7100c8fe3745c370fdd449d4ff033bb2515e (diff) |
solfege: new package
Solfege is an ear training application.
This patch is based on the work of @mornfall.
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/misc/solfege/default.nix | 44 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
2 files changed, 48 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 ]; + }; +} 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 { |