* [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
[parent not found: <handler.63075.B.16824548199053.ack@debbugs.gnu.org>]
* [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] 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 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: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).