aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/audio/projectm/default.nix
diff options
context:
space:
mode:
authorSong Wenwu <iyzsong@gmail.com>2014-01-11 15:24:54 +0800
committerRok Garbas <rok@garbas.si>2014-01-11 19:14:28 +0100
commit531090d5de104492e34e7f76792c6595f6c92d4a (patch)
tree58156ef2cf0da141dcc7e781f395fa579009df8d /pkgs/applications/audio/projectm/default.nix
parent4918c1436bb011be0bd5dc5c80efc3d4a056b485 (diff)
add projectM 2.1.0
Diffstat (limited to 'pkgs/applications/audio/projectm/default.nix')
-rw-r--r--pkgs/applications/audio/projectm/default.nix51
1 files changed, 51 insertions, 0 deletions
diff --git a/pkgs/applications/audio/projectm/default.nix b/pkgs/applications/audio/projectm/default.nix
new file mode 100644
index 000000000000..2dd251ddd5bd
--- /dev/null
+++ b/pkgs/applications/audio/projectm/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchurl, pkgconfig, cmake
+, glew, ftgl, ttf_bitstream_vera
+, withQt ? true, qt4
+, withLibvisual ? false, libvisual, SDL
+, withJack ? false, jackaudio
+, withPulseAudio ? true, pulseaudio
+}:
+
+assert withJack -> withQt;
+assert withPulseAudio -> withQt;
+
+stdenv.mkDerivation {
+ name = "projectm-2.1.0";
+
+ meta = {
+ description = "Music Visualizer";
+ homepage = "http://projectm.sourceforge.net/";
+ license = stdenv.lib.licenses.lgpl21Plus;
+ platforms = stdenv.lib.platforms.linux;
+ };
+
+ src = fetchurl {
+ url = "mirror://sourceforge/projectm/2.1.0/projectM-complete-2.1.0-Source.tar.gz";
+ sha256 = "1vh6jk68a0jdb6qwppb6f8cbgmhnv2ba3bcavzfd6sq06gq08cji";
+ };
+
+ patchPhase = ''
+ sed -i 's:''${LIBVISUAL_PLUGINSDIR}:''${CMAKE_INSTALL_PREFIX}/lib/libvisual-0.4:' \
+ src/projectM-libvisual/CMakeLists.txt
+ '';
+
+ nativeBuildInputs = [ pkgconfig cmake ];
+
+ cmakeFlags = ''
+ -DprojectM_FONT_MENU=${ttf_bitstream_vera}/share/fonts/truetype/VeraMono.ttf
+ -DprojectM_FONT_TITLE=${ttf_bitstream_vera}/share/fonts/truetype/Vera.ttf
+ -DINCLUDE-PROJECTM-TEST=OFF
+ -DINCLUDE-PROJECTM-QT=${if withQt then "ON" else "OFF"}
+ -DINCLUDE-PROJECTM-LIBVISUAL=${if withLibvisual then "ON" else "OFF"}
+ -DINCLUDE-PROJECTM-JACK=${if withJack then "ON" else "OFF"}
+ -DINCLUDE-PROJECTM-PULSEAUDIO=${if withPulseAudio then "ON" else "OFF"}
+ '';
+
+ buildInputs = with stdenv.lib;
+ [ glew ftgl ]
+ ++ optional withQt qt4
+ ++ optionals withLibvisual [ libvisual SDL ]
+ ++ optional withJack jackaudio
+ ++ optional withPulseAudio pulseaudio
+ ;
+}