unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#63075] [PATCH] Fix supercollider.
@ 2023-04-25 20:33 Gabriel Wicki
       [not found] ` <handler.63075.B.16824548199053.ack@debbugs.gnu.org>
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Gabriel Wicki @ 2023-04-25 20:33 UTC (permalink / raw)
  To: 63075

Howdy y'all

Supercollider was broken so I've fixed it.  Btw there's no "audio"
team.. Should I start one?  Not that I'm too much of an expert, but I am
somewhat enthusiastic about audio...

Also: I'm not too sure what to think about the style improvements
brought to the input section of the package.


The patch set is based on: 8c5ba69d6e9e4b1b9d6b5e9cd28859b19e8e180c


Best wishes,
gabber




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

* [bug#63075] [PATCH 1/2] gnu: Fix supercollider.
       [not found] ` <handler.63075.B.16824548199053.ack@debbugs.gnu.org>
@ 2023-04-25 20:35   ` Gabriel Wicki
  2023-04-28 18:50     ` bug#63075: [PATCH] " Ludovic Courtès
  0 siblings, 1 reply; 5+ messages in thread
From: Gabriel Wicki @ 2023-04-25 20:35 UTC (permalink / raw)
  To: 63075

From f67786eb958a65ba778f67a8f443fa3d24293438 Mon Sep 17 00:00:00 2001
Message-Id: <f67786eb958a65ba778f67a8f443fa3d24293438.1682453413.git.gabriel@erlikon.ch>
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Tue, 25 Apr 2023 22:03:03 +0200
Subject: [PATCH 1/2] gnu: Fix supercollider.

* gnu/packages/audio.scm (supercollider): Fix the build.
[configure-flags] Re-enable DLIBSCSYNTH.
[phases] New phase fix-struct-SOUNDFILE-tag.
[inputs] Add ruby and python to appease the build process.
---
 gnu/packages/audio.scm | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index dca5e516a1..109133ba8e 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -43,6 +43,7 @@
 ;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr>
 ;;; Copyright © 2023 David Thompson <dthompson2@worcester.edu>
 ;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2023 Gabriel Wicki <gabriel@erlikon.ch>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -119,6 +120,7 @@ (define-module (gnu packages audio)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages ruby)
   #:use-module (gnu packages samba)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages serialization)
@@ -3485,7 +3487,7 @@ (define-public supercollider
                            "-DSC_QT=ON"
                            "-DCMAKE_BUILD_TYPE=Release"
                            "-DFORTIFY=ON"
-                           ;; "-DLIBSCSYNTH=ON"   ; TODO: Re-enable?
+                           "-DLIBSCSYNTH=ON"
                            "-DSC_EL=OFF") ;scel is packaged individually as emacs-scel
        #:phases
        (modify-phases %standard-phases
@@ -3506,6 +3508,12 @@ (define-public supercollider
                     "SC_Filesystem::instance\\(\\)\\.getDirectory"
                     "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
                   (string-append "Path(\"" scclass-dir "\")"))))))
+         (add-after 'patch-scclass-dir 'fix-struct-SOUNDFILE-tag
+           (lambda* _
+             (display (getcwd)) (newline)
+             (substitute* "include/plugin_interface/SC_SndBuf.h"
+               (("SNDFILE_tag")
+                "sf_private_tag"))))
          (add-before 'build 'prepare-x
            (lambda _
              (system "Xvfb &")
@@ -3532,6 +3540,8 @@ (define-public supercollider
                   boost
                   boost-sync
                   yaml-cpp
+                  python-wrapper        ;there were warnings in the build process
+                  ruby                  ;there were warnings in the build process
                   qtbase-5
                   qtdeclarative-5
                   qtsvg-5
-- 
2.39.2





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

* [bug#63075] [PATCH 2/2] gnu: supercollider: Apply guix style.
  2023-04-25 20:33 [bug#63075] [PATCH] Fix supercollider Gabriel Wicki
       [not found] ` <handler.63075.B.16824548199053.ack@debbugs.gnu.org>
@ 2023-04-25 20:39 ` Gabriel Wicki
  2023-04-28 18:51 ` [bug#63075] [PATCH] Fix supercollider Ludovic Courtès
  2 siblings, 0 replies; 5+ messages in thread
From: Gabriel Wicki @ 2023-04-25 20:39 UTC (permalink / raw)
  To: 63075

From 5091d29a2765e550985c058657deb5771a24a1a1 Mon Sep 17 00:00:00 2001
Message-Id: <5091d29a2765e550985c058657deb5771a24a1a1.1682453413.git.gabriel@erlikon.ch>
In-Reply-To: <f67786eb958a65ba778f67a8f443fa3d24293438.1682453413.git.gabriel@erlikon.ch>
References: <f67786eb958a65ba778f67a8f443fa3d24293438.1682453413.git.gabriel@erlikon.ch>
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Tue, 25 Apr 2023 22:06:18 +0200
Subject: [PATCH 2/2] gnu: supercollider: Apply 'guix style'.

* gnu/packages/audio.scm: Apply guix style.
---
 gnu/packages/audio.scm | 173 +++++++++++++++++++++--------------------
 1 file changed, 87 insertions(+), 86 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 109133ba8e..f07b7a6069 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -3444,114 +3444,115 @@ (define-public supercollider
   (package
     (name "supercollider")
     (version "3.12.1")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/supercollider/supercollider")
-             (commit (string-append "Version-" version))
-             ;; for nova-simd, nova-tt, hidapi, TLSF, oscpack
-             (recursive? #t)))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32
-         "0id522338a464j1slcspajwc7klypbc9qpigw5mqjhrw970wij5z"))
-       (modules '((guix build utils)
-                  (ice-9 ftw)))
-       (snippet
-        ;; The build system doesn't allow us to unbundle the following
-        ;; libraries.  hidapi is also heavily patched and upstream not
-        ;; actively maintained.
-        '(let ((keep-dirs '("nova-simd" "nova-tt" "hidapi"
-                            "TLSF-2.4.6" "oscpack_1_1_0" "." "..")))
-           (with-directory-excursion "./external_libraries"
-             (for-each
-              delete-file-recursively
-              (scandir "."
-                       (lambda (x)
-                         (and (eq? (stat:type (stat x)) 'directory)
-                              (not (member (basename x) keep-dirs)))))))
-           ;; To find the Guix provided ableton-link library.
-           (substitute* "lang/CMakeLists.txt"
-             (("include\\(\\.\\./external_libraries/link/\
-AbletonLinkConfig\\.cmake\\)")
-              "find_package(AbletonLink NAMES AbletonLink ableton-link \
-link REQUIRED)"))))))
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/supercollider/supercollider")
+                    (commit (string-append "Version-" version))
+                    ;; for nova-simd, nova-tt, hidapi, TLSF, oscpack
+                    (recursive? #t)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0id522338a464j1slcspajwc7klypbc9qpigw5mqjhrw970wij5z"))
+              (modules '((guix build utils)
+                         (ice-9 ftw)))
+              (snippet
+               ;; The build system doesn't allow us to unbundle the following
+               ;; libraries.  hidapi is also heavily patched and upstream not
+               ;; actively maintained.
+               '(let ((keep-dirs '("nova-simd" "nova-tt"
+                                   "hidapi"
+                                   "TLSF-2.4.6"
+                                   "oscpack_1_1_0"
+                                   "."
+                                   "..")))
+                  (with-directory-excursion "./external_libraries"
+                    (for-each delete-file-recursively
+                              (scandir "."
+                                       (lambda (x)
+                                         (and (eq? (stat:type (stat x))
+                                                   'directory)
+                                              (not (member (basename x)
+                                                           keep-dirs)))))))
+                  ;; To find the Guix provided ableton-link library.
+                  (substitute* "lang/CMakeLists.txt"
+                    (("include\\(\\.\\./external_libraries/link/AbletonLinkConfig\\.cmake\\)")
+                     "find_package(AbletonLink NAMES AbletonLink ableton-link link REQUIRED)"))))))
     (build-system cmake-build-system)
-    (outputs
-     '("out"                            ;core language
-       "ide"))                          ;qt ide
+    (outputs '("out" ;core language
+               "ide")) ;qt ide
     (arguments
-     `(#:configure-flags '("-DSYSTEM_BOOST=ON"
-                           "-DSYSTEM_YAMLCPP=ON"
+     `(#:configure-flags '("-DSYSTEM_BOOST=ON" "-DSYSTEM_YAMLCPP=ON"
                            "-DSC_QT=ON"
                            "-DCMAKE_BUILD_TYPE=Release"
                            "-DFORTIFY=ON"
                            "-DLIBSCSYNTH=ON"
                            "-DSC_EL=OFF") ;scel is packaged individually as emacs-scel
-       #:phases
-       (modify-phases %standard-phases
-         ;; HOME must be defined otherwise supercollider throws a "ERROR:
-         ;; Primitive '_FileMkDir' failed." error when generating the doc.
-         ;; The graphical tests also hang without it.
-         (add-after 'unpack 'set-home-directory
-           (lambda _
-             (setenv "HOME" (getcwd))))
-         (add-after 'unpack 'patch-scclass-dir
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (scclass-dir
-                     (string-append out
-                                    "/share/SuperCollider/SCClassLibrary")))
-               (substitute* "lang/LangSource/SC_LanguageConfig.cpp"
-                 (((string-append
-                    "SC_Filesystem::instance\\(\\)\\.getDirectory"
-                    "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
-                  (string-append "Path(\"" scclass-dir "\")"))))))
-         (add-after 'patch-scclass-dir 'fix-struct-SOUNDFILE-tag
-           (lambda* _
-             (display (getcwd)) (newline)
-             (substitute* "include/plugin_interface/SC_SndBuf.h"
-               (("SNDFILE_tag")
-                "sf_private_tag"))))
-         (add-before 'build 'prepare-x
-           (lambda _
-             (system "Xvfb &")
-             (setenv "DISPLAY" ":0")))
-         (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)))))))
-    (native-inputs
-     (list ableton-link pkg-config qttools-5 xorg-server-for-tests))
+       #:phases (modify-phases %standard-phases
+                  ;; HOME must be defined otherwise supercollider throws a "ERROR:
+                  ;; Primitive '_FileMkDir' failed." error when generating the doc.
+                  ;; The graphical tests also hang without it.
+                  (add-after 'unpack 'set-home-directory
+                    (lambda _
+                      (setenv "HOME"
+                              (getcwd))))
+                  (add-after 'unpack 'patch-scclass-dir
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out"))
+                             (scclass-dir (string-append out
+                                           "/share/SuperCollider/SCClassLibrary")))
+                        (substitute* "lang/LangSource/SC_LanguageConfig.cpp"
+                          (((string-append
+                             "SC_Filesystem::instance\\(\\)\\.getDirectory"
+                             "\\(DirName::Resource\\) / CLASS_LIB_DIR_NAME"))
+                           (string-append "Path(\"" scclass-dir "\")"))))))
+                  (add-after 'patch-scclass-dir 'fix-struct-SOUNDFILE-tag
+                    (lambda* _
+                      (display (getcwd))
+                      (newline)
+                      (substitute* "include/plugin_interface/SC_SndBuf.h"
+                        (("SNDFILE_tag")
+                         "sf_private_tag"))))
+                  (add-before 'build 'prepare-x
+                    (lambda _
+                      (system "Xvfb &")
+                      (setenv "DISPLAY" ":0")))
+                  (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)))))))
+    (native-inputs (list ableton-link pkg-config qttools-5
+                         xorg-server-for-tests))
     (inputs (list jack-1
                   libsndfile
                   fftw
                   libxt
-                  readline              ;readline support for sclang's CLI
-                  alsa-lib              ;for sclang's MIDI interface
-                  eudev                 ;for user interactions with devices
-                  avahi                 ;zeroconf service discovery support
+                  readline ;readline support for sclang's CLI
+                  alsa-lib ;for sclang's MIDI interface
+                  eudev ;for user interactions with devices
+                  avahi ;zeroconf service discovery support
                   icu4c
                   boost
                   boost-sync
                   yaml-cpp
-                  python-wrapper        ;there were warnings in the build process
-                  ruby                  ;there were warnings in the build process
+                  python-wrapper ;there were warnings in the build process
+                  ruby ;there were warnings in the build process
                   qtbase-5
                   qtdeclarative-5
                   qtsvg-5
                   qtwebchannel-5
                   qtwebsockets-5))
-    (propagated-inputs                  ;to get native-search-path
-     (list qtwebengine-5))
+    (propagated-inputs ;to get native-search-path
+                       (list qtwebengine-5))
     (home-page "https://github.com/supercollider/supercollider")
     (synopsis "Synthesis engine and programming language")
-    (description "SuperCollider is a synthesis engine (@code{scsynth} or
+    (description
+     "SuperCollider is a synthesis engine (@code{scsynth} or
 @code{supernova}) and programming language (@code{sclang}).  It can be used
 for experimenting with sound synthesis and algorithmic composition.
 
-- 
2.39.2





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

* bug#63075: [PATCH] Fix supercollider.
  2023-04-25 20:35   ` [bug#63075] [PATCH 1/2] gnu: " Gabriel Wicki
@ 2023-04-28 18:50     ` Ludovic Courtès
  0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2023-04-28 18:50 UTC (permalink / raw)
  To: Gabriel Wicki; +Cc: 63075-done

Hi,

Gabriel Wicki <gabriel@erlikon.ch> skribis:

>>From f67786eb958a65ba778f67a8f443fa3d24293438 Mon Sep 17 00:00:00 2001
> Message-Id: <f67786eb958a65ba778f67a8f443fa3d24293438.1682453413.git.gabriel@erlikon.ch>
> From: Gabriel Wicki <gabriel@erlikon.ch>
> Date: Tue, 25 Apr 2023 22:03:03 +0200
> Subject: [PATCH 1/2] gnu: Fix supercollider.
>
> * gnu/packages/audio.scm (supercollider): Fix the build.
> [configure-flags] Re-enable DLIBSCSYNTH.
> [phases] New phase fix-struct-SOUNDFILE-tag.
> [inputs] Add ruby and python to appease the build process.

Applied, thanks!

I didn’t apply the ‘guix style’ patch because I’m not sure it brings
much.

Ludo’.




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

* [bug#63075] [PATCH] Fix supercollider.
  2023-04-25 20:33 [bug#63075] [PATCH] Fix supercollider Gabriel Wicki
       [not found] ` <handler.63075.B.16824548199053.ack@debbugs.gnu.org>
  2023-04-25 20:39 ` [bug#63075] [PATCH 2/2] gnu: supercollider: Apply guix style Gabriel Wicki
@ 2023-04-28 18:51 ` Ludovic Courtès
  2 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2023-04-28 18:51 UTC (permalink / raw)
  To: Gabriel Wicki; +Cc: 63075

Hi!

Gabriel Wicki <gabriel@erlikon.ch> skribis:

> Supercollider was broken so I've fixed it.  Btw there's no "audio"
> team.. Should I start one?  Not that I'm too much of an expert, but I am
> somewhat enthusiastic about audio...

You should bring it up on guix-devel, with a patch adding the team and
yourself.  Based on commit history, I’m pretty sure you’d find folks to
join you!

Ludo’.




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

end of thread, other threads:[~2023-04-28 18:52 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-25 20:33 [bug#63075] [PATCH] Fix supercollider Gabriel Wicki
     [not found] ` <handler.63075.B.16824548199053.ack@debbugs.gnu.org>
2023-04-25 20:35   ` [bug#63075] [PATCH 1/2] gnu: " Gabriel Wicki
2023-04-28 18:50     ` bug#63075: [PATCH] " Ludovic Courtès
2023-04-25 20:39 ` [bug#63075] [PATCH 2/2] gnu: supercollider: Apply guix style Gabriel Wicki
2023-04-28 18:51 ` [bug#63075] [PATCH] Fix supercollider Ludovic Courtès

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).