Put in earplugs
This commit is contained in:
parent
43bc72cc66
commit
1ec24b52f9
1 changed files with 81 additions and 86 deletions
|
@ -42,62 +42,11 @@
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system trivial))
|
#:use-module (guix build-system trivial))
|
||||||
|
|
||||||
;; modified sc3 package without Qt interface
|
;; modified sc3 packages which split into cli & gui versions
|
||||||
|
|
||||||
(define-public supercollider-cli
|
(define-public supercollider-cli
|
||||||
(package
|
(package
|
||||||
(inherit supercollider)
|
|
||||||
(name "supercollider-cli")
|
(name "supercollider-cli")
|
||||||
(synopsis "Synthesis engine and programming language (CLI version without Qt GUI)")
|
|
||||||
(inputs (modify-inputs
|
|
||||||
(package-inputs supercollider)
|
|
||||||
(delete "qtbase-5"
|
|
||||||
"qtdeclarative-5"
|
|
||||||
"qtsvg-5"
|
|
||||||
"qtwebchannel-5"
|
|
||||||
"qtwebsockets-5")))
|
|
||||||
;; use slightly modified build options
|
|
||||||
(arguments
|
|
||||||
(list
|
|
||||||
#:configure-flags
|
|
||||||
#~(list "-DSYSTEM_BOOST=ON"
|
|
||||||
"-DSYSTEM_YAMLCPP=ON"
|
|
||||||
"-DFORTIFY=ON"
|
|
||||||
"-DLIBSCSYNTH=ON"
|
|
||||||
"-DSC_EL=OFF"
|
|
||||||
"-DSC_QT=OFF" ;; CLI only. buiild without Qt and IDE
|
|
||||||
"-DCMAKE_BUILD_TYPE=Release")
|
|
||||||
#: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 _
|
|
||||||
(let* ((scclass-dir
|
|
||||||
(string-append #$output
|
|
||||||
"/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")))))))))
|
|
||||||
|
|
||||||
|
|
||||||
;; via https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/audio.scm
|
|
||||||
|
|
||||||
(define-public supercollider-next
|
|
||||||
(package
|
|
||||||
(name "supercollider-next")
|
|
||||||
(version "3.13.0")
|
(version "3.13.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
|
@ -133,9 +82,77 @@ AbletonLinkConfig\\.cmake\\)")
|
||||||
"find_package(AbletonLink NAMES AbletonLink ableton-link \
|
"find_package(AbletonLink NAMES AbletonLink ableton-link \
|
||||||
link REQUIRED)"))))))
|
link REQUIRED)"))))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
|
(outputs '("out"))
|
||||||
|
(arguments
|
||||||
|
(list
|
||||||
|
#:configure-flags
|
||||||
|
#~(list "-DSYSTEM_BOOST=ON"
|
||||||
|
"-DSYSTEM_YAMLCPP=ON"
|
||||||
|
"-DFORTIFY=ON"
|
||||||
|
"-DLIBSCSYNTH=ON"
|
||||||
|
"-DSC_EL=OFF"
|
||||||
|
"-DSC_QT=OFF" ;; CLI only. buiild without Qt and IDE
|
||||||
|
"-DCMAKE_BUILD_TYPE=Release")
|
||||||
|
#: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 _
|
||||||
|
(let* ((scclass-dir
|
||||||
|
(string-append #$output
|
||||||
|
"/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")))))))
|
||||||
|
(native-inputs
|
||||||
|
(list ableton-link pkg-config))
|
||||||
|
(inputs (list jack-1
|
||||||
|
libsndfile
|
||||||
|
fftw
|
||||||
|
libxt
|
||||||
|
readline
|
||||||
|
alsa-lib
|
||||||
|
eudev
|
||||||
|
avahi
|
||||||
|
icu4c
|
||||||
|
boost
|
||||||
|
boost-sync
|
||||||
|
yaml-cpp
|
||||||
|
python-wrapper
|
||||||
|
ruby))
|
||||||
|
(home-page "https://github.com/supercollider/supercollider")
|
||||||
|
(synopsis "Synthesis engine and programming language (CLI version without Qt GUI)")
|
||||||
|
(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.
|
||||||
|
|
||||||
|
SuperCollider requires jackd to be installed in your user profile and your
|
||||||
|
user must be allowed to access the realtime features of the kernel. Search
|
||||||
|
for \"realtime\" in the index of the Guix manual to learn how to achieve this
|
||||||
|
using Guix System.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
|
||||||
|
(define-public supercollider-gui
|
||||||
|
(package
|
||||||
|
(inherit supercollider-cli)
|
||||||
|
(name "supercollider-gui")
|
||||||
(outputs
|
(outputs
|
||||||
'("out" ;core language
|
'("out"
|
||||||
"ide")) ;qt ide
|
"ide"))
|
||||||
(arguments
|
(arguments
|
||||||
(list
|
(list
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
|
@ -145,7 +162,7 @@ link REQUIRED)"))))))
|
||||||
"-DCMAKE_BUILD_TYPE=Release"
|
"-DCMAKE_BUILD_TYPE=Release"
|
||||||
"-DFORTIFY=ON"
|
"-DFORTIFY=ON"
|
||||||
"-DLIBSCSYNTH=ON"
|
"-DLIBSCSYNTH=ON"
|
||||||
"-DSC_EL=OFF") ;scel is packaged individually as emacs-scel
|
"-DSC_EL=OFF")
|
||||||
#:phases
|
#:phases
|
||||||
#~(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
;; HOME must be defined otherwise supercollider throws a "ERROR:
|
;; HOME must be defined otherwise supercollider throws a "ERROR:
|
||||||
|
@ -183,35 +200,13 @@ link REQUIRED)"))))))
|
||||||
(delete-file scide)))))))
|
(delete-file scide)))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list ableton-link pkg-config qttools-5 xorg-server-for-tests))
|
(list ableton-link pkg-config qttools-5 xorg-server-for-tests))
|
||||||
(inputs (list jack-1
|
(inputs (modify-inputs
|
||||||
libsndfile
|
(package-inputs supercollider-cli)
|
||||||
fftw
|
(append "qtbase-5"
|
||||||
libxt
|
"qtdeclarative-5"
|
||||||
readline ;readline support for sclang's CLI
|
"qtsvg-5"
|
||||||
alsa-lib ;for sclang's MIDI interface
|
"qtwebchannel-5"
|
||||||
eudev ;for user interactions with devices
|
"qtwebsockets-5")))
|
||||||
avahi ;zeroconf service discovery support
|
(propagated-inputs
|
||||||
icu4c
|
|
||||||
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
|
|
||||||
qtwebchannel-5
|
|
||||||
qtwebsockets-5))
|
|
||||||
(propagated-inputs ;to get native-search-path
|
|
||||||
(list qtwebengine-5))
|
(list qtwebengine-5))
|
||||||
(home-page "https://github.com/supercollider/supercollider")
|
(synopsis "Synthesis engine and programming language (including IDE)")))
|
||||||
(synopsis "Synthesis engine and programming language")
|
|
||||||
(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.
|
|
||||||
|
|
||||||
SuperCollider requires jackd to be installed in your user profile and your
|
|
||||||
user must be allowed to access the realtime features of the kernel. Search
|
|
||||||
for \"realtime\" in the index of the Guix manual to learn how to achieve this
|
|
||||||
using Guix System.")
|
|
||||||
(license license:gpl2+)))
|
|
||||||
|
|
Loading…
Reference in a new issue