* [bug#36213] [PATCH 0/4] Add pulseaudio-dlna
@ 2019-06-14 19:21 Alex Griffin
2019-06-14 19:22 ` [bug#36213] [PATCH 1/4] gnu: Add python-notify2, python2-notify2 Alex Griffin
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Alex Griffin @ 2019-06-14 19:21 UTC (permalink / raw)
To: 36213
This patch series adds pulseaudio-dlna, which lets you stream audio to Chromecast and DLNA devices (like Sonos speakers).
--
Alex Griffin
^ permalink raw reply [flat|nested] 8+ messages in thread
* [bug#36213] [PATCH 1/4] gnu: Add python-notify2, python2-notify2.
2019-06-14 19:21 [bug#36213] [PATCH 0/4] Add pulseaudio-dlna Alex Griffin
@ 2019-06-14 19:22 ` Alex Griffin
2019-06-14 19:23 ` [bug#36213] [PATCH 2/4] gnu: Add python-pyroute2, python2-pyroute2 Alex Griffin
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: Alex Griffin @ 2019-06-14 19:22 UTC (permalink / raw)
To: 36213
[-- Attachment #1: Type: text/plain, Size: 26 bytes --]
attached
--
Alex Griffin
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-python-notify2-python2-notify2.patch --]
[-- Type: text/x-patch; name="0001-gnu-Add-python-notify2-python2-notify2.patch", Size: 2088 bytes --]
From d6b03487f9844f9836ac2cb877022ffaac9f53ee Mon Sep 17 00:00:00 2001
From: Alex Griffin <a@ajgrf.com>
Date: Thu, 13 Jun 2019 13:46:14 -0500
Subject: [PATCH 1/4] gnu: Add python-notify2, python2-notify2.
* gnu/packages/python-xyz.scm (python-notify2): New variable.
(python2-notify2): New variable.
---
gnu/packages/python-xyz.scm | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a7c88e9187..e07f9532ed 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -60,6 +60,7 @@
;;; Copyright © 2019 Brett Gilio <brettg@posteo.net>
;;; Copyright © 2019 Sam <smbaines8@gmail.com>
;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us>
+;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -5350,6 +5351,33 @@ implementation of D-Bus.")
;; "ValueError: unichr() arg not in range(0x10000) (narrow Python build)"
(arguments `(#:tests? #f))))
+(define-public python-notify2
+ (package
+ (name "python-notify2")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "notify2" version))
+ (sha256
+ (base32
+ "0z8rrv9rsg1r2qgh2dxj3dfj5xnki98kgi3w839kqby4a26i1yik"))))
+ (build-system python-build-system)
+ (arguments `(#:tests? #f)) ; tests depend on system state
+ (native-inputs
+ `(("python-dbus" ,python-dbus)))
+ (home-page "https://bitbucket.org/takluyver/pynotify2")
+ (synopsis "Python interface to D-Bus notifications")
+ (description
+ "notify provides a Python interface for sending D-Bus notifications.
+It is a reimplementation of pynotify in pure Python, and an alternative to
+the GObject Introspection bindings to libnotify for non-GTK applications.")
+ (license (list license:bsd-2
+ license:lgpl2.1+))))
+
+(define-public python2-notify2
+ (package-with-python2 python-notify2))
+
(define-public python-lxml
(package
(name "python-lxml")
--
2.22.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [bug#36213] [PATCH 2/4] gnu: Add python-pyroute2, python2-pyroute2.
2019-06-14 19:21 [bug#36213] [PATCH 0/4] Add pulseaudio-dlna Alex Griffin
2019-06-14 19:22 ` [bug#36213] [PATCH 1/4] gnu: Add python-notify2, python2-notify2 Alex Griffin
@ 2019-06-14 19:23 ` Alex Griffin
2019-06-14 19:27 ` [bug#36213] [PATCH 3/4] gnu: Add python2-zeroconf Alex Griffin
2019-06-14 19:28 ` [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna Alex Griffin
3 siblings, 0 replies; 8+ messages in thread
From: Alex Griffin @ 2019-06-14 19:23 UTC (permalink / raw)
To: 36213
[-- Attachment #1: Type: text/plain, Size: 26 bytes --]
attached
--
Alex Griffin
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0002-gnu-Add-python-pyroute2-python2-pyroute2.patch --]
[-- Type: text/x-patch; name="0002-gnu-Add-python-pyroute2-python2-pyroute2.patch", Size: 2110 bytes --]
From 427cfc454cba81de55985eb39dde83ab30b8c7f9 Mon Sep 17 00:00:00 2001
From: Alex Griffin <a@ajgrf.com>
Date: Thu, 13 Jun 2019 15:46:10 -0500
Subject: [PATCH 2/4] gnu: Add python-pyroute2, python2-pyroute2.
* gnu/packages/python-xyz.scm (python-pyroute2): New variable.
(python2-pyroute2): New variable.
fixup pyroute2
---
gnu/packages/python-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e07f9532ed..cceddf8f3b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -6650,6 +6650,42 @@ and MAC network addresses.")
(define-public python2-netaddr
(package-with-python2 python-netaddr))
+(define-public python-pyroute2
+ (package
+ (name "python-pyroute2")
+ (version "0.5.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyroute2" version))
+ (sha256
+ (base32
+ "1gmz4r1w0yzj6fjjypnalmfyy0lnfznydyn62gi3wk50j5hhxbny"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/svinota/pyroute2")
+ (synopsis "Python netlink library")
+ (description
+ "Pyroute2 is a pure Python netlink library with minimal dependencies.
+Supported netlink families and protocols include:
+@itemize
+@item rtnl, network settings - addresses, routes, traffic controls
+@item nfnetlink - netfilter API: ipset, nftables, ...
+@item ipq - simplest userspace packet filtering, iptables QUEUE target
+@item devlink - manage and monitor devlink-enabled hardware
+@item generic - generic netlink families
+ @itemize
+ @item nl80211 - wireless functions API (basic support)
+ @item taskstats - extended process statistics
+ @item acpi_events - ACPI events monitoring
+ @item thermal_events - thermal events monitoring
+ @item VFS_DQUOT - disk quota events monitoring
+ @end itemize
+@end itemize")
+ (license license:gpl2+)))
+
+(define-public python2-pyroute2
+ (package-with-python2 python-pyroute2))
+
(define-public python-wrapt
(package
(name "python-wrapt")
--
2.22.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [bug#36213] [PATCH 3/4] gnu: Add python2-zeroconf.
2019-06-14 19:21 [bug#36213] [PATCH 0/4] Add pulseaudio-dlna Alex Griffin
2019-06-14 19:22 ` [bug#36213] [PATCH 1/4] gnu: Add python-notify2, python2-notify2 Alex Griffin
2019-06-14 19:23 ` [bug#36213] [PATCH 2/4] gnu: Add python-pyroute2, python2-pyroute2 Alex Griffin
@ 2019-06-14 19:27 ` Alex Griffin
2019-06-14 19:28 ` [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna Alex Griffin
3 siblings, 0 replies; 8+ messages in thread
From: Alex Griffin @ 2019-06-14 19:27 UTC (permalink / raw)
To: 36213
[-- Attachment #1: Type: text/plain, Size: 204 bytes --]
This patch packages the last version of the zeroconf package to support python 2. That's also why I didn't package it for python 3, because it would be a substantially different package.
--
Alex Griffin
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0003-gnu-Add-python2-zeroconf.patch --]
[-- Type: text/x-patch; name="0003-gnu-Add-python2-zeroconf.patch", Size: 1794 bytes --]
From 37571b285637bce2ebd4a519360c81734c0a238a Mon Sep 17 00:00:00 2001
From: Alex Griffin <a@ajgrf.com>
Date: Thu, 13 Jun 2019 14:21:53 -0500
Subject: [PATCH 3/4] gnu: Add python2-zeroconf.
* gnu/packages/python-xyz.scm (python2-zeroconf): New variable.
---
gnu/packages/python-xyz.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index cceddf8f3b..23f1fe902d 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -15460,3 +15460,37 @@ by Igor Pavlov.")
(define-public python2-pylzma
(package-with-python2 python-pylzma))
+
+(define-public python2-zeroconf
+ (package
+ (name "python2-zeroconf")
+ (version "0.19.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "zeroconf" version))
+ (sha256
+ (base32
+ "0ykzg730n915qbrq9bn5pn06bv6rb5zawal4sqjyfnjjm66snkj3"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:python ,python-2
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-requires
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "setup.py"
+ (("enum-compat")
+ "enum34"))
+ #t)))))
+ (native-inputs
+ `(("python2-six" ,python2-six)
+ ("python2-enum32" ,python2-enum34)
+ ("python2-netifaces" ,python2-netifaces)
+ ("python2-typing" ,python2-typing)))
+ (home-page "https://github.com/jstasiak/python-zeroconf")
+ (synopsis "Pure Python mDNS service discovery")
+ (description
+ "Pure Python multicast DNS (mDNS) service discovery library
+(Bonjour/Avahi compatible).")
+ (license license:lgpl2.1+)))
--
2.22.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna.
2019-06-14 19:21 [bug#36213] [PATCH 0/4] Add pulseaudio-dlna Alex Griffin
` (2 preceding siblings ...)
2019-06-14 19:27 ` [bug#36213] [PATCH 3/4] gnu: Add python2-zeroconf Alex Griffin
@ 2019-06-14 19:28 ` Alex Griffin
2019-07-02 15:54 ` Ludovic Courtès
3 siblings, 1 reply; 8+ messages in thread
From: Alex Griffin @ 2019-06-14 19:28 UTC (permalink / raw)
To: 36213
[-- Attachment #1: Type: text/plain, Size: 132 bytes --]
This patch adds pulseaudio-dlna, which lets you stream audio to Chromecast and DLNA devices (like Sonos speakers).
--
Alex Griffin
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0004-gnu-Add-pulseaudio-dlna.patch --]
[-- Type: text/x-patch; name="0004-gnu-Add-pulseaudio-dlna.patch", Size: 3844 bytes --]
From 3d71a5aae006cc7a149370013d24a6c29561581e Mon Sep 17 00:00:00 2001
From: Alex Griffin <a@ajgrf.com>
Date: Thu, 13 Jun 2019 15:45:38 -0500
Subject: [PATCH 4/4] gnu: Add pulseaudio-dlna.
* gnu/packages/pulseaudio.scm (pulseaudio-dlna): New variable.
---
gnu/packages/pulseaudio.scm | 56 +++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm
index 96d15bdf9c..0dc9dc4191 100644
--- a/gnu/packages/pulseaudio.scm
+++ b/gnu/packages/pulseaudio.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
+;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,6 +28,7 @@
(define-module (gnu packages pulseaudio)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix l:)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
@@ -43,6 +45,10 @@
#:use-module (gnu packages web)
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
+ #:use-module (gnu packages protobuf)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages python-web)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xiph))
@@ -303,3 +309,53 @@ sinks.")
(description "Pulsemixer is a PulseAudio mixer with command-line and
curses-style interfaces.")
(license l:expat)))
+
+(define-public pulseaudio-dlna
+ (let ((commit "4472928dd23f274193f14289f59daec411023ab0")
+ (revision "1"))
+ (package
+ (name "pulseaudio-dlna")
+ (version (git-version "0.5.2" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/masmu/pulseaudio-dlna.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1dfn7036vrq49kxv4an7rayypnm5dlawsf02pfsldw877hzdamqk"))))
+ (build-system python-build-system)
+ (arguments `(#:python ,python-2))
+ (inputs
+ `(("python2-chardet" ,python2-chardet)
+ ("python2-dbus" ,python2-dbus)
+ ("python2-docopt" ,python2-docopt)
+ ("python2-futures" ,python2-futures)
+ ("python2-pygobject" ,python2-pygobject)
+ ("python2-lxml" ,python2-lxml)
+ ("python2-netifaces" ,python2-netifaces)
+ ("python2-notify2" ,python2-notify2)
+ ("python2-protobuf" ,python2-protobuf)
+ ("python2-psutil" ,python2-psutil)
+ ("python2-requests" ,python2-requests)
+ ("python2-pyroute2" ,python2-pyroute2)
+ ("python2-setproctitle" ,python2-setproctitle)
+ ("python2-zeroconf" ,python2-zeroconf)))
+ (home-page "https://github.com/masmu/pulseaudio-dlna")
+ (synopsis "Stream audio to DLNA / UPnP and Chromecast devices")
+ (description "A lightweight streaming server which brings DLNA / UPNP and
+Chromecast support to PulseAudio and Linux. It can stream your current
+PulseAudio playback to different UPnP devices (UPnP Media Renderers, including
+Sonos devices and some Smart TVs) or Chromecasts in your network. You should
+also install one or more of the following packages alongside pulseaudio-dlna:
+@itemize
+@item ffmpeg - transcoding support for multiple codecs
+@item flac - FLAC transcoding support
+@item lame - MP3 transcoding support
+@item opus-tools - Opus transcoding support
+@item sox - WAV transcoding support
+@item vorbis-tools - Vorbis transcoding support
+@end itemize")
+ (license l:gpl3+))))
--
2.22.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna.
2019-06-14 19:28 ` [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna Alex Griffin
@ 2019-07-02 15:54 ` Ludovic Courtès
2019-07-02 16:01 ` Alex Griffin
0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2019-07-02 15:54 UTC (permalink / raw)
To: Alex Griffin; +Cc: 36213
Hi Alex,
Overall this patch set LGTM. I have two questions:
"Alex Griffin" <a@ajgrf.com> skribis:
> +(define-public pulseaudio-dlna
> + (let ((commit "4472928dd23f274193f14289f59daec411023ab0")
> + (revision "1"))
Could you explain why you chose this commit rather than the latest
release?
> + (arguments `(#:python ,python-2))
Can it run on Python 3?
Since Python 2 is approaching EOL, we’re trying to avoid adding more
Python 2 packages. If we could remove ‘python2-’ packages from this
patch series, that’d be great; if not, so be it!
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna.
2019-07-02 15:54 ` Ludovic Courtès
@ 2019-07-02 16:01 ` Alex Griffin
2019-07-04 16:07 ` bug#36213: " Ludovic Courtès
0 siblings, 1 reply; 8+ messages in thread
From: Alex Griffin @ 2019-07-02 16:01 UTC (permalink / raw)
To: Ludovic Courtès; +Cc: 36213
Hi Ludo,
On Tue, Jul 2, 2019, at 3:54 PM, Ludovic Courtès wrote:
> > +(define-public pulseaudio-dlna
> > + (let ((commit "4472928dd23f274193f14289f59daec411023ab0")
> > + (revision "1"))
>
> Could you explain why you chose this commit rather than the latest
> release?
Honestly, I just noticed that Debian was building from git. I assumed they had a good reason, so I didn't even try the latest release from 2016.
> > + (arguments `(#:python ,python-2))
>
> Can it run on Python 3?
>
> Since Python 2 is approaching EOL, we’re trying to avoid adding more
> Python 2 packages. If we could remove ‘python2-’ packages from this
> patch series, that’d be great; if not, so be it!
No, it doesn't run on Python 3. It's actually unmaintained right now, but I'm not aware of any other free software projects that provide the same functionality.
--
Alex Griffin
^ permalink raw reply [flat|nested] 8+ messages in thread
* bug#36213: [PATCH 4/4] gnu: Add pulseaudio-dlna.
2019-07-02 16:01 ` Alex Griffin
@ 2019-07-04 16:07 ` Ludovic Courtès
0 siblings, 0 replies; 8+ messages in thread
From: Ludovic Courtès @ 2019-07-04 16:07 UTC (permalink / raw)
To: Alex Griffin; +Cc: 36213-done
Hi,
"Alex Griffin" <a@ajgrf.com> skribis:
> On Tue, Jul 2, 2019, at 3:54 PM, Ludovic Courtès wrote:
>> > +(define-public pulseaudio-dlna
>> > + (let ((commit "4472928dd23f274193f14289f59daec411023ab0")
>> > + (revision "1"))
>>
>> Could you explain why you chose this commit rather than the latest
>> release?
>
> Honestly, I just noticed that Debian was building from git. I assumed they had a good reason, so I didn't even try the latest release from 2016.
OK. There have been quite a few commits since that 2016 release, so it
probably makes sense to use the latest one.
>> > + (arguments `(#:python ,python-2))
>>
>> Can it run on Python 3?
>>
>> Since Python 2 is approaching EOL, we’re trying to avoid adding more
>> Python 2 packages. If we could remove ‘python2-’ packages from this
>> patch series, that’d be great; if not, so be it!
>
> No, it doesn't run on Python 3. It's actually unmaintained right now, but I'm not aware of any other free software projects that provide the same functionality.
OK.
I took the liberty to add some of what you wrote as comments in the
code and pushed the whole series.
Thanks!
Ludo’.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2019-07-04 16:08 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-14 19:21 [bug#36213] [PATCH 0/4] Add pulseaudio-dlna Alex Griffin
2019-06-14 19:22 ` [bug#36213] [PATCH 1/4] gnu: Add python-notify2, python2-notify2 Alex Griffin
2019-06-14 19:23 ` [bug#36213] [PATCH 2/4] gnu: Add python-pyroute2, python2-pyroute2 Alex Griffin
2019-06-14 19:27 ` [bug#36213] [PATCH 3/4] gnu: Add python2-zeroconf Alex Griffin
2019-06-14 19:28 ` [bug#36213] [PATCH 4/4] gnu: Add pulseaudio-dlna Alex Griffin
2019-07-02 15:54 ` Ludovic Courtès
2019-07-02 16:01 ` Alex Griffin
2019-07-04 16:07 ` bug#36213: " Ludovic Courtès
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.