diff options
author | Evgeny Egorochkin <phreedom@yandex.ru> | 2013-05-19 09:51:56 -0700 |
---|---|---|
committer | Evgeny Egorochkin <phreedom@yandex.ru> | 2013-05-19 09:51:56 -0700 |
commit | a22f94b4f27ebfe5142eff7da60b1c5e2e557880 (patch) | |
tree | 94df87cfd30c06b75c221df047ab9c50f64fb6b0 | |
parent | 677090cad93bc93c9c5c31d122541510328f1abb (diff) | |
parent | b274308c0c6850535a71b4555685f28239b6eea7 (diff) | |
download | nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.tar nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.tar.gz nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.tar.bz2 nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.tar.lz nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.tar.xz nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.tar.zst nixlib-a22f94b4f27ebfe5142eff7da60b1c5e2e557880.zip |
Merge pull request #543 from bjornfor/qmmp
Add Qmmp audio player (plus dependencies)
-rw-r--r-- | pkgs/applications/audio/qmmp/default.nix | 57 | ||||
-rw-r--r-- | pkgs/data/misc/freepats/default.nix | 22 | ||||
-rw-r--r-- | pkgs/development/libraries/wildmidi/default.nix | 36 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 6 |
4 files changed, 121 insertions, 0 deletions
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix new file mode 100644 index 000000000000..b865bc788c69 --- /dev/null +++ b/pkgs/applications/audio/qmmp/default.nix @@ -0,0 +1,57 @@ +{ stdenv, fetchurl, cmake, qt4, pkgconfig, x11 +# transports +, curl, libmms +# input plugins +, libmad, taglib, libvorbis, libogg, flac, libmpcdec, libmodplug, libsndfile +, libcdio, cdparanoia, libcddb, faad2, ffmpeg, wildmidi +# output plugins +, alsaLib, pulseaudio +# effect plugins +, libsamplerate +}: + +# Additional plugins that can be added: +# wavpack (http://www.wavpack.com/) +# gme (Game music support) +# Ogg Opus support +# BS2B effect plugin (http://bs2b.sourceforge.net/) +# JACK audio support +# ProjectM visualization plugin + +# To make MIDI work we must tell Qmmp what instrument configuration to use (and +# this can unfortunately not be set at configure time): +# Go to settings (ctrl-p), navigate to the WildMidi plugin and click on +# Preferences. In the instrument configuration field, type the path to +# /nix/store/*wildmidi*/etc/wildmidi.cfg (or your own custom cfg file). + +# Qmmp installs working .desktop file(s) all by itself, so we don't need to +# handle that. + +stdenv.mkDerivation rec { + name = "qmmp-0.7.0"; + + src = fetchurl { + url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2"; + sha256 = "0g8qcs82y3dy06lsgam2w6gh2ccx0frlw9fp4xg947vi3a16g6ig"; + }; + + buildInputs = + [ # basic requirements + cmake qt4 pkgconfig x11 + # transports + curl libmms + # input plugins + libmad taglib libvorbis libogg flac libmpcdec libmodplug libsndfile + libcdio cdparanoia libcddb faad2 ffmpeg wildmidi + # output plugins + alsaLib pulseaudio + # effect plugins + libsamplerate + ]; + + meta = { + description = "Qt-based audio player that looks like Winamp"; + homepage = http://qmmp.ylsoftware.com/; + license = stdenv.lib.licenses.gpl2; + }; +} diff --git a/pkgs/data/misc/freepats/default.nix b/pkgs/data/misc/freepats/default.nix new file mode 100644 index 000000000000..356041bf761f --- /dev/null +++ b/pkgs/data/misc/freepats/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "freepats-20060219"; + + src = fetchurl { + url = "http://freepats.zenvoid.org/${name}.tar.bz2"; + sha256 = "12iw36rd94zirll96cd5k0va7p5hxmf2shvjlhzihcmjaw8flq82"; + }; + + installPhase = ''mkdir "$out"; cp -r . "$out"''; + + meta = { + description = "Instrument patches, for MIDI synthesizers"; + longDescription = '' + Freepats is a project to create a free and open set of instrument + patches, in any format, that can be used with softsynths. + ''; + homepage = http://freepats.zenvoid.org/; + license = stdenv.lib.licenses.gpl2; + }; +} diff --git a/pkgs/development/libraries/wildmidi/default.nix b/pkgs/development/libraries/wildmidi/default.nix new file mode 100644 index 000000000000..0c51bd2d38b5 --- /dev/null +++ b/pkgs/development/libraries/wildmidi/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchurl, alsaLib, freepats }: + +stdenv.mkDerivation rec { + name = "wildmidi-0.2.3.5"; + + src = fetchurl { + url = "mirror://sourceforge/project/wildmidi/wildmidi/${name}.tar.gz"; + sha256 = "0m75753mn0rbwja180c2qk53s149wp4k35dijr2i6pa7sc12fr00"; + }; + + # NOTE: $out in configureFlags, like this: + # configureFlags = "--disable-werror --with-wildmidi-cfg=$out/etc/wildmidi.cfg"; + # is not expanded, so use this workaround: + preConfigure = '' + configureFlags="--disable-werror --with-wildmidi-cfg=$out/etc/wildmidi.cfg" + ''; + + buildInputs = [ alsaLib ]; + + postInstall = '' + mkdir "$out"/etc + echo "dir ${freepats}" > "$out"/etc/wildmidi.cfg + echo "source ${freepats}/freepats.cfg" >> "$out"/etc/wildmidi.cfg + ''; + + meta = { + description = "Software MIDI player and library"; + longDescription = '' + WildMIDI is a simple software midi player which has a core softsynth + library that can be use with other applications. + ''; + homepage = http://wildmidi.sourceforge.net/; + # The library is LGPLv3, the wildmidi executable is GPLv3 + license = stdenv.lib.licenses.lgpl3; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c2c2dacecead..6d1a47b29e86 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5204,6 +5204,8 @@ let inherit libpng; }; + wildmidi = callPackage ../development/libraries/wildmidi { }; + wvstreams = callPackage ../development/libraries/wvstreams { }; wxGTK = wxGTK28; @@ -6573,6 +6575,8 @@ let freefont_ttf = callPackage ../data/fonts/freefont-ttf { }; + freepats = callPackage ../data/misc/freepats { }; + gentium = callPackage ../data/fonts/gentium {}; gnome_user_docs = callPackage ../data/documentation/gnome-user-docs { }; @@ -7811,6 +7815,8 @@ let qemuImage = callPackage ../applications/virtualization/qemu/linux-img { }; + qmmp = callPackage ../applications/audio/qmmp { }; + qsampler = callPackage ../applications/audio/qsampler { }; qsynth = callPackage ../applications/audio/qsynth { }; |