unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#41053] [PATCH] gnu: supercollider:  Update to 3.11.0.
@ 2020-05-03 16:03 goodoldpaul
  2020-05-03 16:06 ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Giacomo Leidi
  2020-05-05 20:27 ` Giacomo Leidi
  0 siblings, 2 replies; 10+ messages in thread
From: goodoldpaul @ 2020-05-03 16:03 UTC (permalink / raw)
  To: 41053

Hello Guixers,
I'm sending two patches to update SuperCollider to 3.11.0, add its new 
dependency Ableton Link and add a new 'ide output to store the Qt5 IDE.

Thank you for your effort in reviewing this,

Giacomo





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 1/2] gnu: Add ableton-link.
  2020-05-03 16:03 [bug#41053] [PATCH] gnu: supercollider: Update to 3.11.0 goodoldpaul
@ 2020-05-03 16:06 ` Giacomo Leidi
  2020-05-03 16:06   ` [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0 Giacomo Leidi
  2020-05-05 17:34   ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Marius Bakke
  2020-05-05 20:27 ` Giacomo Leidi
  1 sibling, 2 replies; 10+ messages in thread
From: Giacomo Leidi @ 2020-05-03 16:06 UTC (permalink / raw)
  To: 41053; +Cc: Giacomo Leidi

* gnu/packages/audio.scm (ableton-link): New variable.
* gnu/packages/patches/ableton-link-system-libraries-debian.patch: Patch
CMakeLists.txt to use system libraries.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |   1 +
 gnu/packages/audio.scm                        | 103 ++++++++++++++++++
 ...ableton-link-system-libraries-debian.patch |  27 +++++
 3 files changed, 131 insertions(+)
 create mode 100644 gnu/packages/patches/ableton-link-system-libraries-debian.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 3c9a10b6bc..5aba7ed124 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -721,6 +721,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/a2ps-CVE-2014-0466.patch	\
   %D%/packages/patches/a2ps-CVE-2015-8107.patch	\
   %D%/packages/patches/abcl-fix-build-xml.patch	\
+  %D%/packages/patches/ableton-link-system-libraries-debian.patch	\
   %D%/packages/patches/abiword-explictly-cast-bools.patch	\
   %D%/packages/patches/adb-add-libraries.patch			\
   %D%/packages/patches/aegis-constness-error.patch         	\
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 3a452f1458..52ebb51fc4 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -88,6 +88,7 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages music)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages networking)
   #:use-module (gnu packages onc-rpc)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -4283,3 +4284,105 @@ between 700 and 3200 bit/s.  The main application is low bandwidth HF/VHF
 digital radio.")
     (home-page "https://www.rowetel.com/?page_id=452")
     (license license:lgpl2.1)))
+
+(define-public ableton-link
+  (package
+    (name "ableton-link")
+    (version "3.0.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Ableton/link.git")
+                    (commit (string-append "Link-" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0262vm0v7hmqjhqx5xikh529p3c065p1yld6ymaiz74yq1dnnjir"))
+              (modules '((guix build utils)))
+              (patches
+               (search-patches "ableton-link-system-libraries-debian.patch"))
+              (snippet
+               '(begin
+                  ;; Fix tests
+                  (substitute* "ci/run-tests.py"
+                    (("root_dir,") "root_dir, os.pardir,"))
+                  ;; Unbundle dependencies
+                  (delete-file-recursively "third_party")
+                  (delete-file-recursively "modules")
+                  #t))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("catch" ,catch-framework)
+       ("python" ,python)       ;; For running tests
+       ("portaudio" ,portaudio) ;; For portaudio examples
+       ("qtbase" ,qtbase)       ;; For Qt examples
+       ("qtdeclarative" ,qtdeclarative)
+       ("qttools" ,qttools)))
+    (inputs
+     `(("jack" ,jack-1)                       ;; For JACK examples
+       ("qtquickcontrols" ,qtquickcontrols))) ;; For Qt examples
+    (propagated-inputs
+     `(("asio" ,asio)))
+    (arguments
+     `(#:configure-flags
+       '("-DBUILD_TYPE=Release"
+         "-DLINK_BUILD_QT_EXAMPLES=ON"
+         "-DLINK_BUILD_JACK=ON")
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((python (string-append (assoc-ref inputs "python")
+                                          "/bin/python3"))
+                   (version ,(package-version ableton-link))
+                   (run-tests (string-append "../ableton-link-"
+                                             version
+                                             "-checkout/ci/run-tests.py")))
+               (and (invoke python run-tests "--target" "LinkCoreTest")
+                    (invoke python run-tests "--target" "LinkDiscoveryTest")))))
+         (add-before 'install 'patch-cmake
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((version ,(package-version ableton-link))
+                    (source (string-append "../ableton-link-"
+                                                version
+                                                "-checkout/")))
+               (substitute* (string-append source
+                                           "cmake_include/AsioStandaloneConfig.cmake")
+                 (((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
+                                  "modules/asio-standalone/asio/include"))
+                  (string-append (assoc-ref inputs "asio")
+                                 "/include")))
+               (substitute* (string-append source "AbletonLinkConfig.cmake")
+                 (("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
+                  "${CMAKE_CURRENT_LIST_DIR}/../../../include")
+                 (("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
+                  "${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp"))
+               #t)))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (lib-cmake (string-append out "/lib/cmake/ableton-link"))
+                    (version ,(package-version ableton-link))
+                    (source (string-append "../ableton-link-" version "-checkout")))
+               (for-each (lambda (test-file)
+                           (delete-file test-file))
+                         '("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
+               (copy-recursively "bin" bin)
+               (copy-recursively (string-append source "/include/ableton")
+                                 (string-append out "/include/ableton"))
+               (install-file (string-append source "/AbletonLinkConfig.cmake")
+                             lib-cmake)
+               (install-file (string-append source
+                                            "/cmake_include/AsioStandaloneConfig.cmake")
+                             (string-append lib-cmake "/cmake_include"))
+               #t))))))
+    (home-page "https://github.com/Ableton/link")
+    (synopsis "Synchronizes musical beat, tempo, and phase across multiple applications")
+    (description
+     "Ableton Link is a C++ library that synchronizes musical beat, tempo, and phase
+across multiple applications running on one or more devices.  Applications on devices
+connected to a local network discover each other automatically and form a musical
+session in which each participant can perform independently: anyone can start or stop
+while still staying in time.")
+    (license license:gpl2+)))
diff --git a/gnu/packages/patches/ableton-link-system-libraries-debian.patch b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
new file mode 100644
index 0000000000..0c12c62546
--- /dev/null
+++ b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
@@ -0,0 +1,27 @@
+Description: Drop dependencies on included 3rd-party libs
+ upstream includes git-submodules for Catch and ASIO (not found in the tarball).
+ on Debian we want to use the system provided libraries.
+Author: IOhannes m zmölnig
+Origin: Debian
+Forwarded: not-needed
+Last-Update: 2016-10-26
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- ableton-link.orig/cmake_include/AsioStandaloneConfig.cmake
++++ ableton-link/cmake_include/AsioStandaloneConfig.cmake
+@@ -1,6 +1,2 @@
+ add_library(AsioStandalone::AsioStandalone IMPORTED INTERFACE)
+ 
+-set_property(TARGET AsioStandalone::AsioStandalone APPEND PROPERTY
+-  INTERFACE_INCLUDE_DIRECTORIES
+-  ${CMAKE_CURRENT_LIST_DIR}/../modules/asio-standalone/asio/include
+-)
+--- ableton-link.orig/cmake_include/CatchConfig.cmake
++++ ableton-link/cmake_include/CatchConfig.cmake
+@@ -1,6 +1,2 @@
+ add_library(Catch::Catch IMPORTED INTERFACE)
+ 
+-set_property(TARGET Catch::Catch APPEND PROPERTY
+-  INTERFACE_INCLUDE_DIRECTORIES
+-  ${CMAKE_SOURCE_DIR}/third_party/catch
+-)
-- 
2.26.2





^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0.
  2020-05-03 16:06 ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Giacomo Leidi
@ 2020-05-03 16:06   ` Giacomo Leidi
  2020-05-05 17:39     ` Marius Bakke
  2020-05-05 17:34   ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Marius Bakke
  1 sibling, 1 reply; 10+ messages in thread
From: Giacomo Leidi @ 2020-05-03 16:06 UTC (permalink / raw)
  To: 41053; +Cc: Giacomo Leidi

This also restores IDE support.

* gnu/packages/audio.scm (supercollider): Update to 3.11.0.
[outputs]: Add an "ide" output.
[phases]: Add an 'install-ide phase.
[native-inputs]: Add qttools and ableton-link.
[inputs]: Add qtbase, qtdeclarative, qtsvg, qtwebchannel and qtwebsockets.
[propagated-inputs]: Add qtwebengine.
---
 gnu/packages/audio.scm | 37 ++++++++++++++++++++++++++++++-------
 1 file changed, 30 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 52ebb51fc4..8a02b593db 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -2320,7 +2320,7 @@ background file post-processing.")
 (define-public supercollider
   (package
     (name "supercollider")
-    (version "3.10.4")
+    (version "3.11.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -2331,11 +2331,15 @@ background file post-processing.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0xdg1dx0y0agircnkn4bg3jpw184xc5pn28k7rrzgjh1rdnyzz24"))))
+                "02v911w2kdbg3kfl593lb2ig4sjbfxzv20a0vbcymhfzpvp1x6xp"))))
     (build-system cmake-build-system)
+    (outputs
+     '("out"   ;; Core language
+       "ide")) ;; Qt5 IDE
     (arguments
      `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
-                           "-DSC_QT=off" "-DCMAKE_BUILD_TYPE=Release"
+                           "-DSC_QT=ON" "-DCMAKE_BUILD_TYPE=Release"
+                           "-DFORTIFY=ON" "-DLIBSCSYNTH=ON"
                            "-DSC_EL=off") ;scel is packaged individually as
                                           ;emacs-scel
        #:modules ((guix build utils)
@@ -2356,6 +2360,9 @@ background file post-processing.")
                            (lambda (x)
                              (and (eq? (stat:type (stat x)) 'directory)
                                   (not (member (basename x) keep-dirs))))))))
+             (substitute* "lang/CMakeLists.txt"
+               (("include\\(\\.\\./external_libraries/link/AbletonLinkConfig\\.cmake\\)")
+                "find_package(AbletonLink NAMES AbletonLink ableton-link link REQUIRED)"))
              #t))
          ;; Some tests are broken (see:
          ;; https://github.com/supercollider/supercollider/issues/3555 and
@@ -2367,8 +2374,6 @@ background file post-processing.")
                 "")
                (("perf_counter_test.cpp")
                 ""))
-             (delete-file "testsuite/server/supernova/server_test.cpp")
-             (delete-file "testsuite/server/supernova/perf_counter_test.cpp")
              (substitute* "testsuite/CMakeLists.txt"
                (("add_subdirectory\\(sclang\\)")
                 ""))
@@ -2385,9 +2390,20 @@ background file post-processing.")
                     "SC_Filesystem::instance\\(\\)\\.getDirectory"
                     "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
                   (string-append "Path(\"" scclass-dir "\")")))
+               #t)))
+         (add-before 'install 'install-ide
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (ide (assoc-ref outputs "ide"))
+                    (scide "editors/sc-ide/scide"))
+               (install-file scide
+                             (string-append ide "/bin"))
+               (delete-file scide)
                #t))))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     `(("ableton-link" ,ableton-link)
+       ("pkg-config" ,pkg-config)
+       ("qttools" ,qttools)))
     (inputs
      `(("jack" ,jack-1)
        ("libsndfile" ,libsndfile)
@@ -2400,7 +2416,14 @@ background file post-processing.")
        ("icu4c" ,icu4c)
        ("boost" ,boost)
        ("boost-sync" ,boost-sync)
-       ("yaml-cpp" ,yaml-cpp)))
+       ("yaml-cpp" ,yaml-cpp)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtsvg" ,qtsvg)
+       ("qtwebchannel" ,qtwebchannel)
+       ("qtwebsockets" ,qtwebsockets)))
+    (propagated-inputs                  ; To get native-search-path
+     `(("qtwebengine" ,qtwebengine)))
     (home-page "https://github.com/supercollider/supercollider")
     (synopsis "Synthesis engine and programming language")
     (description "SuperCollider is a synthesis engine (@code{scsynth} or
-- 
2.26.2





^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 1/2] gnu: Add ableton-link.
  2020-05-03 16:06 ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Giacomo Leidi
  2020-05-03 16:06   ` [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0 Giacomo Leidi
@ 2020-05-05 17:34   ` Marius Bakke
  2020-05-05 20:19     ` goodoldpaul
  1 sibling, 1 reply; 10+ messages in thread
From: Marius Bakke @ 2020-05-05 17:34 UTC (permalink / raw)
  To: Giacomo Leidi, 41053; +Cc: Giacomo Leidi

[-- Attachment #1: Type: text/plain, Size: 7605 bytes --]

Giacomo Leidi <goodoldpaul@autistici.org> writes:

> * gnu/packages/audio.scm (ableton-link): New variable.
> * gnu/packages/patches/ableton-link-system-libraries-debian.patch: Patch
> CMakeLists.txt to use system libraries.
> * gnu/local.mk (dist_patch_DATA): Add it.

[...]

> +(define-public ableton-link
> +  (package
> +    (name "ableton-link")
> +    (version "3.0.2")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/Ableton/link.git")
> +                    (commit (string-append "Link-" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "0262vm0v7hmqjhqx5xikh529p3c065p1yld6ymaiz74yq1dnnjir"))
> +              (modules '((guix build utils)))
> +              (patches
> +               (search-patches "ableton-link-system-libraries-debian.patch"))
> +              (snippet
> +               '(begin
> +                  ;; Fix tests
> +                  (substitute* "ci/run-tests.py"
> +                    (("root_dir,") "root_dir, os.pardir,"))

Can you expand on the comment with what this substitution does, i.e. how
it fixes tests?

> +    (native-inputs
> +     `(("catch" ,catch-framework)
> +       ("python" ,python)       ;; For running tests
> +       ("portaudio" ,portaudio) ;; For portaudio examples
> +       ("qtbase" ,qtbase)       ;; For Qt examples

Nit-pick: only one semicolon for margin comments.  We typically also do
not add a space between the semicolon and the comment in that case.

> +       ("qtdeclarative" ,qtdeclarative)
> +       ("qttools" ,qttools)))
> +    (inputs
> +     `(("jack" ,jack-1)                       ;; For JACK examples
> +       ("qtquickcontrols" ,qtquickcontrols))) ;; For Qt examples
> +    (propagated-inputs
> +     `(("asio" ,asio)))

Can you add a comment about why asio is propagated?  We try to avoid
propagation where possible.

> +    (arguments
> +     `(#:configure-flags
> +       '("-DBUILD_TYPE=Release"

You can use #:build-type instead of passing -DCMAKE_BUILD_TYPE.  Is
there a particular reason why the default "RelWithDebInfo" does not cut
it?

> +         "-DLINK_BUILD_QT_EXAMPLES=ON"
> +         "-DLINK_BUILD_JACK=ON")
> +       #:phases
> +       (modify-phases %standard-phases
> +         (replace 'check
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (let* ((python (string-append (assoc-ref inputs "python")
> +                                          "/bin/python3"))
> +                   (version ,(package-version ableton-link))

You can simply unquote version where needed instead of adding a let
binding.

> +                   (run-tests (string-append "../ableton-link-"
> +                                             version

I.e.:                                           ,version

> +                                             "-checkout/ci/run-tests.py")))
> +               (and (invoke python run-tests "--target" "LinkCoreTest")
> +                    (invoke python run-tests "--target" "LinkDiscoveryTest")))))

Nit-pick: The (and ...) is unnecessary because INVOKE would throw an
exception upon failure instead of #f.

> +         (add-before 'install 'patch-cmake
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (let* ((version ,(package-version ableton-link))
> +                    (source (string-append "../ableton-link-"
> +                                                version

Use ,version here too.

> +                                                "-checkout/")))
> +               (substitute* (string-append source
> +                                           "cmake_include/AsioStandaloneConfig.cmake")

Note: if you run this phase immediately after 'unpack, you don't have to
add a binding for the source directory as you can refer to this file by
just (substitute* "cmake_include/AsioStandaloneConfig.cmake").  But
perhaps that will break things?

> +                 (((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
> +                                  "modules/asio-standalone/asio/include"))
> +                  (string-append (assoc-ref inputs "asio")
> +                                 "/include")))
> +               (substitute* (string-append source "AbletonLinkConfig.cmake")
> +                 (("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
> +                  "${CMAKE_CURRENT_LIST_DIR}/../../../include")
> +                 (("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
> +                  "${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp"))
> +               #t)))
> +         (replace 'install
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let* ((out (assoc-ref outputs "out"))
> +                    (bin (string-append out "/bin"))
> +                    (lib-cmake (string-append out "/lib/cmake/ableton-link"))
> +                    (version ,(package-version ableton-link))
> +                    (source (string-append "../ableton-link-" version "-checkout")))

Use ,version here too.

> +               (for-each (lambda (test-file)
> +                           (delete-file test-file))
> +                         '("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
> +               (copy-recursively "bin" bin)
> +               (copy-recursively (string-append source "/include/ableton")
> +                                 (string-append out "/include/ableton"))
> +               (install-file (string-append source "/AbletonLinkConfig.cmake")
> +                             lib-cmake)
> +               (install-file (string-append source
> +                                            "/cmake_include/AsioStandaloneConfig.cmake")
> +                             (string-append lib-cmake "/cmake_include"))

Terrible that we have to install "manually" here!  But oh well.

> +               #t))))))
> +    (home-page "https://github.com/Ableton/link")
> +    (synopsis "Synchronizes musical beat, tempo, and phase across multiple applications")

s/Synchronizes/Synchronize/

> +    (description
> +     "Ableton Link is a C++ library that synchronizes musical beat, tempo, and phase
> +across multiple applications running on one or more devices.  Applications on devices
> +connected to a local network discover each other automatically and form a musical
> +session in which each participant can perform independently: anyone can start or stop
> +while still staying in time.")

Pretty cool stuff!  :-)

> +    (license license:gpl2+)))
> diff --git a/gnu/packages/patches/ableton-link-system-libraries-debian.patch b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
> new file mode 100644
> index 0000000000..0c12c62546
> --- /dev/null
> +++ b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
> @@ -0,0 +1,27 @@
> +Description: Drop dependencies on included 3rd-party libs
> + upstream includes git-submodules for Catch and ASIO (not found in the tarball).
> + on Debian we want to use the system provided libraries.
> +Author: IOhannes m zmölnig
> +Origin: Debian
> +Forwarded: not-needed
> +Last-Update: 2016-10-26
> +---
> +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/

Great that you took care to unbundle dependencies.  Can you add a link
to where you found this patch?

Otherwise LGTM, thanks!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0.
  2020-05-03 16:06   ` [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0 Giacomo Leidi
@ 2020-05-05 17:39     ` Marius Bakke
  2020-05-05 20:19       ` goodoldpaul
  0 siblings, 1 reply; 10+ messages in thread
From: Marius Bakke @ 2020-05-05 17:39 UTC (permalink / raw)
  To: Giacomo Leidi, 41053; +Cc: Giacomo Leidi

[-- Attachment #1: Type: text/plain, Size: 3936 bytes --]

Giacomo Leidi <goodoldpaul@autistici.org> writes:

> This also restores IDE support.
>
> * gnu/packages/audio.scm (supercollider): Update to 3.11.0.
> [outputs]: Add an "ide" output.
> [phases]: Add an 'install-ide phase.
> [native-inputs]: Add qttools and ableton-link.
> [inputs]: Add qtbase, qtdeclarative, qtsvg, qtwebchannel and qtwebsockets.
> [propagated-inputs]: Add qtwebengine.

[...]

>      (build-system cmake-build-system)
> +    (outputs
> +     '("out"   ;; Core language
> +       "ide")) ;; Qt5 IDE

Neat.  Again use just a single semicolon for margin comments, without
capitalization of the comment text.

>      (arguments
>       `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
> -                           "-DSC_QT=off" "-DCMAKE_BUILD_TYPE=Release"
> +                           "-DSC_QT=ON" "-DCMAKE_BUILD_TYPE=Release"
> +                           "-DFORTIFY=ON" "-DLIBSCSYNTH=ON"

Please mention these changes in the commit message.

>                             "-DSC_EL=off") ;scel is packaged individually as
>                                            ;emacs-scel
>         #:modules ((guix build utils)
> @@ -2356,6 +2360,9 @@ background file post-processing.")
>                             (lambda (x)
>                               (and (eq? (stat:type (stat x)) 'directory)
>                                    (not (member (basename x) keep-dirs))))))))
> +             (substitute* "lang/CMakeLists.txt"
> +               (("include\\(\\.\\./external_libraries/link/AbletonLinkConfig\\.cmake\\)")
> +                "find_package(AbletonLink NAMES AbletonLink ableton-link link REQUIRED)"))
>               #t))
>           ;; Some tests are broken (see:
>           ;; https://github.com/supercollider/supercollider/issues/3555 and
> @@ -2367,8 +2374,6 @@ background file post-processing.")
>                  "")
>                 (("perf_counter_test.cpp")
>                  ""))
> -             (delete-file "testsuite/server/supernova/server_test.cpp")
> -             (delete-file "testsuite/server/supernova/perf_counter_test.cpp")

...and this.

>               (substitute* "testsuite/CMakeLists.txt"
>                 (("add_subdirectory\\(sclang\\)")
>                  ""))
> @@ -2385,9 +2390,20 @@ background file post-processing.")
>                      "SC_Filesystem::instance\\(\\)\\.getDirectory"
>                      "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
>                    (string-append "Path(\"" scclass-dir "\")")))
> +               #t)))
> +         (add-before 'install 'install-ide
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let* ((out (assoc-ref outputs "out"))
> +                    (ide (assoc-ref outputs "ide"))
> +                    (scide "editors/sc-ide/scide"))
> +               (install-file scide
> +                             (string-append ide "/bin"))
> +               (delete-file scide)
>                 #t))))))
>      (native-inputs
> -     `(("pkg-config" ,pkg-config)))
> +     `(("ableton-link" ,ableton-link)

Is this only used a build-time and not runtime?

> +       ("pkg-config" ,pkg-config)
> +       ("qttools" ,qttools)))
>      (inputs
>       `(("jack" ,jack-1)
>         ("libsndfile" ,libsndfile)
> @@ -2400,7 +2416,14 @@ background file post-processing.")
>         ("icu4c" ,icu4c)
>         ("boost" ,boost)
>         ("boost-sync" ,boost-sync)
> -       ("yaml-cpp" ,yaml-cpp)))
> +       ("yaml-cpp" ,yaml-cpp)
> +       ("qtbase" ,qtbase)
> +       ("qtdeclarative" ,qtdeclarative)
> +       ("qtsvg" ,qtsvg)
> +       ("qtwebchannel" ,qtwebchannel)
> +       ("qtwebsockets" ,qtwebsockets)))
> +    (propagated-inputs                  ; To get native-search-path
> +     `(("qtwebengine" ,qtwebengine)))

Is it possible to wrap the executable with the required variables
instead of propagating here?

Can you send updated patches?  Thanks in advance!  :-)

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 1/2] gnu: Add ableton-link.
  2020-05-05 17:34   ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Marius Bakke
@ 2020-05-05 20:19     ` goodoldpaul
  0 siblings, 0 replies; 10+ messages in thread
From: goodoldpaul @ 2020-05-05 20:19 UTC (permalink / raw)
  To: Marius Bakke; +Cc: 41053

Hi Marius,

>> +    (arguments
>> +     `(#:configure-flags
>> +       '("-DBUILD_TYPE=Release"
> 
> You can use #:build-type instead of passing -DCMAKE_BUILD_TYPE.  Is
> there a particular reason why the default "RelWithDebInfo" does not cut
> it?

It's just because I read on CMake's website that it's supposed to enable 
"-O3" flags, but I'm no expert. Also, reading further, it seems that too 
much aggressive optimizations can sometimes break software. For now I 
removed it and if there will ever be the need it can be easily 
reinstated.

>> +                                                "-checkout/")))
>> +               (substitute* (string-append source
>> +                                           
>> "cmake_include/AsioStandaloneConfig.cmake")
> 
> Note: if you run this phase immediately after 'unpack, you don't have 
> to
> add a binding for the source directory as you can refer to this file by
> just (substitute* "cmake_include/AsioStandaloneConfig.cmake").  But
> perhaps that will break things?

Yes sadly it does, because it makes CMake think that the headers will be 
in "../../../include" while they are at the same level.

>> +               (for-each (lambda (test-file)
>> +                           (delete-file test-file))
>> +                         '("bin/LinkDiscoveryTest" 
>> "bin/LinkCoreTest"))
>> +               (copy-recursively "bin" bin)
>> +               (copy-recursively (string-append source 
>> "/include/ableton")
>> +                                 (string-append out 
>> "/include/ableton"))
>> +               (install-file (string-append source 
>> "/AbletonLinkConfig.cmake")
>> +                             lib-cmake)
>> +               (install-file (string-append source
>> +                                            
>> "/cmake_include/AsioStandaloneConfig.cmake")
>> +                             (string-append lib-cmake 
>> "/cmake_include"))
> 
> Terrible that we have to install "manually" here!  But oh well.
> 

Yes it is, upstream seems to not provide a "make install" target :(

>> diff --git 
>> a/gnu/packages/patches/ableton-link-system-libraries-debian.patch 
>> b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
>> new file mode 100644
>> index 0000000000..0c12c62546
>> --- /dev/null
>> +++ b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
>> @@ -0,0 +1,27 @@
>> +Description: Drop dependencies on included 3rd-party libs
>> + upstream includes git-submodules for Catch and ASIO (not found in 
>> the tarball).
>> + on Debian we want to use the system provided libraries.
>> +Author: IOhannes m zmölnig
>> +Origin: Debian
>> +Forwarded: not-needed
>> +Last-Update: 2016-10-26
>> +---
>> +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
> 
> Great that you took care to unbundle dependencies.  Can you add a link
> to where you found this patch?

I got it from Debian's package, I now added a link in the patch header.

Thanks for your patience,

Giacomo




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0.
  2020-05-05 17:39     ` Marius Bakke
@ 2020-05-05 20:19       ` goodoldpaul
  2020-05-06 20:44         ` bug#41053: " Marius Bakke
  0 siblings, 1 reply; 10+ messages in thread
From: goodoldpaul @ 2020-05-05 20:19 UTC (permalink / raw)
  To: Marius Bakke; +Cc: 41053

Hi Marius,

>>      (native-inputs
>> -     `(("pkg-config" ,pkg-config)))
>> +     `(("ableton-link" ,ableton-link)
> 
> Is this only used a build-time and not runtime?

It seems to be a header-only library, but I'm no expert user of 
SuperCollider and I still haven't found a feature impacted by this. I 
think that given Arch's package has it as a make-depends [0] it should 
be safe to assume that it is not needed at runtime.


>> +    (propagated-inputs                  ; To get native-search-path
>> +     `(("qtwebengine" ,qtwebengine)))
> 
> Is it possible to wrap the executable with the required variables
> instead of propagating here?

I tried that and the package builds fine and sclang seems to work fine. 
The problem is that scide crashes here [1] no matter how many paths I 
hardcoded in the source and how many Qt variables I wrapped the binaries 
with :'D.

If there's a better solution I would be happy to fix this.

> Can you send updated patches?  Thanks in advance!  :-)

I'm going to send them right away, thank you again for your patience!

Giacomo

[0]: 
https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/supercollider#n16
[1]: 
https://github.com/supercollider/supercollider/blob/a0ab24fde9d3cc68a8014efd618cb26a27d1b416/QtCollider/interface.cpp#L95




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 1/2] gnu: Add ableton-link.
  2020-05-03 16:03 [bug#41053] [PATCH] gnu: supercollider: Update to 3.11.0 goodoldpaul
  2020-05-03 16:06 ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Giacomo Leidi
@ 2020-05-05 20:27 ` Giacomo Leidi
  2020-05-05 20:27   ` [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0 Giacomo Leidi
  1 sibling, 1 reply; 10+ messages in thread
From: Giacomo Leidi @ 2020-05-05 20:27 UTC (permalink / raw)
  To: 41053; +Cc: Giacomo Leidi

* gnu/packages/audio.scm (ableton-link): New variable.
* gnu/packages/patches/ableton-link-system-libraries-debian.patch: Patch
CMakeLists.txt to use system libraries.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |   1 +
 gnu/packages/audio.scm                        | 102 ++++++++++++++++++
 ...ableton-link-system-libraries-debian.patch |  29 +++++
 3 files changed, 132 insertions(+)
 create mode 100644 gnu/packages/patches/ableton-link-system-libraries-debian.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 4e0521baa5..a949301b5b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -725,6 +725,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/a2ps-CVE-2014-0466.patch	\
   %D%/packages/patches/a2ps-CVE-2015-8107.patch	\
   %D%/packages/patches/abcl-fix-build-xml.patch	\
+  %D%/packages/patches/ableton-link-system-libraries-debian.patch	\
   %D%/packages/patches/abiword-explictly-cast-bools.patch	\
   %D%/packages/patches/adb-add-libraries.patch			\
   %D%/packages/patches/aegis-constness-error.patch         	\
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 3a452f1458..922df4b356 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -88,6 +88,7 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages music)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages networking)
   #:use-module (gnu packages onc-rpc)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -4283,3 +4284,104 @@ between 700 and 3200 bit/s.  The main application is low bandwidth HF/VHF
 digital radio.")
     (home-page "https://www.rowetel.com/?page_id=452")
     (license license:lgpl2.1)))
+
+(define-public ableton-link
+  (package
+    (name "ableton-link")
+    (version "3.0.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Ableton/link.git")
+                    (commit (string-append "Link-" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0262vm0v7hmqjhqx5xikh529p3c065p1yld6ymaiz74yq1dnnjir"))
+              (modules '((guix build utils)))
+              (patches
+               (search-patches "ableton-link-system-libraries-debian.patch"))
+              (snippet
+               '(begin
+                  ;; Tests assume that CMake's "build" directory is a
+                  ;; sub-directory of the source tree, so we fix it.
+                  (substitute* "ci/run-tests.py"
+                    (("root_dir,") "root_dir, os.pardir,"))
+                  ;; Unbundle dependencies.
+                  (delete-file-recursively "third_party")
+                  (delete-file-recursively "modules")
+                  #t))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("catch" ,catch-framework)
+       ("python" ,python)       ;for running tests
+       ("portaudio" ,portaudio) ;for portaudio examples
+       ("qtbase" ,qtbase)       ;for Qt examples
+       ("qtdeclarative" ,qtdeclarative)
+       ("qttools" ,qttools)))
+    (inputs
+     `(("jack" ,jack-1)                       ;for JACK examples
+       ("qtquickcontrols" ,qtquickcontrols))) ;for Qt examples
+    (propagated-inputs
+     ;; This is because include/ableton/platforms/asio/AsioWrapper.hpp
+     ;; contains '#include <asio.hpp>'.
+     `(("asio" ,asio)))
+    (arguments
+     `(#:configure-flags
+       '("-DLINK_BUILD_QT_EXAMPLES=ON"
+         "-DLINK_BUILD_JACK=ON")
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((python (string-append (assoc-ref inputs "python")
+                                          "/bin/python3"))
+                   (run-tests (string-append "../ableton-link-"
+                                             ,version
+                                             "-checkout/ci/run-tests.py")))
+               (invoke python run-tests "--target" "LinkCoreTest")
+               (invoke python run-tests "--target" "LinkDiscoveryTest"))))
+         (add-before 'install 'patch-cmake
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let* ((source (string-append "../ableton-link-"
+                                                ,version
+                                                "-checkout/")))
+               (substitute* (string-append source
+                                           "cmake_include/AsioStandaloneConfig.cmake")
+                 (((string-append "\\$\\{CMAKE_CURRENT_LIST_DIR\\}/\\.\\./"
+                                  "modules/asio-standalone/asio/include"))
+                  (string-append (assoc-ref inputs "asio")
+                                 "/include")))
+               (substitute* (string-append source "AbletonLinkConfig.cmake")
+                 (("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include")
+                  "${CMAKE_CURRENT_LIST_DIR}/../../../include")
+                 (("\\$\\{CMAKE_CURRENT_LIST_DIR\\}/include/ableton/Link\\.hpp")
+                  "${CMAKE_CURRENT_LIST_DIR}/../../../include/ableton/Link.hpp"))
+               #t)))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bin (string-append out "/bin"))
+                    (lib-cmake (string-append out "/lib/cmake/ableton-link"))
+                    (source (string-append "../ableton-link-" ,version "-checkout")))
+               (for-each (lambda (test-file)
+                           (delete-file test-file))
+                         '("bin/LinkDiscoveryTest" "bin/LinkCoreTest"))
+               (copy-recursively "bin" bin)
+               (copy-recursively (string-append source "/include/ableton")
+                                 (string-append out "/include/ableton"))
+               (install-file (string-append source "/AbletonLinkConfig.cmake")
+                             lib-cmake)
+               (install-file (string-append source
+                                            "/cmake_include/AsioStandaloneConfig.cmake")
+                             (string-append lib-cmake "/cmake_include"))
+               #t))))))
+    (home-page "https://github.com/Ableton/link")
+    (synopsis "Synchronize musical beat, tempo, and phase across multiple applications")
+    (description
+     "Ableton Link is a C++ library that synchronizes musical beat, tempo, and phase
+across multiple applications running on one or more devices.  Applications on devices
+connected to a local network discover each other automatically and form a musical
+session in which each participant can perform independently: anyone can start or stop
+while still staying in time.")
+    (license license:gpl2+)))
diff --git a/gnu/packages/patches/ableton-link-system-libraries-debian.patch b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
new file mode 100644
index 0000000000..184896ee61
--- /dev/null
+++ b/gnu/packages/patches/ableton-link-system-libraries-debian.patch
@@ -0,0 +1,29 @@
+This patch was borrowed from Debian's package:
+https://salsa.debian.org/multimedia-team/ableton-link/-/blob/9c65141bf5bba0872811c179af77ac95770352cc/debian/patches/DEBIAN_system_libraries.patch
+Description: Drop dependencies on included 3rd-party libs
+ upstream includes git-submodules for Catch and ASIO (not found in the tarball).
+ on Debian we want to use the system provided libraries.
+Author: IOhannes m zmölnig
+Origin: Debian
+Forwarded: not-needed
+Last-Update: 2016-10-26
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- ableton-link.orig/cmake_include/AsioStandaloneConfig.cmake
++++ ableton-link/cmake_include/AsioStandaloneConfig.cmake
+@@ -1,6 +1,2 @@
+ add_library(AsioStandalone::AsioStandalone IMPORTED INTERFACE)
+ 
+-set_property(TARGET AsioStandalone::AsioStandalone APPEND PROPERTY
+-  INTERFACE_INCLUDE_DIRECTORIES
+-  ${CMAKE_CURRENT_LIST_DIR}/../modules/asio-standalone/asio/include
+-)
+--- ableton-link.orig/cmake_include/CatchConfig.cmake
++++ ableton-link/cmake_include/CatchConfig.cmake
+@@ -1,6 +1,2 @@
+ add_library(Catch::Catch IMPORTED INTERFACE)
+ 
+-set_property(TARGET Catch::Catch APPEND PROPERTY
+-  INTERFACE_INCLUDE_DIRECTORIES
+-  ${CMAKE_SOURCE_DIR}/third_party/catch
+-)
-- 
2.26.2





^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0.
  2020-05-05 20:27 ` Giacomo Leidi
@ 2020-05-05 20:27   ` Giacomo Leidi
  0 siblings, 0 replies; 10+ messages in thread
From: Giacomo Leidi @ 2020-05-05 20:27 UTC (permalink / raw)
  To: 41053; +Cc: Giacomo Leidi

This also restores IDE support.

* gnu/packages/audio.scm (supercollider): Update to 3.11.0.
[outputs]: Add an "ide" output.
[configure-flags]: Enable Qt IDE, fortify source and build scsynth as a
shared library.
[phases]: Do not delete no longer existing failing tests and add
an 'install-ide phase.
[native-inputs]: Add qttools and ableton-link.
[inputs]: Add qtbase, qtdeclarative, qtsvg, qtwebchannel and qtwebsockets.
[propagated-inputs]: Add qtwebengine.
---
 gnu/packages/audio.scm | 37 ++++++++++++++++++++++++++++++-------
 1 file changed, 30 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 922df4b356..02d58f552e 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -2320,7 +2320,7 @@ background file post-processing.")
 (define-public supercollider
   (package
     (name "supercollider")
-    (version "3.10.4")
+    (version "3.11.0")
     (source (origin
               (method git-fetch)
               (uri (git-reference
@@ -2331,11 +2331,15 @@ background file post-processing.")
               (file-name (git-file-name name version))
               (sha256
                (base32
-                "0xdg1dx0y0agircnkn4bg3jpw184xc5pn28k7rrzgjh1rdnyzz24"))))
+                "02v911w2kdbg3kfl593lb2ig4sjbfxzv20a0vbcymhfzpvp1x6xp"))))
     (build-system cmake-build-system)
+    (outputs
+     '("out"   ;core language
+       "ide")) ;qt ide
     (arguments
      `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
-                           "-DSC_QT=off" "-DCMAKE_BUILD_TYPE=Release"
+                           "-DSC_QT=ON" "-DCMAKE_BUILD_TYPE=Release"
+                           "-DFORTIFY=ON" "-DLIBSCSYNTH=ON"
                            "-DSC_EL=off") ;scel is packaged individually as
                                           ;emacs-scel
        #:modules ((guix build utils)
@@ -2356,6 +2360,9 @@ background file post-processing.")
                            (lambda (x)
                              (and (eq? (stat:type (stat x)) 'directory)
                                   (not (member (basename x) keep-dirs))))))))
+             (substitute* "lang/CMakeLists.txt"
+               (("include\\(\\.\\./external_libraries/link/AbletonLinkConfig\\.cmake\\)")
+                "find_package(AbletonLink NAMES AbletonLink ableton-link link REQUIRED)"))
              #t))
          ;; Some tests are broken (see:
          ;; https://github.com/supercollider/supercollider/issues/3555 and
@@ -2367,8 +2374,6 @@ background file post-processing.")
                 "")
                (("perf_counter_test.cpp")
                 ""))
-             (delete-file "testsuite/server/supernova/server_test.cpp")
-             (delete-file "testsuite/server/supernova/perf_counter_test.cpp")
              (substitute* "testsuite/CMakeLists.txt"
                (("add_subdirectory\\(sclang\\)")
                 ""))
@@ -2385,9 +2390,20 @@ background file post-processing.")
                     "SC_Filesystem::instance\\(\\)\\.getDirectory"
                     "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
                   (string-append "Path(\"" scclass-dir "\")")))
+               #t)))
+         (add-before 'install 'install-ide
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (ide (assoc-ref outputs "ide"))
+                    (scide "editors/sc-ide/scide"))
+               (install-file scide
+                             (string-append ide "/bin"))
+               (delete-file scide)
                #t))))))
     (native-inputs
-     `(("pkg-config" ,pkg-config)))
+     `(("ableton-link" ,ableton-link)
+       ("pkg-config" ,pkg-config)
+       ("qttools" ,qttools)))
     (inputs
      `(("jack" ,jack-1)
        ("libsndfile" ,libsndfile)
@@ -2400,7 +2416,14 @@ background file post-processing.")
        ("icu4c" ,icu4c)
        ("boost" ,boost)
        ("boost-sync" ,boost-sync)
-       ("yaml-cpp" ,yaml-cpp)))
+       ("yaml-cpp" ,yaml-cpp)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtsvg" ,qtsvg)
+       ("qtwebchannel" ,qtwebchannel)
+       ("qtwebsockets" ,qtwebsockets)))
+    (propagated-inputs                  ;to get native-search-path
+     `(("qtwebengine" ,qtwebengine)))
     (home-page "https://github.com/supercollider/supercollider")
     (synopsis "Synthesis engine and programming language")
     (description "SuperCollider is a synthesis engine (@code{scsynth} or
-- 
2.26.2





^ permalink raw reply related	[flat|nested] 10+ messages in thread

* bug#41053: [PATCH 2/2] gnu: supercollider: Update to 3.11.0.
  2020-05-05 20:19       ` goodoldpaul
@ 2020-05-06 20:44         ` Marius Bakke
  0 siblings, 0 replies; 10+ messages in thread
From: Marius Bakke @ 2020-05-06 20:44 UTC (permalink / raw)
  To: goodoldpaul; +Cc: 41053-done

[-- Attachment #1: Type: text/plain, Size: 1213 bytes --]

goodoldpaul@autistici.org writes:

> Hi Marius,
>
>>>      (native-inputs
>>> -     `(("pkg-config" ,pkg-config)))
>>> +     `(("ableton-link" ,ableton-link)
>> 
>> Is this only used a build-time and not runtime?
>
> It seems to be a header-only library, but I'm no expert user of 
> SuperCollider and I still haven't found a feature impacted by this. I 
> think that given Arch's package has it as a make-depends [0] it should 
> be safe to assume that it is not needed at runtime.
>
>
>>> +    (propagated-inputs                  ; To get native-search-path
>>> +     `(("qtwebengine" ,qtwebengine)))
>> 
>> Is it possible to wrap the executable with the required variables
>> instead of propagating here?
>
> I tried that and the package builds fine and sclang seems to work fine. 
> The problem is that scide crashes here [1] no matter how many paths I 
> hardcoded in the source and how many Qt variables I wrapped the binaries 
> with :'D.
>
> If there's a better solution I would be happy to fix this.

OK, thanks for testing.  Odd that wrapping with QTWEBENGINEPROCESS_PATH
does not work, but I suppose this is good enough for now.

Applied both patches as-is, thank you!

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2020-05-06 20:44 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-05-03 16:03 [bug#41053] [PATCH] gnu: supercollider: Update to 3.11.0 goodoldpaul
2020-05-03 16:06 ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Giacomo Leidi
2020-05-03 16:06   ` [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0 Giacomo Leidi
2020-05-05 17:39     ` Marius Bakke
2020-05-05 20:19       ` goodoldpaul
2020-05-06 20:44         ` bug#41053: " Marius Bakke
2020-05-05 17:34   ` [bug#41053] [PATCH 1/2] gnu: Add ableton-link Marius Bakke
2020-05-05 20:19     ` goodoldpaul
2020-05-05 20:27 ` Giacomo Leidi
2020-05-05 20:27   ` [bug#41053] [PATCH 2/2] gnu: supercollider: Update to 3.11.0 Giacomo Leidi

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).