diff mbox series

bug#56668: [PATCH] gnu: Add wavbreaker

Message ID 87iln5dryo.fsf_-_@gnu.org
State Accepted
Headers show
Series bug#56668: [PATCH] gnu: Add wavbreaker | expand

Commit Message

Ludovic Courtès Aug. 6, 2022, 8:42 p.m. UTC
Hi Joeke,

Joeke de Graaf <joeke@posteo.net> skribis:

> I've modified my patch to make wavbreaker work in pure environments.
>
> The only thing I haven't been able to fix is the program's own icon in
> Gnome's activity overview (the overview of open programs one gets when
> one presses the super key).
> If wavbreaker is run in a pure environment, this icon does not show
> up. Otherwise, the program seems to run fine.

Sounds good.  Applied with the formatting changes below: keeping inputs
fields next to one another, avoiding long lines, replacing tabulations
with spaces (as suggested by ‘guix lint’), and removing extra space from
the description.  I also added a commit log that follows our
conventions¹.

Thank you, and thanks Maxime for reviewing!

Ludo’.

¹ https://guix.gnu.org/manual/devel/en/html_node/Submitting-Patches.html
diff mbox series

Patch

diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 406ebb9233..e2b112832b 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -752,55 +752,64 @@  (define-public wavbreaker
     (name "wavbreaker")
     (version "0.15")
     (source (origin
-	      (method git-fetch)
-	      (uri (git-reference
-		    (url "https://github.com/thp/wavbreaker/")
-		    (commit version)))
-	      (file-name (git-file-name name version))
-	      (sha256
-	       (base32 "16h0sfcb8av6a368giizzwv9m0lq5c3bnf4b9vyyh9nkbbsc7c3j"))))
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/thp/wavbreaker/")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32 "16h0sfcb8av6a368giizzwv9m0lq5c3bnf4b9vyyh9nkbbsc7c3j"))))
     (build-system meson-build-system)
-    (native-inputs
-     (list pkg-config cmake))
     (arguments
      '(#:modules
        ((guix build utils)
-	(guix build meson-build-system))
+        (guix build meson-build-system))
 
        #:phases
        (modify-phases %standard-phases
-	 (add-after 'install 'wrap-program
-	   ;; This wrapping is necessary to make wavbreaker find things it needs in pure environments
-	   (lambda* (#:key inputs outputs #:allow-other-keys)
-	     (let ((out (assoc-ref outputs "out"))
-		   (adwaita-icons (assoc-ref inputs "adwaita-icon-theme"))
-		   (hicolor-icons (assoc-ref inputs "hicolor-icon-theme"))
-		   (shared-mime (assoc-ref inputs "shared-mime-info")))
-	       (wrap-program (string-append out "/bin/wavbreaker")
-		 ;; Needed in order for wavbreakere to find the icons it needs
-		 `("XDG_DATA_DIRS" ":" prefix ,(map (lambda (package)
-                                                      (string-append package
-                                                                     "/share"))
-                                                    `(,out ;; For wavbreaker's icon
-                                                      ,adwaita-icons
-                                                      ,hicolor-icons
-                                                      ,shared-mime)))
-		 ;; This is necessary to load some pixbufs like Adwaita's check-symbolic.svg
-		 ;; and wavbreaker's own logo in the 'about' section
-		 `("GDK_PIXBUF_MODULE_FILE" =
-		   (,(getenv "GDK_PIXBUF_MODULE_FILE")))
-		 ;; Needed for GTK's file chooser to not crash
-		 `("GSETTINGS_SCHEMA_DIR" =
+         (add-after 'install 'wrap-program
+           ;; This wrapping is necessary to make wavbreaker find things it
+           ;; needs in pure environments.
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (adwaita-icons (assoc-ref inputs "adwaita-icon-theme"))
+                   (hicolor-icons (assoc-ref inputs "hicolor-icon-theme"))
+                   (shared-mime (assoc-ref inputs "shared-mime-info")))
+               (wrap-program (string-append out "/bin/wavbreaker")
+                 ;; Needed in order for wavbreakere to find the icons it needs
+                 `("XDG_DATA_DIRS" ":" prefix
+                   ,(map (lambda (package)
+                           (string-append package "/share"))
+                         `(,out                   ;for wavbreaker's icon
+                           ,adwaita-icons
+                           ,hicolor-icons
+                           ,shared-mime)))
+                 ;; This is necessary to load some pixbufs like Adwaita's
+                 ;; check-symbolic.svg and wavbreaker's own logo in the
+                 ;; 'about' section.
+                 `("GDK_PIXBUF_MODULE_FILE" =
+                   (,(getenv "GDK_PIXBUF_MODULE_FILE")))
+                 ;; Needed for GTK's file chooser to not crash.
+                 `("GSETTINGS_SCHEMA_DIR" =
                  (,(string-append (assoc-ref inputs "gtk+")
                                   "/share/glib-2.0/schemas"))))))))))
-    (inputs (list glib gtk+ ao bash-minimal adwaita-icon-theme shared-mime-info hicolor-icon-theme gsettings-desktop-schemas))
+    (native-inputs
+     (list pkg-config cmake))
+    (inputs
+     (list glib
+           gtk+
+           ao
+           bash-minimal
+           adwaita-icon-theme
+           shared-mime-info
+           hicolor-icon-theme
+           gsettings-desktop-schemas))
     (home-page "https://wavbreaker.sourceforge.io/")
     (synopsis "WAV and MP3 file splitter with a GUI")
     (description
-     "Wavbreaker is a WAV and MP3 file splitter.  It can be used to
-  break up a WAV or MP3 audio file into multiple WAV files.
-  Wavbreaker contains a helpful waveform display of the audio file
-  being edited, to help the user in splitting the file at the right
-  point.  Wavbreaker also supports splitting MP3 files without
-  re-encoding them, to preserve their original audio quality.")
+     "Wavbreaker is a WAV and MP3 file splitter.  It can be used to break up a
+WAV or MP3 audio file into multiple WAV files.  Wavbreaker contains a helpful
+waveform display of the audio file being edited, to help the user in splitting
+the file at the right point.  Wavbreaker also supports splitting MP3 files
+without re-encoding them, to preserve their original audio quality.")
     (license license:gpl2+)))