about summary refs log tree commit diff
path: root/pkgs/development/interpreters/supercollider
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/interpreters/supercollider')
-rw-r--r--pkgs/development/interpreters/supercollider/default.nix46
-rw-r--r--pkgs/development/interpreters/supercollider/plugins/sc3-plugins.nix10
2 files changed, 37 insertions, 19 deletions
diff --git a/pkgs/development/interpreters/supercollider/default.nix b/pkgs/development/interpreters/supercollider/default.nix
index ecb3d5787eb37..7271e5073c32f 100644
--- a/pkgs/development/interpreters/supercollider/default.nix
+++ b/pkgs/development/interpreters/supercollider/default.nix
@@ -2,8 +2,8 @@
 , pkg-config, alsa-lib, libjack2, libsndfile, fftw
 , curl, gcc, libXt, qtbase, qttools, qtwebengine
 , readline, qtwebsockets, useSCEL ? false, emacs
-, supercollider-with-plugins, supercolliderPlugins
-, writeText, runCommand
+, gitUpdater, supercollider-with-plugins
+, supercolliderPlugins, writeText, runCommand
 }:
 
 mkDerivation rec {
@@ -26,6 +26,8 @@ mkDerivation rec {
     })
   ];
 
+  strictDeps = true;
+
   nativeBuildInputs = [ cmake pkg-config qttools ];
 
   buildInputs = [ gcc libjack2 libsndfile fftw curl libXt qtbase qtwebengine qtwebsockets readline ]
@@ -39,24 +41,32 @@ mkDerivation rec {
     "-DSC_EL=${if useSCEL then "ON" else "OFF"}"
   ];
 
-  passthru.tests = {
-    # test to make sure sclang runs and included plugins are successfully found
-    sclang-sc3-plugins = let
-      supercollider-with-test-plugins = supercollider-with-plugins.override {
-        plugins = with supercolliderPlugins; [ sc3-plugins ];
-      };
-      testsc = writeText "test.sc" ''
-        var err = 0;
-        try {
-        MdaPiano.name.postln;
-        } {
-        err = 1;
+  passthru = {
+    updateScript = gitUpdater {
+      url = "https://github.com/supercollider/supercollider.git";
+      rev-prefix = "Version-";
+      ignoredVersions = "rc|beta";
+    };
+
+    tests = {
+      # test to make sure sclang runs and included plugins are successfully found
+      sclang-sc3-plugins = let
+        supercollider-with-test-plugins = supercollider-with-plugins.override {
+          plugins = with supercolliderPlugins; [ sc3-plugins ];
         };
-        err.exit;
+        testsc = writeText "test.sc" ''
+          var err = 0;
+          try {
+          MdaPiano.name.postln;
+          } {
+          err = 1;
+          };
+          err.exit;
+        '';
+      in runCommand "sclang-sc3-plugins-test" { } ''
+        timeout 60s env XDG_CONFIG_HOME="$(mktemp -d)" QT_QPA_PLATFORM=minimal ${supercollider-with-test-plugins}/bin/sclang ${testsc} >$out
       '';
-    in runCommand "sclang-sc3-plugins-test" {} ''
-      timeout 60s env XDG_CONFIG_HOME="$(mktemp -d)" QT_QPA_PLATFORM=minimal ${supercollider-with-test-plugins}/bin/sclang ${testsc} >$out
-    '';
+    };
   };
 
   meta = with lib; {
diff --git a/pkgs/development/interpreters/supercollider/plugins/sc3-plugins.nix b/pkgs/development/interpreters/supercollider/plugins/sc3-plugins.nix
index a596d6d770aef..c7058817722e6 100644
--- a/pkgs/development/interpreters/supercollider/plugins/sc3-plugins.nix
+++ b/pkgs/development/interpreters/supercollider/plugins/sc3-plugins.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, cmake, supercollider, fftw }:
+{ stdenv, lib, fetchurl, cmake, supercollider, fftw, gitUpdater }:
 
 stdenv.mkDerivation rec {
   pname = "sc3-plugins";
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-JjUmu7PJ+x3yRibr+Av2gTREng51fPo7Rk+B4y2JvkQ=";
   };
 
+  strictDeps = true;
+
   nativeBuildInputs = [ cmake ];
 
   buildInputs = [
@@ -23,6 +25,12 @@ stdenv.mkDerivation rec {
 
   stripDebugList = [ "lib" "share" ];
 
+  passthru.updateScript = gitUpdater {
+    url = "https://github.com/supercollider/sc3-plugins.git";
+    rev-prefix = "Version-";
+    ignoredVersions = "rc|beta";
+  };
+
   meta = with lib; {
     description = "Community plugins for SuperCollider";
     homepage = "https://supercollider.github.io/sc3-plugins/";