From: Sughosha via Guix-patches via <guix-patches@gnu.org>
To: 65367@debbugs.gnu.org
Cc: Sughosha <sughosha@disroot.org>
Subject: [bug#65367] [PATCH v4 4/4] gnu: Add stargate.
Date: Wed, 5 Jun 2024 21:22:11 +0530 [thread overview]
Message-ID: <97fc842e0440b37f5fee11206b95bb4e772c0206.1717602731.git.sughosha@disroot.org> (raw)
In-Reply-To: <cover.1717602731.git.sughosha@disroot.org>
* gnu/packages/music.scm (stargate): New variable.
Change-Id: I625c68746ca6bdf9f8de6ebde602ffa7428a2a0c
---
gnu/packages/music.scm | 186 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 186 insertions(+)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 14adf46401..d73e8d4d34 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -196,6 +196,7 @@ (define-module (gnu packages music)
#:use-module (gnu packages textutils)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages valgrind)
#:use-module (gnu packages version-control)
#:use-module (gnu packages video)
#:use-module (gnu packages vim) ;for 'xxd'
@@ -5179,6 +5180,191 @@ (define-public lmms
can receive input from a MIDI keyboard.")
(license license:gpl2+)))
+(define-public stargate
+ (package
+ (name "stargate")
+ (version "24.02.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/stargatedaw/stargate")
+ (commit (string-append "release-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0hy0pf6gcw4hjhsvb1x60m1v0wqm28j7cc91g1vcna2f42kk8gyh"))
+ (modules '((guix build utils)))
+ (snippet
+ '(with-directory-excursion "src"
+ ;; Delete bundled libraries.
+ (delete-file-recursively "sg_py_vendor")
+ ;; Disable compiling and installing bundled libraries.
+ (substitute* "Makefile"
+ ((" sg_py_vendor") "")
+ (("install -m 755 vendor") "# install -m 755 vendor"))
+ ;; Import python modules from packaged libraries.
+ (substitute* (find-files "sglib" "\\.py$")
+ (("from sg_py_vendor ") "")
+ (("from sg_py_vendor.") "from "))
+ (substitute* "engine/tests/test_daw.c"
+ ;; Disable assignment of a string to an expression with
+ ;; array type which fails tests.
+ (("INSTALL_PREFIX =") "// INSTALL_PREFIX"))
+ ;; Disable manual tests requiring opening a browser.
+ (substitute* '("Makefile"
+ "engine/Makefile"
+ "engine/libcds/Makefile")
+ (("\\$\\(BROWSER\\)") "# $(BROWSER)"))))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:test-target "tests"
+ #:make-flags
+ #~(list "PREFIX=/"
+ "LIBDIR=/lib"
+ "INCLUDEDIR=/include"
+ (string-append "DESTDIR=" #$output)
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "CXX=" #$(cxx-for-target)))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-portaudio-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/sgui/widgets/hardware_dialog.py"
+ (("\\\"libportaudio")
+ (string-append "\"" (assoc-ref inputs "portaudio")
+ "/lib/libportaudio")))))
+ (add-after 'patch-portaudio-path 'change-directory
+ (lambda _
+ (chdir "src")))
+ (delete 'configure) ;no configure script
+ (add-before 'build 'patch-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "test_parse.sh"
+ (("python") (which "python3")))
+ (with-directory-excursion "files/share"
+ (substitute* '"applications/stargate.desktop"
+ (("/usr") #$output)))))
+ (replace 'build
+ (lambda* (#:key (make-flags '()) (parallel-build? #t)
+ #:allow-other-keys)
+ (apply invoke "make" "-Cengine"
+ `(,@(if parallel-build?
+ `("-j" ,(number->string (parallel-job-count)))
+ '())
+ ,@make-flags))))
+ (add-before 'check 'check-setup
+ (lambda _
+ (setenv "HOME" "/tmp")
+ (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+ ;; Test fails with AssertionError.
+ (delete-file "test/sglib/models/daw/routing/test_midi.py")))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (wrap-program (string-append #$output "/bin/stargate")
+ `("GUIX_PYTHONPATH" ":" prefix
+ (,(getenv "GUIX_PYTHONPATH")))
+ `("PATH" ":" prefix
+ (,(getenv "PATH")))))))))
+ (native-inputs
+ (list pkg-config
+ python-gcovr
+ python-packaging
+ python-pytest
+ python-pytest-cov
+ python-pytest-runner))
+ (inputs
+ (list alsa-lib
+ bash-minimal
+ fftw
+ fftwf
+ jq
+ libsndfile
+ portaudio
+ portmidi
+ python
+ python-jinja2
+ python-mido
+ python-mutagen
+ python-numpy
+ python-psutil
+ python-pymarshal
+ python-pyqt
+ python-pyyaml
+ python-wavefile
+ python-yq
+ rubberband
+ valgrind
+ ;; Stargate's fork of sbsms.
+ (let ((commit "90fab3440063dc9b6c1c2a8f74c2d92bd0e423f9")
+ (revision "0"))
+ (package/inherit libsbsms
+ (name "stargate-sbsms")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/stargatedaw/stargate-sbsms")
+ (commit commit)))
+ (sha256
+ (base32
+ "11srnzgpavcj6n70zjdm7488jzrprk71mg9dgr1sa6vwp575hf2m"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments libsbsms)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (delete 'fix-ar-lib-path)
+ (add-before 'build 'change-directory
+ (lambda _
+ (chdir "cli")))
+ (replace 'configure
+ (lambda _
+ (setenv "DESTDIR" #$output)
+ (setenv "PREFIX" "/")))
+ (add-after 'install 'rename-sbsms
+ (lambda _
+ (with-directory-excursion (string-append #$output
+ "/bin")
+ (rename-file "sbsms" "stargate-sbsms"))))
+ (delete 'check)))))
+ (native-inputs
+ (list libsndfile))
+ (home-page "https://stargatedaw/stargate-sbsms")))
+ ;; Stargate's fork of soundtouch.
+ (let ((commit "464f474c0be5d7e0970909dd30593012e4621468")
+ (revision "0"))
+ (package/inherit soundtouch
+ (name "stargate-soundtouch")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/stargatedaw/stargate-soundtouch")
+ (commit commit)))
+ (sha256
+ (base32
+ "1aw2j1f10p8n4s197b1nd3g1rjvwbrrszc9gwsbwk01c6nb3nr9v"))))
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'rename-soundstretch
+ (lambda _
+ (with-directory-excursion (string-append #$output
+ "/bin")
+ (rename-file "soundstretch"
+ "stargate-soundstretch")))))))
+ (home-page "https://stargatedaw/stargate-soundtouch")))))
+ (home-page "https://github.com/stargatedaw/stargate")
+ (synopsis "Digital audio workstation")
+ (description
+ "Stargate is a digital audio workstation with built-in instrument and
+effect plugins and wave editor, providing innovative features, especially for
+EDM production.")
+ (license license:gpl3)))
+
(define-public liquidsfz
(package
(name "liquidsfz")
--
2.45.1
next prev parent reply other threads:[~2024-06-05 15:57 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-18 15:35 [bug#65367] [PATCH 0/5] gnu: Add stargate Sughosha via Guix-patches via
2023-08-18 15:35 ` [bug#65368] [PATCH 1/5] gnu: Add python-wavefile Sughosha via Guix-patches via
2023-10-08 23:50 ` [bug#65368] Sharlatan Hellseher
2023-08-18 15:35 ` [bug#65369] [PATCH 2/5] gnu: Add python-pymarshal Sughosha via Guix-patches via
2023-08-18 15:35 ` [bug#65367] [PATCH 3/5] gnu: Add python-packaging Sughosha via Guix-patches via
2023-08-18 15:35 ` [bug#65367] [PATCH 4/5] gnu: Add python-mido Sughosha via Guix-patches via
2023-08-18 15:35 ` [bug#65367] [PATCH 5/5] gnu: Add stargate Sughosha via Guix-patches via
2023-10-31 13:44 ` [bug#65367] [PATCH v2 0/4] " Sughosha via Guix-patches via
2023-10-31 13:44 ` [bug#65367] [PATCH v2 1/4] gnu: Add python-wavefile Sughosha via Guix-patches via
2023-10-31 13:44 ` [bug#65367] [PATCH v2 2/4] gnu: Add python-pymarshal Sughosha via Guix-patches via
2023-10-31 13:44 ` [bug#65367] [PATCH v2 3/4] gnu: Add python-mido Sughosha via Guix-patches via
2023-10-31 13:44 ` [bug#65367] [PATCH v2 4/4] gnu: Add stargate Sughosha via Guix-patches via
2023-10-31 17:08 ` [bug#65367] [PATCH v3 0/4] " Sughosha via Guix-patches via
2023-10-31 17:08 ` [bug#65367] [PATCH v3 1/4] gnu: Add python-wavefile Sughosha via Guix-patches via
2023-10-31 17:08 ` [bug#65367] [PATCH v3 2/4] gnu: Add python-pymarshal Sughosha via Guix-patches via
2023-10-31 17:08 ` [bug#65367] [PATCH v3 3/4] gnu: Add python-mido Sughosha via Guix-patches via
2023-10-31 17:08 ` [bug#65367] [PATCH v3 4/4] gnu: Add stargate Sughosha via Guix-patches via
2024-06-05 15:52 ` [bug#65367] [PATCH v4 0/4] " Sughosha via Guix-patches via
2024-06-05 15:52 ` [bug#65367] [PATCH v4 1/4] gnu: Add python-pymarshal Sughosha via Guix-patches via
2024-06-05 15:52 ` [bug#65367] [PATCH v4 2/4] gnu: Add python-mido Sughosha via Guix-patches via
2024-06-05 15:52 ` [bug#65367] [PATCH v4 3/4] gnu: Add python-wavefile Sughosha via Guix-patches via
2024-06-05 15:52 ` Sughosha via Guix-patches via [this message]
2024-06-13 9:36 ` bug#65367: [PATCH v4 0/4] gnu: Add stargate Ludovic Courtès
2024-06-13 16:01 ` [bug#65367] " Sughosha via Guix-patches via
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=97fc842e0440b37f5fee11206b95bb4e772c0206.1717602731.git.sughosha@disroot.org \
--to=guix-patches@gnu.org \
--cc=65367@debbugs.gnu.org \
--cc=sughosha@disroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).