diff mbox series

[bug#48027] gnu: Add volctl.

Message ID yguy2cs8als.fsf@netpanic.org
State Accepted
Headers show
Series [bug#48027] gnu: Add volctl. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Simon Streit May 6, 2021, 9:39 a.m. UTC
Hi Ludovic,

Ludovic Courtès <ludo@gnu.org> writes:
>> +    (source (origin
>> +              (method url-fetch)
>> +              (uri (string-append "https://github.com/buzz/" name
>> +                                  "/archive/v" version ".tar.gz"))
>> +              (sha256
>> +               (base32
>> +                "1xanqn6s2i6s2n6wysvgz6l58lsdkl3zmzz4hccla01gx7h4yx4f"))))
>
> To placate ‘guix lint’, could you (1) use ‘git-fetch’ instead of
> referring to an autogenerated tarball, and (2) add a ‘file-name’ field
> as done elsewhere?

Thanks for your reply.  I was using guix lint, but there I wasn't quite sure
how to it the correct way.  Yes, looking at other definitions I simply
copied it from there.  The linter is quiet now.  Thanks for your tip!

> Could you send an updated patch?

Applied the suggestions.  Please find the updated patch as attachment.
I'm well chuffed having this posted now.


Cheers,
Simon

Comments

Ludovic Courtès May 8, 2021, 12:48 p.m. UTC | #1
Hi Simon,

Simon Streit <simon@netpanic.org> skribis:

> From 64730108ee4900836637fe2b37619652e2252606 Mon Sep 17 00:00:00 2001
> From: Simon Streit <simon@netpanic.org>
> Date: Thu, 6 May 2021 11:22:08 +0200
> Subject: [PATCH] gnu: Add volctl.
>
> * gnu/packages/gtk.scm (volctl): New Variable.

Applied, thanks!

I followed up with a comment: it’s not clear to me whether it’s
GPLv2-only or GPLv2-or-any-later-version, given that ‘setup.py’ just
says GPLv2.  Thoughts?

Ludo’.
Simon Streit May 8, 2021, 10:30 p.m. UTC | #2
Ludovic Courtès <ludo@gnu.org> writes:
> Applied, thanks!

Thanks as well! 

> I followed up with a comment: it’s not clear to me whether it’s
> GPLv2-only or GPLv2-or-any-later-version, given that ‘setup.py’ just
> says GPLv2.  Thoughts?

I was wondering this as well, and concluded that the auther is simply
using v2 [1]. Nothing else is stated. 

We might just leave it as it is for the time being?


Cheers! 

[1] https://github.com/buzz/volctl/blob/master/LICENSE.txt
Ludovic Courtès May 10, 2021, 7:58 a.m. UTC | #3
Hi,

Simon Streit <simon@netpanic.org> skribis:

> Ludovic Courtès <ludo@gnu.org> writes:
>> Applied, thanks!
>
> Thanks as well! 
>
>> I followed up with a comment: it’s not clear to me whether it’s
>> GPLv2-only or GPLv2-or-any-later-version, given that ‘setup.py’ just
>> says GPLv2.  Thoughts?
>
> I was wondering this as well, and concluded that the auther is simply
> using v2 [1]. Nothing else is stated. 
>
> We might just leave it as it is for the time being?

Yes, sounds good.

Thanks,
Ludo’.
diff mbox series

Patch

From 64730108ee4900836637fe2b37619652e2252606 Mon Sep 17 00:00:00 2001
From: Simon Streit <simon@netpanic.org>
Date: Thu, 6 May 2021 11:22:08 +0200
Subject: [PATCH] gnu: Add volctl.

* gnu/packages/gtk.scm (volctl): New Variable.
---
 gnu/packages/gtk.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 542e274ce3..6d32b70458 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -26,6 +26,7 @@ 
 ;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
 ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -90,6 +91,7 @@ 
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages pulseaudio)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
   #:use-module (ice-9 match))
@@ -2371,3 +2373,47 @@  linear or logarithmic scales, as dots or lines, with markers/labels) as well as
 user interaction (e.g.  measuring distances).")
     (home-page "https://sourceforge.net/projects/gtkdatabox/")
     (license license:lgpl2.1+)))
+
+(define-public volctl
+  (package
+    (name "volctl")
+    (version "0.8.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference (url "https://github.com/buzz/volctl")
+                                  (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1cx27j83pz2qffnzb85fbl1x6pp3irv1kbw7g1hri7kaw6ky4xiz"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((pulse (assoc-ref inputs "pulseaudio"))
+                   (xfixes (assoc-ref inputs "libxfixes")))
+               (substitute* "volctl/lib/xwrappers.py"
+                 (("libXfixes.so")
+                  (string-append xfixes "/lib/libXfixes.so")))
+               (substitute* "volctl/lib/pulseaudio.py"
+                 (("libpulse.so.0")
+                  (string-append pulse "/lib/libpulse.so.0")))
+               #t))))))
+    (inputs
+     `(("gtk+" ,gtk+)
+       ("libxfixes" ,libxfixes)
+       ("pulseaudio" ,pulseaudio)))
+    (propagated-inputs
+     `(("python-click" ,python-click)
+       ("python-pycairo" ,python-pycairo)
+       ("python-pygobject" ,python-pygobject)
+       ("python-pyyaml" ,python-pyyaml)))
+    (home-page "https://buzz.github.io/volctl/")
+    (synopsis "Per-application volume control and on-screen display (OSD) for graphical desktops")
+    (description "Volctl is a PulseAudio-enabled tray icon volume control and
+OSD applet for graphical desktops.  It's not meant to be an replacement for a
+full-featured mixer application.  If you're looking for that check out the
+excellent pavucontrol.")
+    (license license:gpl2)))
-- 
2.31.1