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+)))