diff mbox series

[bug#58681] gnu: Add synthpod

Message ID D0Yk1G0jYgxZkFGBF0gB4894QtivLuoVpdRCHLbVBwhjvldD8HHWjjO3CZwH2rCUU_9o_Gh0hpA9brEvK2GQx-A_f2MlhTbTGWXjIK7tW-s=@proton.me
State New
Headers show
Series [bug#58681] gnu: Add synthpod | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Sughosha Oct. 21, 2022, 11:19 a.m. UTC
* gnu/packages/music.scm (synthpod): New variable.
---
 gnu/packages/music.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

--
libgit2 1.4.3

Comments

Christopher Baines Oct. 25, 2022, 9:25 a.m. UTC | #1
Sughosha via Guix-patches via <guix-patches@gnu.org> writes:

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

Hey, thanks for the patch.

> +    (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 "8273142cd702583cb3662fbe0e2fd5d4075ee703")))
> +              (sha256
> +                (base32
> +                 "120qsd090pwkc21g9a5mm0pjb0rqn1iy4rs5lx3fs0qf3wa7k6ri"))))

The linter should be telling you something about the source file not
containing the package name. I'd take a look at the file-name bit in
other package sources that also use git-fetch.

> +    (build-system meson-build-system)
> +    ;; Fontconfig error: No writable cache directories
> +    (arguments (list #:tests? #f))

The cache directory bit is a hint, as that's often within the users home
directory. The build environment uses a non-existent home directory, but
you can change that. Quite a few packages have (setenv "HOME" "/tmp")
for the tests. Adding that looks like:

    (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"))))))

If you do that though, the tests still fail, seems like there's a
missing font?

starting phase `check'
ninja: Entering directory `/tmp/guix-build-synthpod-0.1.6505.drv-0/build'
ninja: no work to do.
1/9 d2tk / Test core            OK              0.09s
2/9 d2tk / Test base            OK              0.48s
3/9 d2tk / FiraSans-Bold.ttf    FAIL            0.02s   exit status 1
>>> MALLOC_PERTURB_=67 /tmp/guix-build-synthpod-0.1.6505.drv-0/source/subprojects/d2tk/check_for_font FiraSans-Bold.ttf

4/9 d2tk / FiraCode-Light.ttf   FAIL            0.03s   exit status 1
>>> MALLOC_PERTURB_=109 /tmp/guix-build-synthpod-0.1.6505.drv-0/source/subprojects/d2tk/check_for_font FiraCode-Light.tt

5/9 d2tk / FiraCode-Regular.ttf FAIL            0.03s   exit status 1
>>> MALLOC_PERTURB_=46 /tmp/guix-build-synthpod-0.1.6505.drv-0/source/subprojects/d2tk/check_for_font FiraCode-Regular.ttf

6/9 d2tk / FiraCode-Medium.ttf  FAIL            0.02s   exit status 1
>>> MALLOC_PERTURB_=41 /tmp/guix-build-synthpod-0.1.6505.drv-0/source/subprojects/d2tk/check_for_font FiraCode-Medium.ttf

7/9 d2tk / FiraCode-Bold.ttf    FAIL            0.02s   exit status 1
>>> MALLOC_PERTURB_=10 /tmp/guix-build-synthpod-0.1.6505.drv-0/source/subprojects/d2tk/check_for_font FiraCode-Bold.ttf

8/9 synthpod / LV2 validate     OK              0.07s
9/9 synthpod / LV2 validate     OK              0.07s

Summary of Failures:

3/9 d2tk / FiraSans-Bold.ttf    FAIL            0.02s   exit status 1
4/9 d2tk / FiraCode-Light.ttf   FAIL            0.03s   exit status 1
5/9 d2tk / FiraCode-Regular.ttf FAIL            0.03s   exit status 1
6/9 d2tk / FiraCode-Medium.ttf  FAIL            0.02s   exit status 1
7/9 d2tk / FiraCode-Bold.ttf    FAIL            0.02s   exit status 1


Ok:                 4   
Expected Fail:      0   
Fail:               5   
Unexpected Pass:    0   
Skipped:            0   
Timeout:            0
diff mbox series

Patch

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 6b37c79..6ff2c99 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -173,6 +173,7 @@ 
   #: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)
@@ -3456,6 +3457,50 @@  analogue-like user interface.")
 socket or command line.")
       (license license:gpl3+))))

+(define-public synthpod
+  (package
+    (name "synthpod")
+    (version "0.1.6505")
+    (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 "8273142cd702583cb3662fbe0e2fd5d4075ee703")))
+              (sha256
+                (base32
+                 "120qsd090pwkc21g9a5mm0pjb0rqn1iy4rs5lx3fs0qf3wa7k6ri"))))
+    (build-system meson-build-system)
+    ;; Fontconfig error: No writable cache directories
+    (arguments (list #:tests? #f))
+    (inputs (list alsa-lib
+                  cairo
+                  eudev
+                  freetype
+                  fontconfig
+                  glew
+                  glu
+                  jack-1
+                  libevdev
+                  libinput
+                  libvterm
+                  lilv
+                  lv2
+                  pixman
+                  sratom
+                  xcb-util
+                  xcb-util-wm
+                  xcb-util-xrm
+                  zita-alsa-pcmi))
+    (native-inputs (list ;lv2lint     ; needed for tests
+                         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"))