guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#74723] [PATCH 02/19] gnu: carla: Fix making carla executable.


From: Sughosha
Subject: [bug#74723] [PATCH 02/19] gnu: carla: Fix making carla executable.
Date: Sat, 7 Dec 2024 17:50:16 +0530

This commit fixes lmms opening carla.

* gnu/packages/audio.scm (carla)[arguments]<#:phases>: In make-carla-executable
phase, also make carla-control, carla-jack-multi, carla-jack-single,
carla-patchbay and carla-rack executable. In wrap-executables phase, also wrap
the other executables and resources.

Change-Id: I529ccf91d3254bc9e20259460c24a6932654a45e
---
 gnu/packages/audio.scm | 29 ++++++++++++++++++++++++-----
 1 file changed, 24 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index f842d77031..4864f41223 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -5754,13 +5754,32 @@ (define-public carla
                    (invoke "make" "features")))
                (add-after 'install 'make-carla-executable
                  (lambda _
-                   (chmod (string-append #$output "/share/carla/carla") 
#o555)))
+                   (with-directory-excursion (string-append #$output
+                                                           "/share/carla")
+                     (for-each (lambda (file)
+                               (chmod file #o555))
+                      (list "carla"
+                            "carla-control"
+                            "carla-jack-multi"
+                            "carla-jack-single"
+                            "carla-patchbay"
+                            "carla-rack")))))
                (add-after 'install 'wrap-executables
                  (lambda* (#:key inputs #:allow-other-keys)
-                   (wrap-script (string-append #$output "/bin/carla")
-                                #:guile (search-input-file inputs "bin/guile")
-                                `("GUIX_PYTHONPATH" ":" prefix
-                                  (,(getenv "GUIX_PYTHONPATH")))))))))
+                   (with-directory-excursion #$output
+                     (for-each (lambda (file)
+                                 ;; Wrap only those executable files that other
+                                 ;; programs (e.g. lmms) would call.
+                                 (when (and (executable-file? file)
+                                            (not (symbolic-link? file))
+                                            (not (string-suffix? ".py" file)))
+                                   (wrap-script file
+                                     #:guile (search-input-file inputs
+                                                                "bin/guile")
+                                     `("GUIX_PYTHONPATH" ":" prefix
+                                       (,(getenv "GUIX_PYTHONPATH"))))))
+                    (append (find-files "bin")
+                            (find-files "share/carla/resources")))))))))
     (inputs
      (list alsa-lib
            ffmpeg
-- 
2.46.0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]