Merge pull request #19992 from magnetophon/faustUpdate

faust 1 and 2 update, plus adapt affected pkgs
This commit is contained in:
Frederik Rietdijk 2016-11-07 14:28:36 +01:00 committed by GitHub
commit 811def0f18
18 changed files with 233 additions and 367 deletions

View file

@ -1,65 +0,0 @@
{ stdenv, pkgs, callPackage, fetchFromGitHub, faust2jack, helmholtz, mrpeach, puredata-with-plugins }:
stdenv.mkDerivation rec {
name = "VoiceOfFaust-${version}";
version = "0.7";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "VoiceOfFaust";
rev = "v${version}";
sha256 = "14jjs7cnhg20pzijgblr7caspcpx8p8lpkbvjzc656s9lqn6m9sn";
};
plugins = [ helmholtz mrpeach ];
pitchTracker = puredata-with-plugins plugins;
buildInputs = [ faust2jack ];
runtimeInputs = [ pitchTracker ];
patchPhase = ''
sed -i "s@pd -nodac@${pitchTracker}/bin/pd -nodac@g" launchers/synthWrapper
sed -i "s@../PureData/OscSendVoc.pd@$out/PureData/OscSendVoc.pd@g" launchers/synthWrapper
'';
buildPhase = ''
faust2jack -osc classicVocoder.dsp
faust2jack -osc CZringmod.dsp
faust2jack -osc FMsinger.dsp
faust2jack -osc FOFvocoder.dsp
faust2jack -osc Karplus-StrongSinger.dsp
faust2jack -osc -sch -t 99999 Karplus-StrongSingerMaxi.dsp
faust2jack -osc PAFvocoder.dsp
faust2jack -osc -sch -t 99999 stringSinger.dsp
faust2jack -osc subSinger.dsp
# doesn't compile on most systems, too big:
#faust2jack -osc -sch -t 99999 VocSynthFull.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp launchers/* $out/bin/
cp classicVocoder $out/bin/
cp CZringmod $out/bin/
cp FMsinger $out/bin/
cp FOFvocoder $out/bin/
cp Karplus-StrongSinger $out/bin/
cp Karplus-StrongSingerMaxi $out/bin/
cp PAFvocoder $out/bin/
cp stringSinger $out/bin/
cp subSinger $out/bin/
#cp VocSynthFull $out/bin/
mkdir $out/PureData/
cp PureData/OscSendVoc.pd $out/PureData/OscSendVoc.pd
'';
meta = {
description = "Turn your voice into a synthesizer";
homepage = https://github.com/magnetophon/VoiceOfFaust;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}

View file

@ -9,11 +9,11 @@ with stdenv.lib.strings;
let let
version = "0.9.73"; version = "0.9.90";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/faudiostream/faust-${version}.tgz"; url = "mirror://sourceforge/project/faudiostream/faust-${version}.tgz";
sha256 = "0x2scxkwvvjx7b7smj5xb8kr269qakf49z3fxpasd9g7025q44k5"; sha256 = "0d1fqwymyfb73zkmpwv4zk4gsg4ji7qs20mfsr20skmnqx30xvna";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {
@ -167,7 +167,8 @@ let
# export parts of the build environment # export parts of the build environment
for script in "$out"/bin/*; do for script in "$out"/bin/*; do
wrapProgram "$script" \ wrapProgram "$script" \
--set FAUST_LIB_PATH "${faust}/lib/faust" \ --set FAUSTLIB "${faust}/lib/faust" \
--set FAUSTINC "${faust}/include/faust" \
--prefix PATH : "$PATH" \ --prefix PATH : "$PATH" \
--prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \ --prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \
--set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \ --set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \

View file

@ -1,210 +0,0 @@
{ stdenv
, coreutils
, fetchgit
, makeWrapper
, pkgconfig
}:
with stdenv.lib.strings;
let
version = "2016-07-19";
src = fetchgit {
url = "git://git.code.sf.net/p/faudiostream/code";
rev = "16c22dc0193c10521b1dc16f98443d9c206bb5dd";
sha256 = "01rbcjfhpd5casi72ffi1j95f65ji60l629sgav93pvs0kpdacz5";
};
meta = with stdenv.lib; {
homepage = http://faust.grame.fr/;
downloadPage = http://sourceforge.net/projects/faudiostream/files/;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ magnetophon pmahoney ];
};
faust = stdenv.mkDerivation {
name = "faust-${version}";
inherit src;
buildInputs = [ makeWrapper ];
passthru = {
inherit wrap wrapWithBuildEnv;
};
preConfigure = ''
makeFlags="$makeFlags prefix=$out"
# The faust makefiles use 'system ?= $(shell uname -s)' but nix
# defines 'system' env var, so undefine that so faust detects the
# correct system.
unset system
'';
# Remove most faust2appl scripts since they won't run properly
# without additional paths setup. See faust.wrap,
# faust.wrapWithBuildEnv.
postInstall = ''
# syntax error when eval'd directly
pattern="faust2!(svg)"
(shopt -s extglob; rm "$out"/bin/$pattern)
'';
postFixup = ''
# Set faustpath explicitly.
substituteInPlace "$out"/bin/faustpath \
--replace "/usr/local /usr /opt /opt/local" "$out"
# The 'faustoptflags' is 'source'd into other faust scripts and
# not used as an executable, so patch 'uname' usage directly
# rather than use makeWrapper.
substituteInPlace "$out"/bin/faustoptflags \
--replace uname "${coreutils}/bin/uname"
# wrapper for scripts that don't need faust.wrap*
for script in "$out"/bin/faust2*; do
wrapProgram "$script" \
--prefix PATH : "$out"/bin
done
'';
meta = meta // {
description = "A functional programming language for realtime audio signal processing";
longDescription = ''
FAUST (Functional Audio Stream) is a functional programming
language specifically designed for real-time signal processing
and synthesis. FAUST targets high-performance signal processing
applications and audio plug-ins for a variety of platforms and
standards.
The Faust compiler translates DSP specifications into very
efficient C++ code. Thanks to the notion of architecture,
FAUST programs can be easily deployed on a large variety of
audio platforms and plugin formats (jack, alsa, ladspa, maxmsp,
puredata, csound, supercollider, pure, vst, coreaudio) without
any change to the FAUST code.
This package has just the compiler, libraries, and headers.
Install faust2* for specific faust2appl scripts.
'';
};
};
# Default values for faust2appl.
faust2ApplBase =
{ baseName
, dir ? "tools/faust2appls"
, scripts ? [ baseName ]
, ...
}@args:
args // {
name = "${baseName}-${version}";
inherit src;
configurePhase = ":";
buildPhase = ":";
installPhase = ''
runHook preInstall
mkdir -p "$out/bin"
for script in ${concatStringsSep " " scripts}; do
cp "${dir}/$script" "$out/bin/"
done
runHook postInstall
'';
postInstall = ''
# For the faust2appl script, change 'faustpath' and
# 'faustoptflags' to absolute paths.
for script in "$out"/bin/*; do
substituteInPlace "$script" \
--replace ". faustpath" ". '${faust}/bin/faustpath'" \
--replace ". faustoptflags" ". '${faust}/bin/faustoptflags'"
done
'';
meta = meta // {
description = "The ${baseName} script, part of faust functional programming language for realtime audio signal processing";
};
};
# Some 'faust2appl' scripts, such as faust2alsa, run faust to
# generate cpp code, then invoke the c++ compiler to build the code.
# This builder wraps these scripts in parts of the stdenv such that
# when the scripts are called outside any nix build, they behave as
# if they were running inside a nix build in terms of compilers and
# paths being configured (e.g. rpath is set so that compiled
# binaries link to the libs inside the nix store)
#
# The function takes two main args: the appl name (e.g.
# 'faust2alsa') and an optional list of propagatedBuildInputs. It
# returns a derivation that contains only the bin/${appl} script,
# wrapped up so that it will run as if it was inside a nix build
# with those build inputs.
#
# The build input 'faust' is automatically added to the
# propagatedBuildInputs.
wrapWithBuildEnv =
{ baseName
, propagatedBuildInputs ? [ ]
, ...
}@args:
stdenv.mkDerivation ((faust2ApplBase args) // {
buildInputs = [ makeWrapper pkgconfig ];
propagatedBuildInputs = [ faust ] ++ propagatedBuildInputs;
postFixup = ''
# export parts of the build environment
for script in "$out"/bin/*; do
wrapProgram "$script" \
--set FAUSTLIB "${faust}/lib/faust" \
--set FAUSTINC "${faust}/include/faust" \
--prefix PATH : "$PATH" \
--prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \
--set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \
--set NIX_LDFLAGS "$NIX_LDFLAGS"
done
'';
});
# Builder for 'faust2appl' scripts, such as faust2firefox that
# simply need to be wrapped with some dependencies on PATH.
#
# The build input 'faust' is automatically added to the PATH.
wrap =
{ baseName
, runtimeInputs ? [ ]
, ...
}@args:
let
runtimePath = concatStringsSep ":" (map (p: "${p}/bin") ([ faust ] ++ runtimeInputs));
in stdenv.mkDerivation ((faust2ApplBase args) // {
buildInputs = [ makeWrapper ];
postFixup = ''
for script in "$out"/bin/*; do
wrapProgram "$script" --prefix PATH : "${runtimePath}"
done
'';
});
in faust

View file

@ -16,11 +16,11 @@ with stdenv.lib.strings;
let let
version = "2.0-a41"; version = "2.0.a51";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/faudiostream/faust-2.0.a41.tgz"; url = "mirror://sourceforge/project/faudiostream/faust-${version}.tgz";
sha256 = "1cq4x1cax0lswrcqv0limx5mjdi3187zlmh7cj2pndr0xq6b96cm"; sha256 = "1yryjqfqmxs7lxy95hjgmrncvl9kig3rcsmg0v49ghzz7vs7haxf";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {
@ -53,7 +53,7 @@ let
# defines 'system' env var, so undefine that so faust detects the # defines 'system' env var, so undefine that so faust detects the
# correct system. # correct system.
unset system unset system
sed -e "232s/LLVM_STATIC_LIBS/LLVMLIBS/" -i compiler/Makefile.unix # sed -e "232s/LLVM_STATIC_LIBS/LLVMLIBS/" -i compiler/Makefile.unix
# The makefile sets LLVM_<version> depending on the current llvm # The makefile sets LLVM_<version> depending on the current llvm
# version, but the detection code is quite brittle. # version, but the detection code is quite brittle.
@ -67,7 +67,7 @@ let
# #
# For now, fix this by 1) pinning the llvm version; 2) manually setting LLVM_VERSION # For now, fix this by 1) pinning the llvm version; 2) manually setting LLVM_VERSION
# to something the makefile will recognize. # to something the makefile will recognize.
sed '52iLLVM_VERSION=3.7.0' -i compiler/Makefile.unix sed '52iLLVM_VERSION=3.8.0' -i compiler/Makefile.unix
''; '';
# Remove most faust2appl scripts since they won't run properly # Remove most faust2appl scripts since they won't run properly
@ -151,7 +151,8 @@ let
for script in "$out"/bin/*; do for script in "$out"/bin/*; do
substituteInPlace "$script" \ substituteInPlace "$script" \
--replace ". faustpath" ". '${faust}/bin/faustpath'" \ --replace ". faustpath" ". '${faust}/bin/faustpath'" \
--replace ". faustoptflags" ". '${faust}/bin/faustoptflags'" --replace ". faustoptflags" ". '${faust}/bin/faustoptflags'" \
--replace " error " "echo"
done done
''; '';
@ -193,7 +194,9 @@ let
# export parts of the build environment # export parts of the build environment
for script in "$out"/bin/*; do for script in "$out"/bin/*; do
wrapProgram "$script" \ wrapProgram "$script" \
--set FAUSTLIB "${faust}/lib/faust" \
--set FAUST_LIB_PATH "${faust}/lib/faust" \ --set FAUST_LIB_PATH "${faust}/lib/faust" \
--set FAUSTINC "${faust}/include/faust" \
--prefix PATH : "$PATH" \ --prefix PATH : "$PATH" \
--prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \ --prefix PKG_CONFIG_PATH : "$PKG_CONFIG_PATH" \
--set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \ --set NIX_CFLAGS_COMPILE "$NIX_CFLAGS_COMPILE" \

View file

@ -1,11 +1,14 @@
{ faust { boost
, faust
, lv2 , lv2
, qt4
}: }:
faust.wrapWithBuildEnv { faust.wrapWithBuildEnv {
baseName = "faust2lv2"; baseName = "faust2lv2";
propagatedBuildInputs = [ lv2 ]; propagatedBuildInputs = [ boost lv2 qt4 ];
} }

View file

@ -1,14 +0,0 @@
{ boost
, faust1git
, lv2
, qt4
}:
faust1git.wrapWithBuildEnv {
baseName = "faust2lv2";
propagatedBuildInputs = [ boost lv2 qt4 ];
}

View file

@ -18,6 +18,7 @@ stdenv.mkDerivation rec {
postInstallFixup = "rm -rf $out/lib/lv2"; postInstallFixup = "rm -rf $out/lib/lv2";
meta = { meta = {
broken = true; # see: https://github.com/sampov2/foo-yc20/issues/7
description = "A Faust implementation of a 1969 designed Yamaha combo organ, the YC-20"; description = "A Faust implementation of a 1969 designed Yamaha combo organ, the YC-20";
homepage = https://github.com/sampov2/foo-yc20; homepage = https://github.com/sampov2/foo-yc20;
license = "BSD"; license = "BSD";

View file

@ -1,21 +1,22 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "CharacterCompressor-${version}"; name = "CharacterCompressor-${version}";
version = "0.3.1"; version = "0.3.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "CharacterCompressor"; repo = "CharacterCompressor";
rev = "V${version}"; rev = "V${version}";
sha256 = "0ci27v5k10prsmcd0g6q5vhr31mz8hsmrsdk436vfbcv3s108rcc"; sha256 = "1h0bhjhx023476gbijq842b6f8z71zcyn4c9mddwyb18w9cdamp5";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
faust2jaqt -vec -time -t 99999 CharacterCompressor.dsp faust2jaqt -vec -time -t 99999 CharacterCompressor.dsp
faust2lv2 -vec -time -gui -t 99999 CharacterCompressor.dsp
faust2jaqt -vec -time -t 99999 CharacterCompressorMono.dsp faust2jaqt -vec -time -t 99999 CharacterCompressorMono.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "lib/CharacterCompressor.lib"
faust2lv2 -vec -time -gui -t 99999 CharacterCompressor.dsp
faust2lv2 -vec -time -gui -t 99999 CharacterCompressorMono.dsp faust2lv2 -vec -time -gui -t 99999 CharacterCompressorMono.dsp
''; '';

View file

@ -1,22 +1,28 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "CompBus-${version}"; name = "CompBus-${version}";
version = "1.1.02"; version = "1.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "CompBus"; repo = "CompBus";
rev = "v${version}"; rev = "V${version}";
sha256 = "025vi60caxk3j2vxxrgbc59xlyr88vgn7k3127s271zvpyy7apwh"; sha256 = "0yhj680zgk4dn4fi8j3apm72f3z2mjk12amf2a7p0lwn9iyh4a2z";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
for f in *.dsp; for f in *.dsp;
do do
faust2jaqt -t 99999 $f faust2jaqt -time -vec -double -t 99999 $f
faust2lv2 -gui -t 99999 $f done
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "CompBus.lib"
for f in *.dsp;
do
faust2lv2 -time -vec -double -gui -t 99999 $f
done done
''; '';

View file

@ -1,20 +1,21 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "constant-detune-chorus-${version}"; name = "constant-detune-chorus-${version}";
version = "0.1.2"; version = "0.1.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "constant-detune-chorus"; repo = "constant-detune-chorus";
rev = "v${version}"; rev = "V${version}";
sha256 = "1ks2k6pflqyi2cs26bnbypphyrrgn0xf31l31kgx1qlilyc57vln"; sha256 = "1sipmc25fr7w7xqx1r0y6i2zwfkgszzwvhk1v15mnsb3cqvk8ybn";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
faust2jaqt -t 99999 ConstantDetuneChorus.dsp faust2jaqt -time -vec -t 99999 ConstantDetuneChorus.dsp
faust2lv2 -gui -t 99999 ConstantDetuneChorus.dsp sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "ConstantDetuneChorus.dsp"
faust2lv2 -time -vec -t 99999 -gui ConstantDetuneChorus.dsp
''; '';
installPhase = '' installPhase = ''

View file

@ -1,20 +1,21 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "LazyLimiter-${version}"; name = "LazyLimiter-${version}";
version = "0.3.01"; version = "0.3.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "LazyLimiter"; repo = "LazyLimiter";
rev = "v${version}"; rev = "V${version}";
sha256 = "1yx9d5cakmqbiwb1j9v2af9h5lqzahl3kaamnyk71cf4i8g7zp3l"; sha256 = "10xdydwmsnkx8hzsm74pa546yahp29wifydbc48yywv3sfj5anm7";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
faust2jaqt -t 99999 LazyLimiter.dsp faust2jaqt -vec -time -t 99999 LazyLimiter.dsp
faust2lv2 -gui -t 99999 LazyLimiter.dsp sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "GUI.lib"
faust2lv2 -vec -time -t 99999 -gui LazyLimiter.dsp
''; '';
installPhase = '' installPhase = ''

View file

@ -1,20 +1,21 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "MBdistortion-${version}"; name = "MBdistortion-${version}";
version = "1.1"; version = "1.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "MBdistortion"; repo = "MBdistortion";
rev = "v${version}"; rev = "V${version}";
sha256 = "1rmvfi48hg8ybfw517zgj3fjj2xzckrmv8x131i26vj0fv7svjsp"; sha256 = "0mdzaqmxzgspfgx9w1hdip18y17hwpdcgjyq1rrfm843vkascwip";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
faust2jaqt -t 99999 MBdistortion.dsp faust2jaqt -time -vec -t 99999 MBdistortion.dsp
faust2lv2 -gui -t 99999 MBdistortion.dsp sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "MBdistortion.dsp"
faust2lv2 -time -vec -gui -t 99999 MBdistortion.dsp
''; '';
installPhase = '' installPhase = ''

View file

@ -1,20 +1,21 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "RhythmDelay-${version}"; name = "RhythmDelay-${version}";
version = "2.0"; version = "2.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "RhythmDelay"; repo = "RhythmDelay";
rev = "v${version}"; rev = "V${version}";
sha256 = "0n938nm08mf3lz92k6v07k1469xxzmfkgclw40jgdssfcfa16bn7"; sha256 = "1j0bjl9agz43dcrcrbiqd7fv7xsxgd65s4ahhv5pvcr729y0fxg4";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
faust2jaqt -t 99999 RhythmDelay.dsp faust2jaqt -time -vec -t 99999 RhythmDelay.dsp
faust2lv2 -gui -t 99999 RhythmDelay.dsp sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "RhythmDelay.dsp"
faust2lv2 -time -vec -t 99999 -gui RhythmDelay.dsp
''; '';
installPhase = '' installPhase = ''

View file

@ -0,0 +1,56 @@
{ stdenv, pkgs, callPackage, fetchFromGitHub, faust2jack, faust2lv2, helmholtz, mrpeach, puredata-with-plugins }:
stdenv.mkDerivation rec {
name = "VoiceOfFaust-${version}";
version = "1.1.4";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "VoiceOfFaust";
rev = "V${version}";
sha256 = "0la9b806qwrlsxgbir7n1db8v3w24wmd6k43p6qpr1fjjpkhrrgw";
};
plugins = [ helmholtz mrpeach ];
pitchTracker = puredata-with-plugins plugins;
buildInputs = [ faust2jack faust2lv2 ];
runtimeInputs = [ pitchTracker ];
patchPhase = ''
sed -i "s@pd -nodac@${pitchTracker}/bin/pd -nodac@g" launchers/synthWrapper
sed -i "s@../PureData/OscSendVoc.pd@$out/PureData/OscSendVoc.pd@g" launchers/synthWrapper
'';
buildPhase = ''
sh install.sh
# so it doesn;t end up in /bin/ :
rm -f install.sh
'';
installPhase = ''
mkdir -p $out/bin
for file in ./*; do
if test -x "$file" && test -f "$file"; then
cp "$file" "$out/bin"
fi
done
cp launchers/* $out/bin/
mkdir $out/PureData/
# cp PureData/OscSendVoc.pd $out/PureData/OscSendVoc.pd
cp PureData/* $out/PureData/
mkdir -p $out/lib/lv2
cp -r *.lv2/ $out/lib/lv2
'';
meta = {
description = "Turn your voice into a synthesizer";
homepage = https://github.com/magnetophon/VoiceOfFaust;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}

View file

@ -1,22 +1,28 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2gui }: { stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "faustCompressors-${version}"; name = "faustCompressors-v${version}";
version = "0.1.1"; version = "1.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "magnetophon"; owner = "magnetophon";
repo = "faustCompressors"; repo = "faustCompressors";
rev = "v${version}"; rev = "v${version}";
sha256 = "0x5nd2cjhknb4aclhkkjaywx75bi2wj22prgv8n47czi09jcj0jb"; sha256 = "0mkram2hm7i5za7pfn5crh2arbajk8praksxzgjx90rrxwl1y3d1";
}; };
buildInputs = [ faust2jaqt faust2lv2gui ]; buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = '' buildPhase = ''
for f in *.dsp; for f in *.dsp;
do do
faust2jaqt -double -t 99999 $f faust2jaqt -time -double -t 99999 $f
faust2lv2 -double -gui -t 99999 $f done
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "compressors.lib"
for f in *.dsp;
do
faust2lv2 -time -double -gui -t 99999 $f
done done
''; '';

View file

@ -0,0 +1,41 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "pluginUtils-${version}";
version = "1.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "pluginUtils";
rev = "V${version}";
sha256 = "1hnr5sp7k6ypf4ks61lnyqx44dkv35yllf3a3xcbrw7yqzagwr1c";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
for f in *.dsp
do
echo "Building jack standalone for $f"
faust2jaqt -vec -time -t 99999 "$f"
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "$f"
echo "Building lv2 for $f"
faust2lv2 -vec -time -gui -t 99999 "$f"
done
'';
installPhase = ''
rm -f *.dsp
rm -f *.lib
mkdir -p $out/lib/lv2
mv *.lv2/ $out/lib/lv2
mkdir -p $out/bin
cp * $out/bin/
'';
meta = {
description = "Some simple utility lv2 plugins";
homepage = https://github.com/magnetophon/pluginUtils;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}

View file

@ -0,0 +1,38 @@
{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }:
stdenv.mkDerivation rec {
name = "shelfMultiBand-${version}";
version = "0.6.1";
src = fetchFromGitHub {
owner = "magnetophon";
repo = "shelfMultiBand";
rev = "V${version}";
sha256 = "1b1h4z5fs2xm7wvw11p9wnd0bxs3m88124f5phh0gwvpsdrd0im5";
};
buildInputs = [ faust2jaqt faust2lv2 ];
buildPhase = ''
faust2jaqt -vec -double -time -t 99999 shelfMultiBand.dsp
faust2jaqt -vec -double -time -t 99999 shelfMultiBandMono.dsp
sed -i "s|\[ *scale *: *log *\]||g ; s|\btgroup\b|hgroup|g" "shelfMultiBand.lib"
faust2lv2 -vec -double -time -gui -t 99999 shelfMultiBandMono.dsp
faust2lv2 -vec -double -time -gui -t 99999 shelfMultiBand.dsp
'';
installPhase = ''
mkdir -p $out/bin
cp shelfMultiBand $out/bin/
cp shelfMultiBandMono $out/bin/
mkdir -p $out/lib/lv2
cp -r shelfMultiBand.lv2/ $out/lib/lv2
cp -r shelfMultiBandMono.lv2/ $out/lib/lv2
'';
meta = {
description = "A multiband compressor made from shelving filters.";
homepage = https://github.com/magnetophon/shelfMultiBand;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
};
}

View file

@ -12261,8 +12261,6 @@ in
amdappsdk = amdappsdk28; amdappsdk = amdappsdk28;
}; };
CharacterCompressor = callPackage ../applications/audio/CharacterCompressor { };
chatzilla = callPackage ../applications/networking/irc/chatzilla { }; chatzilla = callPackage ../applications/networking/irc/chatzilla { };
chirp = callPackage ../applications/misc/chirp { chirp = callPackage ../applications/misc/chirp {
@ -12311,14 +12309,10 @@ in
communi = qt5.callPackage ../applications/networking/irc/communi { }; communi = qt5.callPackage ../applications/networking/irc/communi { };
CompBus = callPackage ../applications/audio/CompBus { };
compiz = callPackage ../applications/window-managers/compiz { compiz = callPackage ../applications/window-managers/compiz {
inherit (gnome2) GConf ORBit2 metacity; inherit (gnome2) GConf ORBit2 metacity;
}; };
constant-detune-chorus = callPackage ../applications/audio/constant-detune-chorus { };
copyq = callPackage ../applications/misc/copyq { }; copyq = callPackage ../applications/misc/copyq { };
coriander = callPackage ../applications/video/coriander { coriander = callPackage ../applications/video/coriander {
@ -13474,8 +13468,6 @@ in
caps = callPackage ../applications/audio/caps { }; caps = callPackage ../applications/audio/caps { };
LazyLimiter = callPackage ../applications/audio/LazyLimiter { };
lastwatch = callPackage ../applications/audio/lastwatch { }; lastwatch = callPackage ../applications/audio/lastwatch { };
lastfmsubmitd = callPackage ../applications/audio/lastfmsubmitd { }; lastfmsubmitd = callPackage ../applications/audio/lastfmsubmitd { };
@ -13605,6 +13597,19 @@ in
lyx = callPackage ../applications/misc/lyx { }; lyx = callPackage ../applications/misc/lyx { };
magnetophonDSP = {
CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { };
CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { };
ConstantDetuneChorus = callPackage ../applications/audio/magnetophonDSP/ConstantDetuneChorus { };
faustCompressors = callPackage ../applications/audio/magnetophonDSP/faustCompressors { };
LazyLimiter = callPackage ../applications/audio/magnetophonDSP/LazyLimiter { };
MBdistortion = callPackage ../applications/audio/magnetophonDSP/MBdistortion { };
pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils { };
RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { };
VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { };
shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand { };
};
makeself = callPackage ../applications/misc/makeself { }; makeself = callPackage ../applications/misc/makeself { };
marathon = callPackage ../applications/networking/cluster/marathon { }; marathon = callPackage ../applications/networking/cluster/marathon { };
@ -13613,8 +13618,6 @@ in
matchbox = callPackage ../applications/window-managers/matchbox { }; matchbox = callPackage ../applications/window-managers/matchbox { };
MBdistortion = callPackage ../applications/audio/MBdistortion { };
mcpp = callPackage ../development/compilers/mcpp { }; mcpp = callPackage ../development/compilers/mcpp { };
mda_lv2 = callPackage ../applications/audio/mda-lv2 { }; mda_lv2 = callPackage ../applications/audio/mda-lv2 { };
@ -14318,8 +14321,6 @@ in
retroshare06 = lowPrio (callPackage ../applications/networking/p2p/retroshare/0.6.nix { }); retroshare06 = lowPrio (callPackage ../applications/networking/p2p/retroshare/0.6.nix { });
RhythmDelay = callPackage ../applications/audio/RhythmDelay { };
ricochet = qt55.callPackage ../applications/networking/instant-messengers/ricochet { }; ricochet = qt55.callPackage ../applications/networking/instant-messengers/ricochet { };
ripser = callPackage ../applications/science/math/ripser { }; ripser = callPackage ../applications/science/math/ripser { };
@ -14970,8 +14971,6 @@ in
vnstat = callPackage ../applications/networking/vnstat { }; vnstat = callPackage ../applications/networking/vnstat { };
VoiceOfFaust = callPackage ../applications/audio/VoiceOfFaust { };
volnoti = callPackage ../applications/misc/volnoti { }; volnoti = callPackage ../applications/misc/volnoti { };
vorbis-tools = callPackage ../applications/audio/vorbis-tools { }; vorbis-tools = callPackage ../applications/audio/vorbis-tools { };
@ -16924,14 +16923,14 @@ in
fakenes = callPackage ../misc/emulators/fakenes { }; fakenes = callPackage ../misc/emulators/fakenes { };
faust = faust2; faust = self.faust2;
faust1 = callPackage ../applications/audio/faust/faust1.nix { }; faust1 = callPackage ../applications/audio/faust/faust1.nix { };
faust1git = callPackage ../applications/audio/faust/faust1git.nix { }; faust1git = callPackage ../applications/audio/faust/faust1git.nix { };
faust2 = callPackage ../applications/audio/faust/faust2.nix { faust2 = callPackage ../applications/audio/faust/faust2.nix {
llvm = llvm_37; llvm = llvm_38;
}; };
faust2alqt = callPackage ../applications/audio/faust/faust2alqt.nix { }; faust2alqt = callPackage ../applications/audio/faust/faust2alqt.nix { };
@ -16948,10 +16947,6 @@ in
faust2lv2 = callPackage ../applications/audio/faust/faust2lv2.nix { }; faust2lv2 = callPackage ../applications/audio/faust/faust2lv2.nix { };
faust2lv2gui = callPackage ../applications/audio/faust/faust2lv2gui.nix { };
faustCompressors = callPackage ../applications/audio/faustCompressors { };
fceux = callPackage ../misc/emulators/fceux { }; fceux = callPackage ../misc/emulators/fceux { };
flat-plat = callPackage ../misc/themes/flat-plat { }; flat-plat = callPackage ../misc/themes/flat-plat { };