Subject: [bug#52113] [PATCH] gnu: Add pnmixer

From: Jaft <[email-masked]>
Date: Thu, 16 Dec 2021 21:40:09 +0000 (UTC)

> On Sunday, December 5, 2021, 02:43:27 PM CST, Nicolas Goaziou <[email-masked]> wrote: 
>
>
>
>
>
> Hello,
>
> Jaft <[email-masked]> writes:
> 
> > * gnu/packages/gtk.scm (pnmixer):Add PNMixer
>
> Thank you. Some comments follow.
>
> > +(define-public pnmixer
> > +  (let ([version "0.7.2"])
>
> Nitpick: we don't use square brackets for let. Besides, you do not need
> a binding here, you just need to hard-code it in the version field.

Bah; sorry about that. It was mentioned to me, before, and I must've forgotten to change it before I sent this out. I probably should check my other patch submissions around this time as I probably forgot for those, as well…

> Could you send an updated patch?
>
> Regards,
> -- 
> Nicolas Goaziou

Thanks a ton for looking at my patch; all updates should've been applied and I've attached the new patch to this E-mail.

* gnu/packages/gtk.scm (pnmixer): Add PNMixer
---
gnu/packages/gtk.scm | 40 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a7e5d10e10..8b3184389a 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -28,6 +28,7 @@
 ;;; Copyright © 2021 Leo Famulari <[email-masked]>
 ;;; Copyright © 2021 Simon Streit <[email-masked]>
 ;;; Copyright © 2021 Maxime Devos <[email-masked]>
+;;; Copyright © 2021 Wamm K. D. <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -52,6 +53,7 @@ (define-module (gnu packages gtk)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module ((guix build utils) #:select (alist-replace))
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
@@ -2833,3 +2835,41 @@ (define-public volctl
     ;; XXX: 'setup.py' says "GPLv2" but nothing says "version 2 only".  Is
     ;; GPLv2+ intended?
     (license license:gpl2)))
+
+(define-public pnmixer
+  (package
+    (name "pnmixer")
+    (version "0.7.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/nicklan/pnmixer/")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0416pa933ddf4b7ph9zxhk5jppkk7ppcq1aqph6xsrfnka4yb148"))))
+  (build-system cmake-build-system)
+  (arguments `(#:tests? #f))  ; no check target
+  (native-inputs
+   `(("gettext" ,gettext-minimal)
+     ("pkg-config" ,pkg-config)))
+  (inputs
+   `(("alsa-lib" ,alsa-lib)
+     ("glib" ,glib)
+     ("gtk+" ,gtk+)
+     ("libnotify" ,libnotify)
+     ("libx11" ,libx11)))
+  (home-page "https://github.com/nicklan/pnmixer/")
+  (synopsis "Simple mixer application designed to run in system tray")
+  (description "PNMixer is a simple mixer application designed to run in your
+system tray.  It integrates nicely into desktop environments that don't have a
+panel that supports applets and therefore can't run a mixer applet.  In
+particular, it's been used quite a lot with fbpanel and tint2 but should run
+fine in any system tray.
+
+PNMixer is designed to work on systems that use ALSA for sound management.  Any
+other sound driver like OSS or FFADO are, currently, not supported.  There is no
+official PulseAudio support, at the moment, but it seems that PNMixer behaves
+quite well anyway when PA is running.")
+  (license license:gpl3)))