GNU bug report logs - #66870
[PATCH 0/6] Add yabridge.

Previous Next

Package: guix-patches;

Reported by: Sughosha <sughosha <at> disroot.org>

Date: Wed, 1 Nov 2023 09:09:02 UTC

Severity: normal

Tags: patch

Full log


View this message in rfc822 format

From: Sughosha <sughosha <at> disroot.org>
To: Gabriel Wicki <gabriel <at> erlikon.ch>
Cc: Sughosha <sughosha <at> disroot.org>, 66870 <at> debbugs.gnu.org, Gabriel Wicki <gabriel <at> erlikon.ch>
Subject: [bug#66870] [PATCH v6 11/11] gnu: Add yabridgectl.
Date: Thu, 28 Nov 2024 22:45:14 +0530
* gnu/packages/audio.scm (yabridgectl): New variable.

Change-Id: Ide287422cff7d6641a2d732de0e4f4b3ae784f76
---
 gnu/packages/audio.scm | 63 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 444c0d0659..517334198d 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -81,6 +81,7 @@ (define-module (gnu packages audio)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cpp)
+  #:use-module (gnu packages crates-io)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages dbm)
   #:use-module (gnu packages documentation)
@@ -154,6 +155,7 @@ (define-module (gnu packages audio)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system copy)
   #:use-module (guix build-system glib-or-gtk)
@@ -6851,3 +6853,64 @@ (define-public yabridge
 were native plugins, with optional support for plugin groups to enable
 inter-plugin communication for VST2 plugins and quick startup times.")
     (license license:gpl3+)))
+
+(define-public yabridgectl
+  (package/inherit yabridge
+    (name "yabridgectl")
+    (source (origin
+              (inherit (package-source yabridge))
+              (modules '((guix build utils)))
+              (snippet
+               ;; Use reflink from the system istead of git.
+               `(substitute* "tools/yabridgectl/Cargo.toml"
+                  (("reflink = .*$")
+                   (string-append "reflink = \""
+                                  ,(package-version rust-reflink-0.1)
+                                  "\"\n"))))))
+    (build-system cargo-build-system)
+    (arguments
+     (list #:cargo-inputs
+           `(("rust-anyhow" ,rust-anyhow-1)
+             ("rust-clap" ,rust-clap-4)
+             ("rust-colored" ,rust-colored-2)
+             ("rust-is-executable" ,rust-is-executable-1)
+             ("rust-goblin" ,rust-goblin-0.6)
+             ("rust-libloading" ,rust-libloading-0.7)
+             ("rust-promptly" ,rust-promptly-0.3)
+             ("rust-rayon" ,rust-rayon-1)
+             ("rust-reflink" ,rust-reflink-0.1)
+             ("rust-serde" ,rust-serde-1)
+             ("rust-serde-derive" ,rust-serde-derive-1)
+             ("rust-serde-jsonrc" ,rust-serde-jsonrc-0.1)
+             ("rust-textwrap" ,rust-textwrap-0.16)
+             ("rust-toml" ,rust-toml-0.5)
+             ("rust-walkdir" ,rust-walkdir-2)
+             ("rust-which" ,rust-which-4)
+             ("rust-xdg" ,rust-xdg-2))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'change-directory
+                (lambda _
+                  (chdir "tools/yabridgectl")))
+               (add-after 'change-directory 'patch-paths
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (with-directory-excursion "src"
+                     (substitute* '("config.rs" "main.rs")
+                       (("/usr") (assoc-ref inputs "yabridge"))))))
+               (add-after 'install 'wrap-program
+                (lambda* (#:key inputs #:allow-other-keys)
+                  (wrap-program (string-append #$output "/bin/yabridgectl")
+                    `("LD_LIBRARY_PATH" ":" prefix
+                      (,(string-append (assoc-ref inputs "yabridge") "/lib")
+                       ,(string-append (assoc-ref inputs "dbus") "/lib")))
+                    `("PATH" ":" prefix
+                      (,(string-append (assoc-ref inputs "yabridge")
+                                                         "/bin")))))))))
+    (native-inputs '())
+    (inputs
+     (list bash-minimal dbus))
+    (propagated-inputs
+     (list yabridge))
+    (synopsis "Utility to set up and update yabridge")
+    (description
+     "@command{yabridgectl} is a tool to setup and update @code{yabridge}.")))
-- 
2.46.0





This bug report was last modified 201 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.