Merge pull request #6833 from magnetophon/puredata-with-plugins

Puredata with plugins

lethalman e99dc2b0 cf9994a5

+311
+37
pkgs/applications/audio/pd-plugins/cyclone/default.nix
···
··· 1 + { stdenv, fetchurl, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "cyclone-${version}"; 5 + version = "0.1-alpha55"; 6 + 7 + src = fetchurl { 8 + url = "http://downloads.sourceforge.net/project/pure-data/libraries/cyclone/${name}.tar.gz"; 9 + sha256 = "1yys9xrlz09xgnqk2gqdl8vw6xj6l9d7km2lkihidgjql0jx5b5i"; 10 + }; 11 + 12 + buildInputs = [ puredata ]; 13 + 14 + patchPhase = '' 15 + for file in `grep -r -l g_canvas.h` 16 + do 17 + sed -i 's|#include "g_canvas.h"|#include "${puredata}/include/pd/g_canvas.h"|g' $file 18 + done 19 + for file in `grep -r -l m_imp.h` 20 + do 21 + sed -i 's|#include "m_imp.h"|#include "${puredata}/include/pd/m_imp.h"|g' $file 22 + done 23 + ''; 24 + 25 + installPhase = '' 26 + mkdir -p $out/cyclone 27 + cp -r bin/* $out/cyclone 28 + ''; 29 + 30 + meta = { 31 + description = "A library of PureData classes, bringing some level of compatibility between Max/MSP and Pd environments"; 32 + homepage = http://puredata.info/downloads/cyclone; 33 + license = stdenv.lib.licenses.tcltk; 34 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 35 + platforms = stdenv.lib.platforms.linux; 36 + }; 37 + }
+42
pkgs/applications/audio/pd-plugins/helmholtz/default.nix
···
··· 1 + { stdenv, fetchurl, unzip, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "helmholtz"; 5 + 6 + src = fetchurl { 7 + url = "http://www.katjaas.nl/helmholtz/helmholtz~.zip"; 8 + name = "helmholtz.zip"; 9 + sha256 = "0h1fj7lmvq9j6rmw33rb8k0byxb898bi2xhcwkqalb84avhywgvs"; 10 + }; 11 + 12 + buildInputs = [ unzip puredata ]; 13 + 14 + unpackPhase = '' 15 + unzip $src 16 + mv helmholtz~/src/helmholtz\~.cpp . 17 + mv helmholtz~/src/Helmholtz.cpp . 18 + mv helmholtz~/src/include/ . 19 + mv helmholtz~/src/Makefile . 20 + rm -rf helmholtz~/src/ 21 + rm helmholtz~/helmholtz~.pd_darwin 22 + rm helmholtz~/helmholtz~.dll 23 + rm -rf __MACOSX 24 + ''; 25 + 26 + patchPhase = '' 27 + sed -i "s@current: pd_darwin@current: pd_linux@g" Makefile 28 + sed -i "s@-Wl@@g" Makefile 29 + ''; 30 + 31 + installPhase = '' 32 + cp -r helmholtz~/ $out/ 33 + ''; 34 + 35 + meta = { 36 + description = "Time domain pitch tracker for Pure Data"; 37 + homepage = http://www.katjaas.nl/helmholtz/helmholtz.html; 38 + license = stdenv.lib.licenses.bsd3; 39 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 40 + platforms = stdenv.lib.platforms.linux; 41 + }; 42 + }
+33
pkgs/applications/audio/pd-plugins/maxlib/default.nix
···
··· 1 + { stdenv, fetchurl, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "maxlib-${version}"; 5 + version = "1.5.5"; 6 + 7 + src = fetchurl { 8 + url = "http://downloads.sourceforge.net/project/pure-data/libraries/maxlib/${name}.tar.gz"; 9 + sha256 = "0vxl9s815dnay5r0067rxsfh8f6jbk61f0nxrydzjydfycza7p1w"; 10 + }; 11 + 12 + buildInputs = [ puredata ]; 13 + 14 + patchPhase = '' 15 + for i in ${puredata}/include/pd/*; do 16 + ln -s $i . 17 + done 18 + sed -i "s@/usr@$out@g" Makefile 19 + ''; 20 + 21 + postInstall = '' 22 + mv $out/local/lib/pd-externals/maxlib/ $out 23 + rm -rf $out/local/ 24 + ''; 25 + 26 + meta = { 27 + description = "A library of non-tilde externals for puredata, by Miller Puckette"; 28 + homepage = http://puredata.info/downloads/maxlib; 29 + license = stdenv.lib.licenses.gpl2; 30 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 31 + platforms = stdenv.lib.platforms.linux; 32 + }; 33 + }
+60
pkgs/applications/audio/pd-plugins/mrpeach/default.nix
···
··· 1 + { stdenv, fetchurl, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "mrpeach-${version}"; 5 + version = "1.1"; 6 + 7 + # this was to only usable url I could find: 8 + # - The main url changes hash: http://pure-data.cvs.sourceforge.net/viewvc/pure-data/externals/mrpeach/?view=tar 9 + # - There are lot's of places where this SW is available as part of a big pkg: pd-extended, pd-l2ork 10 + # - It's just 211K 11 + 12 + src = fetchurl { 13 + url = "http://slackonly.com/pub/korgie/sources/pd_mrpeach-2011.10.21.tar.gz"; 14 + sha256 = "12jqba3jsdrk20ib9wc2wiivki88ypcd4mkzgsri9siywbbz9w8x"; 15 + }; 16 + 17 + buildInputs = [puredata ]; 18 + 19 + patchPhase = '' 20 + for D in net osc 21 + do 22 + sed -i "s@prefix = /usr/local@prefix = $out@g" $D/Makefile 23 + for i in ${puredata}/include/pd/*; do 24 + ln -s $i $D/ 25 + done 26 + done 27 + ''; 28 + 29 + buildPhase = '' 30 + for D in net osc 31 + do 32 + cd $D 33 + make 34 + cd .. 35 + done 36 + ''; 37 + 38 + installPhase = '' 39 + for D in net osc 40 + do 41 + cd $D 42 + make install 43 + cd .. 44 + done 45 + ''; 46 + 47 + fixupPhase = '' 48 + mv $out/lib/pd-externals/net $out 49 + mv $out/lib/pd-externals/osc $out 50 + rm -rf $out/lib 51 + ''; 52 + 53 + meta = { 54 + description = "A collection of Pd objectclasses for OSC-messages"; 55 + homepage = http://puredata.info/downloads/osc; 56 + license = stdenv.lib.licenses.gpl2; 57 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 58 + platforms = stdenv.lib.platforms.linux; 59 + }; 60 + }
+30
pkgs/applications/audio/pd-plugins/puremapping/default.nix
···
··· 1 + { stdenv, fetchurl, unzip, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "puremapping"; 5 + 6 + src = fetchurl { 7 + url = "http://www.chnry.net/ch/IMG/zip/puremapping-libdir-generic.zip"; 8 + name = "puremapping"; 9 + sha256 = "1ygzxsfj3rnzjkpmgi4wch810q8s5vm1gdam6a938hbbvamafgvc"; 10 + }; 11 + 12 + buildInputs = [ unzip puredata ]; 13 + 14 + unpackPhase = '' 15 + unzip $src 16 + ''; 17 + 18 + installPhase = '' 19 + mkdir -p $out/puremapping 20 + mv puremapping/ $out 21 + ''; 22 + 23 + meta = { 24 + description = "Set of externals to facilitate the use of sensors within Pure Data and to create complex relations between input and output of a dynamic system"; 25 + homepage = http://www.chnry.net/ch/?090-Pure-Mapping&lang=en; 26 + license = stdenv.lib.licenses.gpl1; 27 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 28 + platforms = stdenv.lib.platforms.linux; 29 + }; 30 + }
+35
pkgs/applications/audio/pd-plugins/timbreid/default.nix
···
··· 1 + { stdenv, fetchurl, unzip, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + version = "0.6.0"; 5 + name = "timbreid-${version}"; 6 + 7 + src = fetchurl { 8 + url = "http://williambrent.conflations.com/pd/timbreID-${version}-src.zip"; 9 + sha256 = "02rnkb0vpjxrr60c3hryv7zhyjpci2mi9dk27kjxpj5zp26gjk0p"; 10 + }; 11 + 12 + buildInputs = [ unzip puredata ]; 13 + 14 + unpackPhase = '' 15 + unzip $src 16 + mv timbreID-0.6.0-src/tID/* . 17 + rm -rf timbreID-0.6.0-src/tID/ 18 + rm -rf timbreID-0.6.0-src/INSTALL.txt 19 + ''; 20 + 21 + installPhase = '' 22 + mkdir -p $out/ 23 + cp -r *.pd $out/ 24 + cp -r *.pd_linux $out/ 25 + cp -r *.wav $out/ 26 + ''; 27 + 28 + meta = { 29 + description = "A collection of audio feature analysis externals for puredata"; 30 + homepage = http://williambrent.conflations.com/pages/research.html; 31 + license = stdenv.lib.licenses.gpl3; 32 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 33 + platforms = stdenv.lib.platforms.linux; 34 + }; 35 + }
+36
pkgs/applications/audio/pd-plugins/zexy/default.nix
···
··· 1 + { stdenv, fetchurl, autoconf, automake, puredata }: 2 + 3 + stdenv.mkDerivation rec { 4 + name = "zexy-${version}"; 5 + version = "2.2.4"; 6 + 7 + src = fetchurl { 8 + url = "http://puredata.info/downloads/zexy/releases/${version}/${name}.tar.gz"; 9 + sha256 = "1xpgl82c2lc6zfswjsa7z10yhv5jb7a4znzh3nc7ffrzm1z8vylp"; 10 + }; 11 + 12 + buildInputs = [ autoconf automake puredata ]; 13 + 14 + patchPhase = '' 15 + cd src/ 16 + for i in ${puredata}/include/pd/*; do 17 + ln -s $i . 18 + done 19 + patchShebangs 20 + ./bootstrap.sh 21 + ./configure --enable-lpt=no --prefix=$out 22 + ''; 23 + 24 + postInstall = '' 25 + mv $out/lib/pd/extra/zexy $out 26 + rm -rf $out/lib 27 + ''; 28 + 29 + meta = { 30 + description = "The swiss army knife for puredata"; 31 + homepage = http://puredata.info/downloads/zexy; 32 + license = stdenv.lib.licenses.gpl2; 33 + maintainers = [ stdenv.lib.maintainers.magnetophon ]; 34 + platforms = stdenv.lib.platforms.linux; 35 + }; 36 + }
+23
pkgs/applications/audio/puredata/wrapper.nix
···
··· 1 + { stdenv, buildEnv, puredata, makeWrapper, plugins }: 2 + 3 + let 4 + puredataFlags = map (x: "-path ${x}/") plugins; 5 + drv = buildEnv { 6 + name = "puredata-with-plugins-" + (builtins.parseDrvName puredata.name).version; 7 + 8 + paths = [ puredata ] ++ plugins; 9 + 10 + postBuild = '' 11 + # TODO: This could be avoided if buildEnv could be forced to create all directories 12 + if [ -L $out/bin ]; then 13 + rm $out/bin 14 + mkdir $out/bin 15 + for i in ${puredata}/bin/*; do 16 + ln -s $i $out/bin 17 + done 18 + fi 19 + wrapProgram $out/bin/pd \ 20 + --add-flags "${toString puredataFlags}" 21 + ''; 22 + }; 23 + in stdenv.lib.overrideDerivation drv (x : { buildInputs = x.buildInputs ++ [ makeWrapper ]; })
+15
pkgs/top-level/all-packages.nix
··· 9996 9997 cvs2svn = callPackage ../applications/version-management/cvs2svn { }; 9998 9999 d4x = callPackage ../applications/misc/d4x { }; 10000 10001 darcs = haskell-ng.lib.overrideCabal haskellngPackages.darcs (drv: { ··· 10662 10663 hello = callPackage ../applications/misc/hello/ex-2 { }; 10664 10665 herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { }; 10666 10667 hexchat = callPackage ../applications/networking/irc/hexchat { }; ··· 11085 vaapiSupport = config.mpv.vaapiSupport or false; 11086 }; 11087 11088 mrxvt = callPackage ../applications/misc/mrxvt { }; 11089 11090 mudlet = callPackage ../games/mudlet { ··· 11154 imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix { 11155 lua = lua5; 11156 }; 11157 11158 mupdf = callPackage ../applications/misc/mupdf { 11159 openjpeg = openjpeg_2_0_1; ··· 11340 pulseview = callPackage ../applications/science/electronics/pulseview { }; 11341 11342 puredata = callPackage ../applications/audio/puredata { }; 11343 11344 pythonmagick = callPackage ../applications/graphics/PythonMagick { }; 11345 ··· 11743 vte = gnome3.vte; 11744 gtk = gtk3; 11745 }; 11746 11747 timidity = callPackage ../tools/misc/timidity { }; 11748 ··· 12330 zed = callPackage ../applications/editors/zed { }; 12331 12332 zeroc_ice = callPackage ../development/libraries/zeroc-ice { }; 12333 12334 girara = callPackage ../applications/misc/girara { 12335 gtk = gtk3;
··· 9996 9997 cvs2svn = callPackage ../applications/version-management/cvs2svn { }; 9998 9999 + cyclone = callPackage ../applications/audio/pd-plugins/cyclone { }; 10000 + 10001 d4x = callPackage ../applications/misc/d4x { }; 10002 10003 darcs = haskell-ng.lib.overrideCabal haskellngPackages.darcs (drv: { ··· 10664 10665 hello = callPackage ../applications/misc/hello/ex-2 { }; 10666 10667 + helmholtz = callPackage ../applications/audio/pd-plugins/helmholtz { }; 10668 + 10669 herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { }; 10670 10671 hexchat = callPackage ../applications/networking/irc/hexchat { }; ··· 11089 vaapiSupport = config.mpv.vaapiSupport or false; 11090 }; 11091 11092 + mrpeach = callPackage ../applications/audio/pd-plugins/mrpeach { }; 11093 + 11094 mrxvt = callPackage ../applications/misc/mrxvt { }; 11095 11096 mudlet = callPackage ../games/mudlet { ··· 11160 imapfilter = callPackage ../applications/networking/mailreaders/imapfilter.nix { 11161 lua = lua5; 11162 }; 11163 + 11164 + maxlib = callPackage ../applications/audio/pd-plugins/maxlib { }; 11165 11166 mupdf = callPackage ../applications/misc/mupdf { 11167 openjpeg = openjpeg_2_0_1; ··· 11348 pulseview = callPackage ../applications/science/electronics/pulseview { }; 11349 11350 puredata = callPackage ../applications/audio/puredata { }; 11351 + puredata-with-plugins = plugins: callPackage ../applications/audio/puredata/wrapper.nix { inherit plugins; }; 11352 + 11353 + puremapping = callPackage ../applications/audio/pd-plugins/puremapping { }; 11354 11355 pythonmagick = callPackage ../applications/graphics/PythonMagick { }; 11356 ··· 11754 vte = gnome3.vte; 11755 gtk = gtk3; 11756 }; 11757 + 11758 + timbreid = callPackage ../applications/audio/pd-plugins/timbreid { }; 11759 11760 timidity = callPackage ../tools/misc/timidity { }; 11761 ··· 12343 zed = callPackage ../applications/editors/zed { }; 12344 12345 zeroc_ice = callPackage ../development/libraries/zeroc-ice { }; 12346 + 12347 + zexy = callPackage ../applications/audio/pd-plugins/zexy { }; 12348 12349 girara = callPackage ../applications/misc/girara { 12350 gtk = gtk3;