summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/audio/faust/faustlive.nix35
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 37 insertions, 0 deletions
diff --git a/pkgs/applications/audio/faust/faustlive.nix b/pkgs/applications/audio/faust/faustlive.nix
new file mode 100644
index 000000000000..b8ff73f2cb32
--- /dev/null
+++ b/pkgs/applications/audio/faust/faustlive.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub
+, llvm, qt48Full, libqrencode, libmicrohttpd, libjack2, alsaLib, faust, curl
+, bc, coreutils, which
+}:
+
+stdenv.mkDerivation rec {
+  name = "faustlive-${version}";
+  version = "2017-12-05";
+  src = fetchFromGitHub {
+    owner = "grame-cncm";
+    repo = "faustlive";
+    rev = "281fcb852dcd94f8c57ade1b2a7a3937542e1b2d";
+    sha256 = "0sw44yd9928rid9ib0b5mx2x129m7zljrayfm6jz6hrwdc5q3k9a";
+  };
+
+  buildInputs = [
+    llvm qt48Full libqrencode libmicrohttpd libjack2 alsaLib faust curl
+    bc coreutils which
+  ];
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  preBuild = "patchShebangs Build/Linux/buildversion";
+
+  meta = with stdenv.lib; {
+    description = "A standalone just-in-time Faust compiler";
+    longDescription = ''
+      FaustLive is a standalone just-in-time Faust compiler. It tries to bring
+      together the convenience of a standalone interpreted language with the
+      efficiency of a compiled language. It's ideal for fast prototyping.
+    '';
+    homepage = http://faust.grame.fr/;
+    license = licenses.gpl3;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 02731e800280..e6b89ad5b98c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -21470,6 +21470,8 @@ with pkgs;
 
   faust2lv2 = callPackage ../applications/audio/faust/faust2lv2.nix { };
 
+  faustlive = callPackage ../applications/audio/faust/faustlive.nix { };
+
   fceux = callPackage ../misc/emulators/fceux { };
 
   flockit = callPackage ../tools/backup/flockit { };