Subject: [PATCH v2] gnu: Add synthpod.

From: Sughosha <[email-masked]>
Date: Fri, 06 Jan 2023 14:27:08 +0000

Sorry for the delay. Here is the fix with tests enabled and updated to newer version.

* gnu/packages/music.scm (synthpod): New public variable.
---
 gnu/packages/music.scm | 54 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 54 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 5be767a138..3d0722274c 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -174,6 +174,7 @@ (define-module (gnu packages music)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages stb)
   #:use-module (gnu packages tcl)
+  #:use-module (gnu packages terminals)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tex)
   #:use-module (gnu packages time)
@@ -3517,6 +3518,59 @@ (define-public mod-host
 socket or command line.")
       (license license:gpl3+))))
 
+(define-public synthpod
+  (package
+    (name "synthpod")
+    (version "0.1.6507")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://git.open-music-kontrollers.ch/lv2/synthpod")
+                     ;; Version is not tagged but mentioned in VERSION file.
+                     (commit "6e84a075ea8fea95094dcbc2b30f968717a81960")))
+              (file-name (git-file-name name version))
+              (sha256
+                (base32
+                 "1chazkdxjgjzfxqmlk4ywhilkj9l3bybd9xghjg9r67df2diqhbs"))))
+    (build-system meson-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-before 'check 'fix-home-directory
+            (lambda _
+              ;; Tests fail with: Fontconfig error: No writable cache
+              ;; directories
+              (setenv "HOME" "/tmp"))))))
+    (propagated-inputs (list lilv)) ;required for lv2info
+    (inputs (list alsa-lib
+                  cairo
+                  eudev
+                  freetype
+                  font-fira-code
+                  font-fira-sans
+                  fontconfig
+                  glew
+                  glu
+                  jack-1
+                  libevdev
+                  libinput
+                  libvterm
+                  lv2
+                  pixman
+                  sratom
+                  xcb-util
+                  xcb-util-wm
+                  xcb-util-xrm
+                  zita-alsa-pcmi))
+    (native-inputs (list pkg-config))
+    (home-page "https://open-music-kontrollers.ch/lv2/synthpod/")
+    (synopsis "Nonlinear LV2 plugin container")
+    (description
+     "Synthpod is an LV2 host.  It can be run as a standalone app and be used
+as a tool for live performances or general audio and event filtering.")
+    (license (list license:artistic2.0 license:gpl3+))))
+
 (define-public curseradio
   (let ((commit "1bd4bd0faeec675e0647bac9a100b526cba19f8d")
         (revision "1"))
-- 
2.38.1