unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#57984] [PATCH] gnu: Update zynaddsubfx to 3.0.6
@ 2022-09-21 17:21 Sughosha via Guix-patches via
  2022-09-21 17:28 ` [bug#57984] Fix typo in commit message Sughosha via Guix-patches via
                   ` (3 more replies)
  0 siblings, 4 replies; 15+ messages in thread
From: Sughosha via Guix-patches via @ 2022-09-21 17:21 UTC (permalink / raw)
  To: 57984


[-- Attachment #1.1: Type: text/plain, Size: 13 bytes --]

Empty Message

[-- Attachment #1.2: Type: text/html, Size: 24 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Update-zynaddsubfx-to-3.0.6.patch --]
[-- Type: text/x-patch; name=0001-gnu-Update-zynaddsubfx-to-3.0.6.patch, Size: 6908 bytes --]

From 77f364a304e4510baafe86f5a641bdf84952bf06 Mon Sep 17 00:00:00 2001
From: Sughosha <sughosha@proton.me>
Date: Wed, 21 Sep 2022 19:15:47 +0200
Subject: [PATCH] gnu: Update zynaddsubfx to 3.0.6

gnu/packages/music.scm (mruby-zest): New variable.

* gnu/packages/music.scm (zynaddsubfx): Update to 3.0.6.

  Upgrade to Zyn-Fusion with new UI called zest.
---
 gnu/packages/music.scm | 96 ++++++++++++++++++++++++++++++++++++++----
 1 file changed, 88 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 66b4beae0c..c9081bfb69 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -167,6 +167,7 @@ (define-module (gnu packages music)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages rsync)
+  #:use-module (gnu packages ruby)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages serialization)
   #:use-module (gnu packages sphinx)
@@ -2989,10 +2990,69 @@ (define-public vmpk
 instrument or MIDI file player.")
     (license license:gpl3+)))
 
+(define mruby-zest
+  (package
+    (name "mruby-zest")
+    (version "3.0.6")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/mruby-zest/mruby-zest-build")
+                    (commit version)
+                    (recursive? #t)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0dz4zv1km9805lji2q2qqdd8s8hgfd723dxdzcivbhm612szm1mc"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       #:make-flags `("CC=gcc" "CONFIG_SHELL=bash")
+       #:phases (modify-phases %standard-phases
+                  ;; no configure rule available
+                  (delete 'configure)
+                  ;; no install rule available
+                  (replace 'install
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (string-append (assoc-ref outputs "out")
+                                                 "/opt/zest")))
+                        (install-file "zest" out)
+                        (install-file "libzest.so" out)
+                        (install-file "mruby/bin/mruby" out)
+                        (install-file "deps/nanovg/example/entypo.ttf"
+                                      (string-append out "/font"))
+                        (install-file "deps/nanovg/example/Roboto-Bold.ttf"
+                                      (string-append out "/font"))
+                        (install-file "deps/nanovg/example/Roboto-Light.ttf"
+                                      (string-append out "/font"))
+                        (install-file "deps/nanovg/example/Roboto-Regular.ttf"
+                         (string-append out "/font"))
+                        (copy-recursively "src/mruby-zest/qml"
+                                          (string-append out "/qml"))
+                        (copy-recursively "src/mruby-zest/example"
+                                          (string-append out "/qml"))
+                        (invoke "touch"
+                                (string-append out "/qml/MainWindow.qml"))
+                        (copy-recursively "src/osc-bridge/schema"
+                                          (string-append out "/schema"))
+                        (copy-file "completions/zyn-fusion"
+                                   (string-append out "/completions"))
+                        (wrap-program (string-append out "/zest")
+                                      `("LD_LIBRARY_PATH" =
+                                        (,out)))))))))
+    (native-inputs (list ruby libuv pkg-config))
+    (inputs (list libx11 mesa bash-minimal))
+    (home-page "https://github.com/mruby-zest/mruby-zest-build")
+    (synopsis "Widget classes for the mruby-zest framework")
+    (description
+     "This repository contains all of the widgets needed to create the
+@code{zyn-fusion} user interface for ZynAddSubFX.")
+    (license license:lgpl2.1)))
+
 (define-public zynaddsubfx
   (package
     (name "zynaddsubfx")
-    (version "3.0.5")
+    (version (package-version mruby-zest))
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -3000,10 +3060,11 @@ (define-public zynaddsubfx
                     version "/zynaddsubfx-" version ".tar.bz2"))
               (sha256
                (base32
-                "0qwzg14h043rmyf9jqdylxhyfy4sl0vsr0gjql51wjhid0i34ivl"))))
+                "1bkirvcg0lz1i7ypnz3dyh218yhrqpnijxs8n3wlgwbcixvn1lfb"))))
     (build-system cmake-build-system)
     (arguments
-     `(#:phases
+     `(#:configure-flags `("-DGuiModule=zest")
+       #:phases
        (modify-phases %standard-phases
          ;; Move SSE compiler optimization flags from generic target to
          ;; athlon64 and core2 targets, because otherwise the build would fail
@@ -3014,20 +3075,39 @@ (define-public zynaddsubfx
               (("-msse -msse2 -mfpmath=sse") "")
               (("-march=(athlon64|core2)" flag)
                (string-append flag " -msse -msse2 -mfpmath=sse")))
-            #t)))))
+            #t))
+         (add-after 'install 'link-zest
+          (lambda* (#:key inputs outputs #:allow-other-keys)
+            (let ((zestdir (string-append (assoc-ref inputs
+                                                     "mruby-zest")
+                                          "/opt/zest"))
+                  (bindir (string-append (assoc-ref outputs "out")
+                                         "/bin"))
+                  (libdir (string-append (assoc-ref outputs "out")
+                                         "/lib")))
+              (symlink (string-append zestdir "/libzest.so")
+                       (string-append libdir "/libzest.so"))
+              (symlink (string-append zestdir "/zest")
+                       (string-append bindir "/zyn-fusion"))
+              (symlink (string-append zestdir "/font")
+                       (string-append libdir "/font"))
+              (symlink (string-append zestdir "/qml")
+                       (string-append libdir "/qml"))
+              (symlink (string-append zestdir "/schema")
+                       (string-append libdir "/schema"))))))))
     (inputs
      (list liblo
-           ntk
+           mruby-zest
            mesa
            alsa-lib
            jack-1
-           fftw
+           fftwf
            minixml
            libxpm
            zlib))
     (native-inputs
-     (list pkg-config))
-    (home-page "http://zynaddsubfx.sf.net/")
+     (list pkg-config ruby doxygen))
+    (home-page "https://zynaddsubfx.sourceforge.io/")
     (synopsis "Software synthesizer")
     (description
      "ZynAddSubFX is a feature heavy realtime software synthesizer.  It offers
-- 
2.37.3


^ permalink raw reply related	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2023-05-03 23:16 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-21 17:21 [bug#57984] [PATCH] gnu: Update zynaddsubfx to 3.0.6 Sughosha via Guix-patches via
2022-09-21 17:28 ` [bug#57984] Fix typo in commit message Sughosha via Guix-patches via
2022-09-28 17:21   ` [bug#57984] [PATCH] gnu: Update zynaddsubfx to 3.0.6 Maxim Cournoyer
2022-09-28 20:30 ` Maxim Cournoyer
2022-10-15 13:37   ` Sughosha via Guix-patches via
2022-10-15 14:13     ` Sughosha via Guix-patches via
2022-10-15 14:14       ` Sughosha via Guix-patches via
2022-10-24 17:02         ` Maxime Devos
2022-10-24 19:03           ` Maxime Devos
2022-10-25 13:36           ` Maxime Devos
2022-09-28 22:06 ` Maxime Devos
2022-10-26 12:04 ` Maxime Devos
2022-10-27 13:18   ` Maxim Cournoyer
2022-10-27 15:11     ` Maxime Devos
2023-05-03 23:15       ` Sughosha via Guix-patches via

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).