Subject: [bug#41911] [PATCH 2/5] gnu: k3b: Add inputs for external programs.

From: Timotej Lazar <[email-masked]>
Date: Wed, 17 Jun 2020 12:50:05 +0200

* gnu/packages/kde-multimedia.scm (k3b)[inputs]: Add cdrdao, dvd+rw-tools,
libburn and sox.
[arguments]<#:phases>[wrap-path]: New phase to wrap the binary with paths to
the above.
---
 gnu/packages/kde-multimedia.scm | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm
index 938251a532..654aecd858 100644
--- a/gnu/packages/kde-multimedia.scm
+++ b/gnu/packages/kde-multimedia.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2017, 2019 Hartmut Goebel <[email-masked]>
+;;; Copyright © 2020 Timotej Lazar <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -296,12 +297,26 @@ This package is part of the KDE multimedia module.")
        (sha256
         (base32 "0r01ninrrmqk7pl5jg0g51fcky1ammw0yyq572wyhibw7q8y7ly7"))))
     (build-system qt-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'qt-wrap 'wrap-path
+           (lambda _
+             ;; Set paths to backend programs.
+             (wrap-program (string-append (assoc-ref %outputs "out") "/bin/k3b")
+               `("PATH" ":" prefix
+                 ,(map (lambda (input)
+                         (string-append (assoc-ref %build-inputs input) "/bin"))
+                       '("cdrdao" "dvd+rw-tools" "libburn" "sox"))))
+             #t)))))
     (native-inputs
      `(("extra-cmake-modules" ,extra-cmake-modules)
        ("pkg-config" ,pkg-config)
        ("kdoctools" ,kdoctools)))
     (inputs
-     `(("ffmpeg" ,ffmpeg)
+     `(("cdrdao" ,cdrdao)
+       ("dvd+rw-tools" ,dvd+rw-tools)
+       ("ffmpeg" ,ffmpeg)
        ("flac" ,flac)
        ("karchive" ,karchive)
        ("kcmutils" ,kcmutils)
@@ -319,6 +334,7 @@ This package is part of the KDE multimedia module.")
        ("kwidgetsaddons" ,kwidgetsaddons)
        ("kxmlgui" ,kxmlgui)
        ("lame" ,lame)
+       ("libburn" ,libburn)
        ("libdvdread" ,libdvdread)
        ;; TODO: LibFuzzer
        ("libiconv" ,libiconv)
@@ -334,6 +350,7 @@ This package is part of the KDE multimedia module.")
        ("qtwebkit" ,qtwebkit)
        ("shared-mime-info" ,shared-mime-info)
        ("solid" ,solid)
+       ("sox" ,sox)
        ("taglib" ,taglib)))
     (home-page "https://kde.org/applications/multimedia/org.kde.k3b")
     (synopsis "Sophisticated CD/DVD burning application")
-- 
2.26.2