Hello Guix devs, Apologies, I forgot to `--annotate` the git send-email, the following patch adds the jack-mixer application to the `(gnu packages audio)`. It's a python package built with meson, I've tested it with my system and it is deterministic. Let me know if any changes need to be done. P.S: CC me, since I'm not subscribed to the mailing list. Regards, On 8 November 2024 00:01:01 GMT, Divya Ranjan wrote: >--- > gnu/packages/audio.scm | 68 ++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 68 insertions(+) > >diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm >index 467dc4a74f..70477d1071 100644 >--- a/gnu/packages/audio.scm >+++ b/gnu/packages/audio.scm >@@ -79,6 +79,7 @@ (define-module (gnu packages audio) > #:use-module (gnu packages check) > #:use-module (gnu packages cdrom) > #:use-module (gnu packages compression) >+ #:use-module (gnu packages commencement) > #:use-module (gnu packages cpp) > #:use-module (gnu packages curl) > #:use-module (gnu packages dbm) >@@ -160,6 +161,7 @@ (define-module (gnu packages audio) > #:use-module (guix build-system python) > #:use-module (guix build-system trivial) > #:use-module (guix build-system waf) >+ #:use-module (guix build utils) > #:use-module (guix download) > #:use-module (guix gexp) > #:use-module (guix git-download) >@@ -2772,6 +2774,72 @@ (define-public jacktrip > audio signal streaming.") > (license (list license:gpl3+ license:lgpl3 license:expat)))) > >+(define-public jack-mixer >+ (package >+ (name "jack-mixer") >+ (version "19") >+ (source >+ (origin >+ (method git-fetch) >+ (uri (git-reference >+ (url "https://github.com/jack-mixer/jack_mixer") >+ (commit (string-append "release-" version)))) >+ (sha256 >+ (base32 "18m6a9asbwaslw418i2w04kgc6jgdpw01i3kawdqy903kw66hnhj")))) >+ (build-system meson-build-system) >+ (arguments >+ (list >+ #:build-type "release" >+ #:phases #~(modify-phases %standard-phases >+ ;; Replaces hardcoded path with /gnu/store >+ (add-after 'unpack 'path-patch >+ (lambda _ >+ (substitute* '("meson.build") >+ (("'/', 'etc', 'xdg'") >+ (string-append "'" >+ #$output "'"))))) >+ >+ ;; To wrap the paths for python and GTK >+ (add-after 'install 'wrap-path >+ (lambda* (#:key outputs #:allow-other-keys) >+ (let* ((out (assoc-ref outputs "out")) >+ (bin (string-append out "/bin/")) >+ (gi-typelib-path (getenv "GI_TYPELIB_PATH")) >+ (version #$(version-major+minor (package-version >+ (this-package-input >+ "python")))) >+ (lib (string-append out "/lib/python" version >+ "/site-packages"))) >+ (wrap-program (string-append bin "jack_mixer") >+ `("GUIX_PYTHONPATH" ":" prefix >+ (,(getenv "GUIX_PYTHONPATH") ,lib)) >+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))))))) >+ (native-inputs >+ (list gcc-toolchain >+ pkg-config >+ python-cython >+ python-docutils >+ gnu-gettext >+ glib)) >+ (propagated-inputs >+ (list gtk+ >+ `(,gtk+ "bin") ;; Required during runtime. >+ python >+ bash-minimal >+ python-wrapper >+ python-pygobject >+ python-pycairo >+ python-platformdirs ;; Required to save sessions. >+ jack-2)) >+ (synopsis >+ "JACK Mixer: A multi-channel audio mixer for the JACK Audio Connection Kit") >+ (description >+ "The jack_mixer is a GTK+ JACK audio mixer app with a look & handling >+similar to hardware mixing desks. It has lot of useful features, apart >+from being able to mix multiple JACK audio streams.") >+ (home-page "https://rdio.space/jackmixer/") >+ (license license:gpl2+))) >+ > (define-public jalv > (package > (name "jalv") >-- >2.46.0 > Divya Ranjan, Mathematics, Philosophy and Libre Software