GNU bug report logs - #65367
[PATCH 0/5] gnu: Add stargate.

Previous Next

Package: guix-patches;

Reported by: Sughosha <sughosha <at> disroot.org>

Date: Fri, 18 Aug 2023 15:37:01 UTC

Severity: normal

Tags: patch

Merged with 65368, 65369

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 65367 in the body.
You can then email your comments to 65367 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Fri, 18 Aug 2023 15:37:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Sughosha <sughosha <at> disroot.org>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 18 Aug 2023 15:37:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: guix-patches <at> gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH 0/5] gnu: Add stargate.
Date: Fri, 18 Aug 2023 17:35:37 +0200
Stargate is a digital audio workstation (DAW), instrument and effect plugins
and wave editor.

https://github.com/stargatedaw/stargate

Sughosha (5):
  gnu: Add python-wavefile.
  gnu: Add python-pymarshal.
  gnu: Add python-packaging.
  gnu: Add python-mido.
  gnu: Add stargate.

 gnu/packages/music.scm      | 182 ++++++++++++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm | 100 ++++++++++++++++++++
 2 files changed, 282 insertions(+)


base-commit: 1b2d43fe016848ea2ec16ff18cbc14340944fc4e
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Fri, 18 Aug 2023 15:38:01 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: guix-patches <at> gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH 3/5] gnu: Add python-packaging.
Date: Fri, 18 Aug 2023 17:35:40 +0200
* gnu/packages/python-xyz.scm (python-packaging): New variable.
---
 gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 67721666ec..84f0e3a049 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23069,6 +23069,28 @@ (define-public python-tqdm
 design and layout.")
     (license (list license:mpl2.0 license:expat))))
 
+(define-public python-packaging
+  (package
+    (name "python-packaging")
+    (version "23.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "packaging" version))
+              (sha256
+               (base32
+                "0krkvmkqgm7y1i7w6zhyklqm2l84n1abx60q8d2adzvc5c6ri4m3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     ;; test_elffile.py, test_manylinux.py, test,markers.py and
+     ;; test_metadata.py fail.
+     (list #:tests? #f))
+    (native-inputs
+     (list python-flit-core))
+    (home-page "https://packaging.pypa.io/en/stable/")
+    (synopsis "Core utilities for Python packages")
+    (description "This package provides core utilities for Python packages.")
+    (license (list license:asl2.0 license:bsd-2))))
+
 (define-public python-pkginfo
   (package
     (name "python-pkginfo")
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Fri, 18 Aug 2023 15:38:02 GMT) Full text and rfc822 format available.

Message #11 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: guix-patches <at> gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH 4/5] gnu: Add python-mido.
Date: Fri, 18 Aug 2023 17:35:41 +0200
* gnu/packages/python-xyz.scm (python-mido): New variable.
---
 gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 84f0e3a049..a249e6d846 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23039,6 +23039,29 @@ (define-public python-pydub
 @code{ffmpeg} to open various audio formats.")
     (license license:expat))) ; MIT license
 
+(define-public python-mido
+  (package
+    (name "python-mido")
+    (version "1.3.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "mido" version))
+              (sha256
+               (base32
+                "1al6r86pa0700862cm5qmzz5q94qrgdv4392hkws7g1lrqx2wa44"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (delete 'sanity-check)))) ;fails
+    (propagated-inputs (list python-importlib-metadata python-packaging))
+    (native-inputs (list python-pytest))
+    (home-page "https://mido.readthedocs.io/en/stable/")
+    (synopsis "MIDI Objects for Python")
+    (description "This library is for working with MIDI 1.0 ports, messages and
+files.")
+    (license license:expat)))
+
 (define-public python-tqdm
   (package
     (name "python-tqdm")
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Fri, 18 Aug 2023 15:38:02 GMT) Full text and rfc822 format available.

Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: guix-patches <at> gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH 5/5] gnu: Add stargate.
Date: Fri, 18 Aug 2023 17:35:42 +0200
* gnu/packages/music.scm (stargate): New variable.
---
 gnu/packages/music.scm | 182 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 182 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 8681bb1c10..3ffdf0fc30 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3479,6 +3479,188 @@ (define-public aj-snapshot
 from the command line.")
     (license license:gpl3+)))
 
+(define-public stargate
+  (package
+    (name "stargate")
+    (version "23.08.1")
+    (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
+                "0flnvf9f175bk8xmhpfqjvw10jxhd5cl55viwahai3p531ld30zc"))
+              (modules '((guix build utils)))
+              ;; Devendor bundled packages.
+              (snippet
+               '(with-directory-excursion "src"
+                  (delete-file-recursively "sg_py_vendor")
+                  (substitute* (find-files "sglib" "\\.py$")
+                    (("from sg_py_vendor ") ""))
+                  (substitute* "Makefile"
+                    ((" sg_py_vendor") "")
+                    (("install -m 755 vendor") "# install -m 755 vendor"))))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:test-target "tests"
+           #:make-flags
+           #~(list "distro"
+                   "PREFIX=/"
+                   "SG_DIR=/lib/stargate"
+                   (string-append "CC=" #$(cc-for-target))
+                   (string-append "CXX=" #$(cxx-for-target))
+                   (string-append "DESTDIR=" #$output))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'change-directory
+                 (lambda _
+                   (chdir "src")))
+               (delete 'configure) ;no configure script
+               (add-before 'build 'patch-paths
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "sgui/widgets/hardware_dialog.py"
+                     (("libportaudio\\.so")
+                      (search-input-file inputs "/lib/libportaudio.so"))
+                     (("libportmidi\\.so")
+                      (search-input-file inputs "/lib/libportmidi.so")))
+                   (substitute* "test_parse.sh"
+                     (("python") (which "python3")))
+                   (substitute* "engine/tests/test_daw.c"
+                     (("INSTALL_PREFIX") "// INSTALL_PREFIX"))
+                   (with-directory-excursion "files/share"
+                     (substitute* '("applications/stargate.desktop"
+                                    "doc/stargate/copyright")
+                       (("/usr") #$output)))))
+               (add-before 'check 'check-setup
+                 (lambda _
+                   (setenv "HOME" "/tmp")
+                   (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+                   ;; test_to_from_str_reorder fails.
+                   (delete-file "test/sglib/models/daw/routing/test_midi.py")
+                   ;; Disable testing with browser.
+                   (substitute* "Makefile"
+                     (("\\$\\(BROWSER\\)") "# $(BROWSER)"))))
+               (replace 'install
+                 (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                   (let ((bin (string-append #$output "/bin"))
+                         (lib (string-append #$output "/lib/stargate"))
+                         (share (string-append #$output "/share")))
+                     (rename-file "files/share" "share")
+                     (apply invoke "make" "install_self_contained" make-flags)
+                     (mkdir-p bin)
+                     (symlink (string-append lib "/scripts/stargate")
+                              (string-append bin "/stargate"))
+                     (copy-recursively "share" share))))
+               (add-after 'install 'wrap-program
+                 (lambda _
+                   (wrap-program (string-append #$output "/bin/stargate")
+                     `("GUIX_PYTHONPATH" ":" prefix
+                       (,(getenv "GUIX_PYTHONPATH")))
+                     `("LD_LIBRARY_PATH" ":" prefix
+                       (,(getenv "PATH")))
+                     `("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-psutil
+           python-pymarshal
+           python-pyqt
+           python-pyyaml
+           python-wavefile
+           python-yq
+           rubberband
+           ;; Fork of the libsbsms.
+           (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-binary
+                            (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")))
+           ;; Fork of soundtouch with extra features and fixes.
+           (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-binary
+                            (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 qtractor
   (package
     (name "qtractor")
-- 
2.41.0





Merged 65367 65368 65369. Request was from Christopher Baines <mail <at> cbaines.net> to control <at> debbugs.gnu.org. (Fri, 13 Oct 2023 09:49:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 13:47:01 GMT) Full text and rfc822 format available.

Message #19 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v2 0/4] gnu: Add stargate.
Date: Tue, 31 Oct 2023 14:44:39 +0100
Sughosha (4):
  gnu: Add python-wavefile.
  gnu: Add python-pymarshal.
  gnu: Add python-mido.
  gnu: Add stargate.

 gnu/packages/music.scm      | 182 ++++++++++++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm |  82 ++++++++++++++++
 2 files changed, 264 insertions(+)


base-commit: c0895371c5759c7d9edb330774e90f192cc4cf2c
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 13:47:02 GMT) Full text and rfc822 format available.

Message #22 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v2 1/4] gnu: Add python-wavefile.
Date: Tue, 31 Oct 2023 14:44:40 +0100
* gnu/packages/python-xyz.scm (python-wavefile): New variable.
---
 gnu/packages/python-xyz.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6001e7e6eb..85930b1fad 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -169,6 +169,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages astronomy)
   #:use-module (gnu packages attr)
+  #:use-module (gnu packages audio)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
@@ -236,6 +237,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-check)
@@ -1801,6 +1803,41 @@ (define-public python-pymediainfo
 access the technical and tag data for video and audio files.")
     (license license:expat)))
 
+(define-public python-wavefile
+  (package
+    (name "python-wavefile")
+    (version "1.6.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "wavefile" version))
+              (sha256
+               (base32
+                "04mdcxq7n1vnwb9y65j0cwpy91ik5rh9vki1f45xqnh4ygz91n75"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'patch-libsndfile-path
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "wavefile/libsndfile.py"
+                     (("libsndfile\\.so")
+                      (search-input-file inputs "/lib/libsndfile.so")))))
+               (add-before 'check 'check-setup
+                 (lambda _
+                   (setenv "HOME" "/tmp")
+                   (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH")))))))
+    (native-inputs
+     (list python-pytest))
+    (inputs
+     (list libsndfile portaudio))
+    (propagated-inputs (list python-numpy python-pyaudio))
+    (home-page "https://github.com/vokimon/python-wavefile")
+    (synopsis "Pythonic audio file reader and writer")
+    (description
+     "This package provides pythonic libsndfile wrapper to read and write audio
+files.")
+    (license license:gpl3+)))
+
 (define-public python-psutil
   (package
     (name "python-psutil")
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 13:47:02 GMT) Full text and rfc822 format available.

Message #25 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v2 2/4] gnu: Add python-pymarshal.
Date: Tue, 31 Oct 2023 14:44:41 +0100
* gnu/packages/python-xyz.scm (python-pymarshal): New variable.
---
 gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 85930b1fad..617225e50e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -31200,6 +31200,28 @@ (define-public python-peachpy
 supports x86_64 instructions up to AVX-512 and SHA.")
       (license license:bsd-2))))
 
+(define-public python-pymarshal
+  (package
+    (name "python-pymarshal")
+    (version "2.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pymarshal" version))
+              (sha256
+               (base32
+                "1lhb7yim60pvclbd440zd4n50xs1d2rvmnrhhvib3hyv0dxil5j3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:tests? #f)) ;fails due to unrecognized arguments
+    (native-inputs
+     (list python-pytest))
+    (propagated-inputs (list python-bson python-pyyaml))
+    (home-page "https://gitlab.com/d3v-t00lz/pymarshal")
+    (synopsis "Pythonic implementation of Golang struct (un)marshalling")
+    (description "PyMarshal replicates the feature of (un)marshalling structs
+in Golang.")
+    (license license:bsd-2)))
+
 (define-public python-sgmllib3k
   (let ((commit "799964676f35349ca2dd04503e34c2b3ad522c0d")
         (revision "1"))
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 13:47:03 GMT) Full text and rfc822 format available.

Message #28 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v2 3/4] gnu: Add python-mido.
Date: Tue, 31 Oct 2023 14:44:42 +0100
* gnu/packages/python-xyz.scm (python-mido): New variable.
---
 gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 617225e50e..07aa624990 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23365,6 +23365,29 @@ (define-public python-pydub
 @code{ffmpeg} to open various audio formats.")
     (license license:expat))) ; MIT license
 
+(define-public python-mido
+  (package
+    (name "python-mido")
+    (version "1.3.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "mido" version))
+              (sha256
+               (base32
+                "1al6r86pa0700862cm5qmzz5q94qrgdv4392hkws7g1lrqx2wa44"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (delete 'sanity-check)))) ;fails
+    (propagated-inputs (list python-importlib-metadata python-packaging))
+    (native-inputs (list python-pytest))
+    (home-page "https://mido.readthedocs.io/en/stable/")
+    (synopsis "MIDI Objects for Python")
+    (description "This library is for working with MIDI 1.0 ports, messages and
+files.")
+    (license license:expat)))
+
 (define-public python-tqdm
   (package
     (name "python-tqdm")
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 13:47:03 GMT) Full text and rfc822 format available.

Message #31 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v2 4/4] gnu: Add stargate.
Date: Tue, 31 Oct 2023 14:44:43 +0100
* gnu/packages/music.scm (stargate): New variable.
---
 gnu/packages/music.scm | 182 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 182 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index b181c86b45..34f46fbb2c 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3479,6 +3479,188 @@ (define-public aj-snapshot
 from the command line.")
     (license license:gpl3+)))
 
+(define-public stargate
+  (package
+    (name "stargate")
+    (version "23.08.1")
+    (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
+                "0flnvf9f175bk8xmhpfqjvw10jxhd5cl55viwahai3p531ld30zc"))
+              (modules '((guix build utils)))
+              ;; Devendor bundled packages.
+              (snippet
+               '(with-directory-excursion "src"
+                  (delete-file-recursively "sg_py_vendor")
+                  (substitute* (find-files "sglib" "\\.py$")
+                    (("from sg_py_vendor ") ""))
+                  (substitute* "Makefile"
+                    ((" sg_py_vendor") "")
+                    (("install -m 755 vendor") "# install -m 755 vendor"))))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:test-target "tests"
+           #:make-flags
+           #~(list "distro"
+                   "PREFIX=/"
+                   "SG_DIR=/lib/stargate"
+                   (string-append "CC=" #$(cc-for-target))
+                   (string-append "CXX=" #$(cxx-for-target))
+                   (string-append "DESTDIR=" #$output))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'change-directory
+                 (lambda _
+                   (chdir "src")))
+               (delete 'configure) ;no configure script
+               (add-before 'build 'patch-paths
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "sgui/widgets/hardware_dialog.py"
+                     (("libportaudio\\.so")
+                      (search-input-file inputs "/lib/libportaudio.so"))
+                     (("libportmidi\\.so")
+                      (search-input-file inputs "/lib/libportmidi.so")))
+                   (substitute* "test_parse.sh"
+                     (("python") (which "python3")))
+                   (substitute* "engine/tests/test_daw.c"
+                     (("INSTALL_PREFIX") "// INSTALL_PREFIX"))
+                   (with-directory-excursion "files/share"
+                     (substitute* '("applications/stargate.desktop"
+                                    "doc/stargate/copyright")
+                       (("/usr") #$output)))))
+               (add-before 'check 'check-setup
+                 (lambda _
+                   (setenv "HOME" "/tmp")
+                   (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+                   ;; test_to_from_str_reorder fails.
+                   (delete-file "test/sglib/models/daw/routing/test_midi.py")
+                   ;; Disable testing with browser.
+                   (substitute* "Makefile"
+                     (("\\$\\(BROWSER\\)") "# $(BROWSER)"))))
+               (replace 'install
+                 (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                   (let ((bin (string-append #$output "/bin"))
+                         (lib (string-append #$output "/lib/stargate"))
+                         (share (string-append #$output "/share")))
+                     (rename-file "files/share" "share")
+                     (apply invoke "make" "install_self_contained" make-flags)
+                     (mkdir-p bin)
+                     (symlink (string-append lib "/scripts/stargate")
+                              (string-append bin "/stargate"))
+                     (copy-recursively "share" share))))
+               (add-after 'install 'wrap-program
+                 (lambda _
+                   (wrap-program (string-append #$output "/bin/stargate")
+                     `("GUIX_PYTHONPATH" ":" prefix
+                       (,(getenv "GUIX_PYTHONPATH")))
+                     `("LD_LIBRARY_PATH" ":" prefix
+                       (,(getenv "PATH")))
+                     `("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-psutil
+           python-pymarshal
+           python-pyqt
+           python-pyyaml
+           python-wavefile
+           python-yq
+           rubberband
+           ;; Fork of the libsbsms.
+           (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-binary
+                            (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")))
+           ;; Fork of soundtouch with extra features and fixes.
+           (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-binary
+                            (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 qtractor
   (package
     (name "qtractor")
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 17:10:02 GMT) Full text and rfc822 format available.

Message #34 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v3 2/4] gnu: Add python-pymarshal.
Date: Tue, 31 Oct 2023 18:08:22 +0100
* gnu/packages/python-xyz.scm (python-pymarshal): New variable.
---
 gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 53e57f8b49..205691f46a 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -31198,6 +31198,28 @@ (define-public python-peachpy
 supports x86_64 instructions up to AVX-512 and SHA.")
       (license license:bsd-2))))
 
+(define-public python-pymarshal
+  (package
+    (name "python-pymarshal")
+    (version "2.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pymarshal" version))
+              (sha256
+               (base32
+                "1lhb7yim60pvclbd440zd4n50xs1d2rvmnrhhvib3hyv0dxil5j3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:tests? #f)) ;fails due to unrecognized arguments
+    (native-inputs
+     (list python-pytest))
+    (propagated-inputs (list python-bson python-pyyaml))
+    (home-page "https://gitlab.com/d3v-t00lz/pymarshal")
+    (synopsis "Pythonic implementation of Golang struct (un)marshalling")
+    (description "PyMarshal replicates the feature of (un)marshalling structs
+in Golang.")
+    (license license:bsd-2)))
+
 (define-public python-sgmllib3k
   (let ((commit "799964676f35349ca2dd04503e34c2b3ad522c0d")
         (revision "1"))
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 17:10:02 GMT) Full text and rfc822 format available.

Message #37 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v3 0/4] gnu: Add stargate
Date: Tue, 31 Oct 2023 18:08:20 +0100
Sughosha (4):
  gnu: Add python-wavefile.
  gnu: Add python-pymarshal.
  gnu: Add python-mido.
  gnu: Add stargate.

 gnu/packages/music.scm      | 182 ++++++++++++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm |  80 ++++++++++++++++
 2 files changed, 262 insertions(+)


base-commit: c0895371c5759c7d9edb330774e90f192cc4cf2c
-- 
2.41.0





Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 17:10:03 GMT) Full text and rfc822 format available.

Message #40 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v3 4/4] gnu: Add stargate.
Date: Tue, 31 Oct 2023 18:08:24 +0100
* gnu/packages/music.scm (stargate): New variable.
---
 gnu/packages/music.scm | 182 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 182 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index b181c86b45..34f46fbb2c 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3479,6 +3479,188 @@ (define-public aj-snapshot
 from the command line.")
     (license license:gpl3+)))
 
+(define-public stargate
+  (package
+    (name "stargate")
+    (version "23.08.1")
+    (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
+                "0flnvf9f175bk8xmhpfqjvw10jxhd5cl55viwahai3p531ld30zc"))
+              (modules '((guix build utils)))
+              ;; Devendor bundled packages.
+              (snippet
+               '(with-directory-excursion "src"
+                  (delete-file-recursively "sg_py_vendor")
+                  (substitute* (find-files "sglib" "\\.py$")
+                    (("from sg_py_vendor ") ""))
+                  (substitute* "Makefile"
+                    ((" sg_py_vendor") "")
+                    (("install -m 755 vendor") "# install -m 755 vendor"))))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:test-target "tests"
+           #:make-flags
+           #~(list "distro"
+                   "PREFIX=/"
+                   "SG_DIR=/lib/stargate"
+                   (string-append "CC=" #$(cc-for-target))
+                   (string-append "CXX=" #$(cxx-for-target))
+                   (string-append "DESTDIR=" #$output))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'change-directory
+                 (lambda _
+                   (chdir "src")))
+               (delete 'configure) ;no configure script
+               (add-before 'build 'patch-paths
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "sgui/widgets/hardware_dialog.py"
+                     (("libportaudio\\.so")
+                      (search-input-file inputs "/lib/libportaudio.so"))
+                     (("libportmidi\\.so")
+                      (search-input-file inputs "/lib/libportmidi.so")))
+                   (substitute* "test_parse.sh"
+                     (("python") (which "python3")))
+                   (substitute* "engine/tests/test_daw.c"
+                     (("INSTALL_PREFIX") "// INSTALL_PREFIX"))
+                   (with-directory-excursion "files/share"
+                     (substitute* '("applications/stargate.desktop"
+                                    "doc/stargate/copyright")
+                       (("/usr") #$output)))))
+               (add-before 'check 'check-setup
+                 (lambda _
+                   (setenv "HOME" "/tmp")
+                   (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
+                   ;; test_to_from_str_reorder fails.
+                   (delete-file "test/sglib/models/daw/routing/test_midi.py")
+                   ;; Disable testing with browser.
+                   (substitute* "Makefile"
+                     (("\\$\\(BROWSER\\)") "# $(BROWSER)"))))
+               (replace 'install
+                 (lambda* (#:key (make-flags '()) #:allow-other-keys)
+                   (let ((bin (string-append #$output "/bin"))
+                         (lib (string-append #$output "/lib/stargate"))
+                         (share (string-append #$output "/share")))
+                     (rename-file "files/share" "share")
+                     (apply invoke "make" "install_self_contained" make-flags)
+                     (mkdir-p bin)
+                     (symlink (string-append lib "/scripts/stargate")
+                              (string-append bin "/stargate"))
+                     (copy-recursively "share" share))))
+               (add-after 'install 'wrap-program
+                 (lambda _
+                   (wrap-program (string-append #$output "/bin/stargate")
+                     `("GUIX_PYTHONPATH" ":" prefix
+                       (,(getenv "GUIX_PYTHONPATH")))
+                     `("LD_LIBRARY_PATH" ":" prefix
+                       (,(getenv "PATH")))
+                     `("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-psutil
+           python-pymarshal
+           python-pyqt
+           python-pyyaml
+           python-wavefile
+           python-yq
+           rubberband
+           ;; Fork of the libsbsms.
+           (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-binary
+                            (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")))
+           ;; Fork of soundtouch with extra features and fixes.
+           (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-binary
+                            (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 qtractor
   (package
     (name "qtractor")
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 17:10:03 GMT) Full text and rfc822 format available.

Message #43 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v3 1/4] gnu: Add python-wavefile.
Date: Tue, 31 Oct 2023 18:08:21 +0100
* gnu/packages/python-xyz.scm (python-wavefile): New variable.

Change-Id: I147c1bc9a71b4d304f31d2184e863e1c141bae40
---
 gnu/packages/python-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6001e7e6eb..53e57f8b49 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -169,6 +169,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages astronomy)
   #:use-module (gnu packages attr)
+  #:use-module (gnu packages audio)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
@@ -236,6 +237,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-check)
@@ -1801,6 +1803,39 @@ (define-public python-pymediainfo
 access the technical and tag data for video and audio files.")
     (license license:expat)))
 
+(define-public python-wavefile
+  (package
+    (name "python-wavefile")
+    (version "1.6.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "wavefile" version))
+              (sha256
+               (base32
+                "04mdcxq7n1vnwb9y65j0cwpy91ik5rh9vki1f45xqnh4ygz91n75"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'patch-libsndfile-path
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "wavefile/libsndfile.py"
+                     (("libsndfile\\.so")
+                      (search-input-file inputs "/lib/libsndfile.so")))))
+               (add-before 'check 'check-setup
+                 (lambda _
+                   (setenv "HOME" "/tmp")
+                   (setenv "LD_LIBRARY_PATH" (getenv "LIBRARY_PATH")))))))
+    (inputs
+     (list libsndfile portaudio))
+    (propagated-inputs (list python-numpy python-pyaudio))
+    (home-page "https://github.com/vokimon/python-wavefile")
+    (synopsis "Pythonic audio file reader and writer")
+    (description
+     "This package provides pythonic libsndfile wrapper to read and write audio
+files.")
+    (license license:gpl3+)))
+
 (define-public python-psutil
   (package
     (name "python-psutil")
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Tue, 31 Oct 2023 17:10:04 GMT) Full text and rfc822 format available.

Message #46 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v3 3/4] gnu: Add python-mido.
Date: Tue, 31 Oct 2023 18:08:23 +0100
* gnu/packages/python-xyz.scm (python-mido): New variable.
---
 gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 205691f46a..0864f284e1 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -23363,6 +23363,29 @@ (define-public python-pydub
 @code{ffmpeg} to open various audio formats.")
     (license license:expat))) ; MIT license
 
+(define-public python-mido
+  (package
+    (name "python-mido")
+    (version "1.3.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "mido" version))
+              (sha256
+               (base32
+                "1al6r86pa0700862cm5qmzz5q94qrgdv4392hkws7g1lrqx2wa44"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (delete 'sanity-check)))) ;fails
+    (propagated-inputs (list python-importlib-metadata python-packaging))
+    (native-inputs (list python-pytest))
+    (home-page "https://mido.readthedocs.io/en/stable/")
+    (synopsis "MIDI Objects for Python")
+    (description "This library is for working with MIDI 1.0 ports, messages and
+files.")
+    (license license:expat)))
+
 (define-public python-tqdm
   (package
     (name "python-tqdm")
-- 
2.41.0





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, sharlatanus <at> gmail.com, tanguy <at> bioneland.org, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Wed, 05 Jun 2024 15:56:06 GMT) Full text and rfc822 format available.

Message #49 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v4 1/4] gnu: Add python-pymarshal.
Date: Wed,  5 Jun 2024 21:22:08 +0530
* gnu/packages/python-xyz.scm (python-pymarshal): New variable.

Change-Id: I6a1d2f8f21869856a9a227bed213d9f71204b2d4
---
 gnu/packages/python-xyz.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c22df7728a..f4fc6c8768 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -4485,6 +4485,30 @@ (define-public python-jsonargparse
 variables.")
     (license license:expat)))
 
+(define-public python-pymarshal
+  (package
+    (name "python-pymarshal")
+    (version "2.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pymarshal" version))
+              (sha256
+               (base32
+                "1lhb7yim60pvclbd440zd4n50xs1d2rvmnrhhvib3hyv0dxil5j3"))))
+    (build-system pyproject-build-system)
+    (arguments
+     ;; Test fails with this error:
+     ;; "CovReportWarning: Failed to generate report: No data to report."
+     (list #:tests? #f))
+    (native-inputs
+     (list python-pytest python-pytest-cov))
+    (propagated-inputs (list python-bson python-pyyaml))
+    (home-page "https://gitlab.com/d3v-t00lz/pymarshal")
+    (synopsis "Pythonic implementation of Golang struct (un)marshalling")
+    (description "PyMarshal replicates the feature of (un)marshalling structs
+in Golang.")
+    (license license:bsd-2)))
+
 (define-public python-simplejson
   (package
     (name "python-simplejson")
-- 
2.45.1





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, sharlatanus <at> gmail.com, tanguy <at> bioneland.org, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Wed, 05 Jun 2024 15:56:07 GMT) Full text and rfc822 format available.

Message #52 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v4 3/4] gnu: Add python-wavefile.
Date: Wed,  5 Jun 2024 21:22:10 +0530
* gnu/packages/python-xyz.scm (python-wavefile): New variable.

Change-Id: Ied8fe04eea6f9a79cdde6382931a7009cf71f8f4
---
 gnu/packages/python-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7073c1cca5..667e0ffd6c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -176,6 +176,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages astronomy)
   #:use-module (gnu packages attr)
+  #:use-module (gnu packages audio)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
@@ -248,6 +249,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-build)
   #:use-module (gnu packages python-check)
@@ -4419,6 +4421,36 @@ (define-public python-simpleaudio
 audio playback capability for Python 3 on OSX, Windows, and Linux.")
     (license license:expat))) ; MIT license
 
+(define-public python-wavefile
+  (package
+    (name "python-wavefile")
+    (version "1.6.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "wavefile" version))
+              (sha256
+               (base32
+                "04mdcxq7n1vnwb9y65j0cwpy91ik5rh9vki1f45xqnh4ygz91n75"))))
+    (build-system python-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'patch-libsndfile-path
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "wavefile/libsndfile.py"
+                     (("'libsndfile")
+                      (string-append "'" (assoc-ref inputs "libsndfile")
+                                     "/lib/libsndfile"))))))))
+    (inputs
+     (list libsndfile portaudio))
+    (propagated-inputs (list python-numpy python-pyaudio))
+    (home-page "https://github.com/vokimon/python-wavefile")
+    (synopsis "Pythonic audio file reader and writer")
+    (description
+     "This package provides pythonic libsndfile wrapper to read and write audio
+files.")
+    (license license:gpl3+)))
+
 (define-public python-jsonalias
   (package
     (name "python-jsonalias")
-- 
2.45.1





Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Wed, 05 Jun 2024 15:57:01 GMT) Full text and rfc822 format available.

Message #55 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v4 4/4] gnu: Add stargate.
Date: Wed,  5 Jun 2024 21:22:11 +0530
* 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





Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Wed, 05 Jun 2024 16:04:02 GMT) Full text and rfc822 format available.

Message #58 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v4 0/4] gnu: Add stargate.
Date: Wed,  5 Jun 2024 21:22:07 +0530
In v4 patch series, packages are up to date, Enabled some tests, improved
comments and fixed some mistakes in patching.

Sughosha (4):
  gnu: Add python-pymarshal.
  gnu: Add python-mido.
  gnu: Add python-wavefile.
  gnu: Add stargate.

 gnu/packages/music.scm      | 186 ++++++++++++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm |  83 ++++++++++++++++
 2 files changed, 269 insertions(+)


base-commit: bf202e8bdd10dbd01da391ef635d1a31197251c1
-- 
2.45.1





Information forwarded to lars <at> 6xq.net, marius <at> gnu.org, me <at> bonfacemunyoki.com, sharlatanus <at> gmail.com, tanguy <at> bioneland.org, jgart <at> dismail.de, guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Wed, 05 Jun 2024 16:04:02 GMT) Full text and rfc822 format available.

Message #61 received at 65367 <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: 65367 <at> debbugs.gnu.org
Cc: Sughosha <sughosha <at> disroot.org>
Subject: [PATCH v4 2/4] gnu: Add python-mido.
Date: Wed,  5 Jun 2024 21:22:09 +0530
* gnu/packages/python-xyz.scm (python-mido): New variable.

Change-Id: I4bdc6dc6f059dd16c0e0a4152a5e9b5bf84764ee
---
 gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index f4fc6c8768..7073c1cca5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -36176,6 +36176,33 @@ (define-public python-clrprint
 colors.")
     (license license:expat)))
 
+(define-public python-mido
+  (package
+    (name "python-mido")
+    (version "1.3.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "mido" version))
+              (sha256
+               (base32
+                "0j63cydiinfyrvlhydzsb00cb7dyvrw3bnhjbdyp63vkxnv2isis"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list #:phases
+           #~(modify-phases %standard-phases
+               ;; This package requires python-packaging~=23.1 which is not yet
+               ;; updated to. As per pyproject.toml, it is required to provide
+               ;; a nice version_info opbject.
+               ;; TODO: After updating python-packaging, fix this.
+               (delete 'sanity-check))))
+    (propagated-inputs (list python-importlib-metadata python-packaging))
+    (native-inputs (list python-pytest))
+    (home-page "https://mido.readthedocs.io/en/stable/")
+    (synopsis "MIDI Objects for Python")
+    (description "This library is for working with MIDI 1.0 ports, messages and
+files.")
+    (license license:expat)))
+
 (define-public python-musical-scales
   (package
     (name "python-musical-scales")
-- 
2.45.1





Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Thu, 13 Jun 2024 09:37:02 GMT) Full text and rfc822 format available.

Notification sent to Sughosha <sughosha <at> disroot.org>:
bug acknowledged by developer. (Thu, 13 Jun 2024 09:37:02 GMT) Full text and rfc822 format available.

Message #66 received at 65367-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Sughosha <sughosha <at> disroot.org>
Cc: 65369-done <at> debbugs.gnu.org, 65367-done <at> debbugs.gnu.org
Subject: Re: [bug#65367] [PATCH v4 0/4] gnu: Add stargate.
Date: Thu, 13 Jun 2024 11:36:30 +0200
Hi,

Sughosha <sughosha <at> disroot.org> skribis:

>   gnu: Add python-pymarshal.
>   gnu: Add python-mido.
>   gnu: Add python-wavefile.
>   gnu: Add stargate.

I applied the whole series and followed up with a patch that moves
‘stargate-sbsms’ and ‘stargate-soundtouch’ to audio.scm.

Thanks!

Ludo’.




Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Thu, 13 Jun 2024 09:37:03 GMT) Full text and rfc822 format available.

Notification sent to Sughosha <sughosha <at> disroot.org>:
bug acknowledged by developer. (Thu, 13 Jun 2024 09:37:03 GMT) Full text and rfc822 format available.

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Thu, 13 Jun 2024 09:37:03 GMT) Full text and rfc822 format available.

Notification sent to Sughosha <sughosha <at> disroot.org>:
bug acknowledged by developer. (Thu, 13 Jun 2024 09:37:03 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#65367; Package guix-patches. (Thu, 13 Jun 2024 16:03:01 GMT) Full text and rfc822 format available.

Message #79 received at 65367-done <at> debbugs.gnu.org (full text, mbox):

From: Sughosha <sughosha <at> disroot.org>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 65369-done <at> debbugs.gnu.org, 65367-done <at> debbugs.gnu.org
Subject: Re: [bug#65367] [PATCH v4 0/4] gnu: Add stargate.
Date: Thu, 13 Jun 2024 21:31:45 +0530
On 13 June 2024 3:06:30 pm IST, "Ludovic Courtès" <ludo <at> gnu.org> wrote:
>Hi,
>
>Sughosha <sughosha <at> disroot.org> skribis:
>
>>   gnu: Add python-pymarshal.
>>   gnu: Add python-mido.
>>   gnu: Add python-wavefile.
>>   gnu: Add stargate.
>
>I applied the whole series and followed up with a patch that moves
>‘stargate-sbsms’ and ‘stargate-soundtouch’ to audio.scm.
>
>Thanks!
>
>Ludo’.

Hi Ludo, thanks for applying the patches. But does it make sence to package stargate's forks (which are modified to work with stargate), when we already have the upstream packages (both libsbms and soundtorch) packaged?




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 12 Jul 2024 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 300 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.