Subject: [PATCH] gnu: Audacity: Use glib-or-gtk-build-system instead of a wrapper.
From: Leo Famulari <[email-masked]>
To: [email-masked]
Date: Sun, 30 Sep 2018 13:11:04 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

The wrapper was added to prevent a crash when using the "open file"
dialog on foreign distros. Using the glib-or-gtk-build-system works,
too, and should be simpler to maintain in the long run. However, with
this change, the build fails unless we patch the translation Makefile.
I'm not sure why that is.

Thoughts?

* gnu/packages/audio.scm (audacity)[build-system]: Use glib-or-gtk-build-system.
[arguments]: Remove the 'wrap-program' phase and add a
'patch-translation-makefile' phase.
---
 gnu/packages/audio.scm | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 446587273..ee57f172e 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -321,7 +321,7 @@ engineers, musicians, soundtrack editors and composers.")
               ;; "sbsms"
               ))
            #t))))
-    (build-system gnu-build-system)
+    (build-system glib-or-gtk-build-system)
     (inputs
      `(("wxwidgets" ,wxwidgets)
        ("gtk+" ,gtk+)
@@ -411,14 +411,11 @@ engineers, musicians, soundtrack editors and composers.")
              (substitute* "src/prefs/MidiIOPrefs.cpp"
                (("../../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h"))
              #t))
-         (add-after 'install 'wrap-program
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (wrap-program (string-append (assoc-ref outputs "out")
-                                          "/bin/audacity")
-               ;; For GtkFileChooserDialog.
-               `("GSETTINGS_SCHEMA_DIR" =
-                 (,(string-append (assoc-ref inputs "gtk+")
-                                  "/share/glib-2.0/schemas"))))
+         (add-after 'unpack 'patch-translation-makefile
+           (lambda _
+             (substitute* "po/Makefile.in.in"
+               (("SHELL = /bin/sh")
+                (string-append "SHELL = " (which "sh"))))
              #t)))
        ;; The test suite is not "well exercised" according to the developers,
        ;; and fails with various errors.  See
-- 
2.19.0