From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms1.migadu.com with LMTPS id ME9SJNGKYGYFVQAAqHPOHw:P1 (envelope-from ) for ; Wed, 05 Jun 2024 17:57:05 +0200 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id ME9SJNGKYGYFVQAAqHPOHw (envelope-from ) for ; Wed, 05 Jun 2024 17:57:05 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=disroot.org header.s=mail header.b=hS8mmyG6; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1717603025; a=rsa-sha256; cv=none; b=sElB26MJ9tyP6nRkLLLLuztj9hit9Hbl+kYsrgF0nQHcStu4dirr1f1DQejtW0q+sR15Kh qEuPXXtlOWZPrWKt0QjYtJ/dHw4MguBCAy/iaU+Xl2E8JZE1MNbGjBJA2nlwKSS0VtIVKk FPy6xvxt9KlL2QFW/iwYRgKkVUKcrvjPuhnkOVYV8Wg2tmF6t4Bh9nHN4gTDq0O5eS66WN OPQo6n6l77KzZuE6QiUrTTfiZA+pmYzX2z7xPV+0j2JgF1XuDJ5pAT8fJEl2Z74QZ7Ko43 tAlgjFledts0cZixfyvWjspD4h9W4Z2dHe48wBkwJJXBk7woZLHXAN5ju+x6UA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=disroot.org header.s=mail header.b=hS8mmyG6; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1717603025; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=blC5fk91hmkPguxBX7Oy5/BKqyc8OH5cL1gGQAe0sOo=; b=AEkY8SjjR9aHWrhb1QnVkqsMgE64qv8jpPjLj62e1uIFFTVnLrOA10wx0DgjnnpECEXRJz 6NKwYbvLdBN7OsJuP6rVNzZFgGpJdGu1fs0vMen8bQe0LO+nDULIz+3jMPs3kHFMCtKmu9 opuuqo1hVJNtEkdVP+ZsIzf+zpPJ8g1sNBHF348T0WCAxHTqzKuaGOsnp90pUHA4kiHyF6 UYKorqnipDVTs1ePMZcj63FHfUWCWgMOV5vkoSHjkeeQRo8wK+6KGVENtDdudop3s5sghp ynB5UvAydB9LDSrcQYknJ5rVxpm1UdmwHhgv2hEHgJqu3NiRiX27xz0PBa9DkQ== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6ABCC128B5 for ; Wed, 5 Jun 2024 17:57:05 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sEt0L-0003Cl-OH; Wed, 05 Jun 2024 11:56:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sEt0K-0003Bx-5t for guix-patches@gnu.org; Wed, 05 Jun 2024 11:56:48 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sEt0J-0006SF-TA for guix-patches@gnu.org; Wed, 05 Jun 2024 11:56:47 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sEt0X-0004yo-TT for guix-patches@gnu.org; Wed, 05 Jun 2024 11:57:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65367] [PATCH v4 4/4] gnu: Add stargate. Resent-From: Sughosha Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 05 Jun 2024 15:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 65367 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65367@debbugs.gnu.org Cc: Sughosha Received: via spool by 65367-submit@debbugs.gnu.org id=B65367.171760296818976 (code B ref 65367); Wed, 05 Jun 2024 15:57:01 +0000 Received: (at 65367) by debbugs.gnu.org; 5 Jun 2024 15:56:08 +0000 Received: from localhost ([127.0.0.1]:44513 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sEszf-0004vn-Fo for submit@debbugs.gnu.org; Wed, 05 Jun 2024 11:56:08 -0400 Received: from layka.disroot.org ([178.21.23.139]:58092) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sEszb-0004un-Q8 for 65367@debbugs.gnu.org; Wed, 05 Jun 2024 11:56:04 -0400 Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 373CE41AC8; Wed, 5 Jun 2024 17:55:49 +0200 (CEST) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id HPsR9xeP9ehF; Wed, 5 Jun 2024 17:55:47 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1717602947; bh=vjKLjrRiGbwU+SIfDdz44RaELpGdqr47h3HwQrEm5KY=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=hS8mmyG6qoSXCdCgzLYKtabINMOkHxWkh9e2jyxeMyH2KkhGHTUfThk5XIsDiPEMu T5sXA7F6TriPeUiSAKOp51LDOiByOVpwSay5ir0bDhfrAWzNJZb5YSXm+n9+ogeCYw L7nGSL0Nv8zMrIvtaM4lYKFKCiKz3O+fB8IXjB6+40MzzEkbIaA7EiT1pMSXjuxHE9 MaEfnRyl7TmoAU6haE5GHbK399k9k6DyN2MAA0MR41p6iwvBdCj4Eh7BYmNwoxjVsr jiWEThGZ3fikqtTULFrQOK/kvJwqAUGxc10f4SRiwxH26MGNR6j9dOZ+U64i9XtDbJ nryIQm+eDMEOg== Date: Wed, 5 Jun 2024 21:22:11 +0530 Message-ID: <97fc842e0440b37f5fee11206b95bb4e772c0206.1717602731.git.sughosha@disroot.org> In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Sughosha X-ACL-Warn: , Sughosha via Guix-patches From: Sughosha via Guix-patches via Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: 6ABCC128B5 X-Migadu-Scanner: mx12.migadu.com X-Migadu-Spam-Score: -6.34 X-Spam-Score: -6.34 X-TUID: zNptpywFcZ8L * 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