GNU bug report logs - #39292
[PATCH 0/10] gnu: Add rapid-photo-downloader

Previous Next

Package: guix-patches;

Reported by: sschott <at> mailbox.org

Date: Sun, 26 Jan 2020 15:59:01 UTC

Severity: normal

Tags: patch

Done: Christopher Baines <mail <at> cbaines.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 39292 in the body.
You can then email your comments to 39292 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 15:59:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to sschott <at> mailbox.org:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sun, 26 Jan 2020 15:59:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: sschott <at> mailbox.org
To: "guix-patches <at> gnu.org" <guix-patches <at> gnu.org>
Subject: [PATCH 0/10] gnu: Add rapid-photo-downloader
Date: Sun, 26 Jan 2020 11:07:45 +0100 (CET)
[Message part 1 (text/html, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:01 GMT) Full text and rfc822 format available.

Message #8 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 01/10] gnu: Add python-pymediainfo
Date: Sun, 26 Jan 2020 18:24:28 +0100
* gnu/packages/python-xyz.scm (python-pymediainfo): New variable.
---
 gnu/packages/python-xyz.scm | 41 +++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2c308796e7..9f5cb20095 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -166,6 +166,47 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-pymediainfo
+  (package
+    (name "python-pymediainfo")
+    (version "4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pymediainfo" version))
+       (sha256
+        (base32
+         "0mhpxs7vlqx8w75z93dy7nnvx89kwfdjkla03l19an15rlyqyspd"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-setuptools-scm" ,python-setuptools-scm)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-runner" ,python-pytest-runner)))
+    (inputs
+     `(("libmediainfo" ,libmediainfo)))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'patch-libmediainfo
+                    (lambda _
+                      (substitute* "pymediainfo/__init__.py"
+                        (("libmediainfo.so.0")
+                         (string-append (assoc-ref %build-inputs "libmediainfo")
+                                        "/lib/libmediainfo.so.0")))))
+                  (replace 'check
+                    (lambda _
+                      ;; Extend PYTHONPATH so the built package will be found.
+                      (setenv "PYTHONPATH"
+                              (string-append (getcwd) "/build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-vv" "-k" "not test_parse_url"))))))
+    (home-page
+     "https://github.com/sbraz/pymediainfo")
+    (synopsis
+     "Python wrapper for the mediainfo library")
+    (description
+     "Python wrapper for the mediainfo library to access the technical and tag data for video and audio files.")
+    (license license:expat)))
+
 (define-public python-psutil
   (package
     (name "python-psutil")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:01 GMT) Full text and rfc822 format available.

Message #11 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 02/10] gnu: Add python-easygui
Date: Sun, 26 Jan 2020 18:24:29 +0100
* gnu/packages/python-xyz.scm (python-easygui): New variable.
---
 gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 9f5cb20095..1592c6b511 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -68,6 +68,7 @@
 ;;; Copyright © 2019 Wiktor Żelazny <wzelazny <at> vurv.cz>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy <at> bioneland.org>
 ;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu <at> mdc-berlin.de>
+;;; Copyright © 2020 Sebastian Schott <sschott <at> mailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -166,6 +167,24 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-easygui
+  (package
+    (name "python-easygui")
+    (version "0.98.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "easygui" version))
+              (sha256
+               (base32
+                "1zmvmwgxyzvm83818skhn8b4wrci4kmnixaax8q3ia5cn7xrmj6v"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-tkinter" ,python "tk")))
+    (home-page "https://github.com/robertlugg/easygui")
+    (synopsis "GUI programming module for Python")
+    (description "EasyGUI is a module for very simple, very easy GUI programming in Python.  EasyGUI is different from other GUI generators in that EasyGUI is NOT event-driven.  Instead, all GUI interactions are invoked by simple function calls.")
+    (license license:bsd-3)))
+
 (define-public python-pymediainfo
   (package
     (name "python-pymediainfo")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:02 GMT) Full text and rfc822 format available.

Message #14 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 05/10] gnu: Add python-colour
Date: Sun, 26 Jan 2020 18:24:32 +0100
* gnu/packages/python-xyz.scm (python-colour): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 67cde2af5c..22f316a0a6 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -168,6 +168,24 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-colour
+  (package
+    (name "python-colour")
+    (version "0.1.5")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "colour" version))
+              (sha256
+               (base32
+                "1visbisfini5j14bdzgs95yssw6sm4pfzyq1n3lfvbyjxw7i485g"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-d2to1" ,python-d2to1)))
+    (home-page "https://github.com/vaab/colour")
+    (synopsis "Convert and manipulate various color representations")
+    (description "Pythonic way to manipulate color representations (HSL, RVB, web, X11, ...).")
+    (license license:expat)))
+
 (define-public python-d2to1
   (package
     (name "python-d2to1")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:02 GMT) Full text and rfc822 format available.

Message #17 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 03/10] gnu: Add python-rawkit
Date: Sun, 26 Jan 2020 18:24:30 +0100
* gnu/packages/python-xyz.scm (python-rawkit): New variable.
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 1592c6b511..7c4b0495fa 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -126,6 +126,7 @@
   #:use-module (gnu packages openstack)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-check)
@@ -167,6 +168,26 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-rawkit
+  (package
+    (name "python-rawkit")
+    (version "0.6.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "rawkit" version))
+              (sha256
+               (base32
+                "0vrhrpr70i61y5q5ysk341x1539ff1q1k82g59zq69lv16s0f76s"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("libraw" ,libraw)
+       ("python-pytest" ,python-pytest)
+       ("python-mock" ,python-mock)))
+    (home-page "https://rawkit.readthedocs.io/en/v0.6.0/")
+    (synopsis "Ctypes-based LibRaw binding for Python")
+    (description "The rawkit package provides two modules:  rawkit and libraw.  The rawkit module provides a high-level Pythonic interface for developing raw photos, while the libraw module provides a CTypes based interface for interacting with the low-level LibRaw C APIs.")
+    (license license:expat)))
+
 (define-public python-easygui
   (package
     (name "python-easygui")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:03 GMT) Full text and rfc822 format available.

Message #20 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 06/10] gnu: Add python-gphoto2
Date: Sun, 26 Jan 2020 18:24:33 +0100
* gnu/packages/python-xyz.scm (python-gphoto2): New variable.
---
 gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 22f316a0a6..d0ad983b81 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -168,6 +168,25 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-gphoto2
+  (package
+    (name "python-gphoto2")
+    (version "2.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "gphoto2" version))
+              (sha256
+               (base32
+                "1fdmlyy3lbc6ggfn60fjizaz5icxd676y7gz9nzfy3l4id7mfyk4"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("libgphoto2" ,libgphoto2)))
+    (home-page "https://github.com/jim-easterbrook/python-gphoto2")
+    (synopsis "Python interface to libgphoto2")
+    (description "@code{python-gphoto2} is a comprehensive Python interface (or binding) to @code{libgphoto2}.  It is built using @code{SWIG} to automatically generate the interface code.")
+    (license license:gpl3+)))
+
 (define-public python-colour
   (package
     (name "python-colour")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:03 GMT) Full text and rfc822 format available.

Message #23 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 08/10] gnu: Add python-colorlog
Date: Sun, 26 Jan 2020 18:24:35 +0100
* gnu/packages/python-xyz.scm (python-colorlog): New variable.
---
 gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 56be634201..979db8be21 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -168,6 +168,33 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-colorlog
+  (package
+    (name "python-colorlog")
+    (version "4.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "colorlog" version))
+              (sha256
+               (base32
+                "1lpk8zmfv8vz090h5d0hzb4n39wgasxdd3x3bpn3v1x1n9dfzaih"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      ;; Extend PYTHONPATH so the built package will be found.
+                      (setenv "PYTHONPATH"
+                              (string-append (getcwd) "/build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-p" "no:logging"))))))
+    (home-page "https://github.com/borntyping/python-colorlog")
+    (synopsis "Log formatting with colors for python")
+    (description "The @code{colorlog.ColoredFormatter} is a formatter for use with Python's logging module that outputs records using terminal colors.")
+    (license license:expat)))
+
 (define-public python-pyprind
   (package
     (name "python-pyprind")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:03 GMT) Full text and rfc822 format available.

Message #26 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 07/10] gnu: Add python-pyprind
Date: Sun, 26 Jan 2020 18:24:34 +0100
* gnu/packages/python-xyz.scm (python-pyprind): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index d0ad983b81..56be634201 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -168,6 +168,24 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-pyprind
+  (package
+    (name "python-pyprind")
+    (version "2.11.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "PyPrind" version))
+              (sha256
+               (base32
+                "0xg6m5hr33h9bdlrr42kc58jm2m87a9zsagy7n2m4n407d2snv64"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-psutil" ,python-psutil)))
+    (home-page "https://github.com/rasbt/pyprind")
+    (synopsis "Python Progress Bar and Percent Indicator Utility")
+    (description "The PyPrind (Python Progress Indicator) module provides a progress bar and a percentage indicator object that let you track the progress of a loop structure or other iterative computation.")
+    (license license:bsd-3)))
+
 (define-public python-gphoto2
   (package
     (name "python-gphoto2")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:04 GMT) Full text and rfc822 format available.

Message #29 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 09/10] gnu: Add python-tenacity
Date: Sun, 26 Jan 2020 18:24:36 +0100
* gnu/packages/python-xyz.scm (python-tenacity): 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 979db8be21..141c81dcf4 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -168,6 +168,34 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-tenacity
+  (package
+    (name "python-tenacity")
+    (version "6.0.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "tenacity" version))
+              (sha256
+               (base32
+                "0w9miqmmi63yqp9lw7p6nf6gh5pa57vg60v6f94f11qqpg19gwvj"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-setuptools-scm" ,python-setuptools-scm)
+       ("python-sphinx" ,python-sphinx)
+       ("python-tornado" ,python-tornado)
+       ("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-six" ,python-six)))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (invoke "pytest"))))))
+    (home-page "https://github.com/jd/tenacity")
+    (synopsis "Retrying library for python")
+    (description "Tenacity is a general-purpose python library to simplify the task of adding retry behavior to just about anything.")
+    (license license:asl2.0)))
+
 (define-public python-colorlog
   (package
     (name "python-colorlog")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:04 GMT) Full text and rfc822 format available.

Message #32 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 04/10] gnu: Add python-d2to1
Date: Sun, 26 Jan 2020 18:24:31 +0100
* gnu/packages/python-xyz.scm (python-d2to1): New variable.
---
 gnu/packages/python-xyz.scm | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 7c4b0495fa..67cde2af5c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -168,6 +168,24 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-d2to1
+  (package
+    (name "python-d2to1")
+    (version "0.2.12.post1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "d2to1" version))
+              (sha256
+               (base32
+                "09fq7pq1z8d006xh5z75rm2lk61v6yn2xhy53z4gsgibhqb2vvs9"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-nose" ,python-nose)))
+    (home-page "https://github.com/embray/d2to1")
+    (synopsis "Allows for distutils2-like setup.cfg files as package metadata in python")
+    (description "The python package d2to1 (the d is for distutils) allows using distutils2-like setup.cfg files for a package's metadata with a distribute/setuptools setup.py script.")
+    (license license:bsd-2)))
+
 (define-public python-rawkit
   (package
     (name "python-rawkit")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 26 Jan 2020 17:26:05 GMT) Full text and rfc822 format available.

Message #35 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sun, 26 Jan 2020 18:24:37 +0100
* gnu/packages/photo.scm (rapid-photo-downloader): New variable.
---
 gnu/packages/photo.scm | 69 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 69 insertions(+)

diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index 0867433245..91c0d0e6a4 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2017 Roel Janssen <roel <at> gnu.org>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2018 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2020 Sebastian Schott <sschott <at> mailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,6 +27,7 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
+  #:use-module (guix build-system python)
   #:use-module (guix download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
@@ -37,12 +39,15 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
+  #:use-module (gnu packages file)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages graphics)
+  #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
@@ -55,10 +60,14 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages popt)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tex)
+  #:use-module (gnu packages time)
+  #:use-module (gnu packages video)
   #:use-module (gnu packages web)
   #:use-module (gnu packages wxwidgets)
   #:use-module (gnu packages xfig)
@@ -67,6 +76,66 @@
   #:use-module ((srfi srfi-1) #:hide (zip))
   #:use-module (srfi srfi-26))
 
+(define-public rapid-photo-downloader
+  (package
+    (name "rapid-photo-downloader")
+    (version "0.9.18")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://launchpad.net/rapid/pyqt/"
+                                  version "/+download/" name "-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "15p7sssg6vmqbm5xnc4j5dr89d7gl7y5qyq44a240yl5aqkjnybw"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("file" ,file)
+       ("intltool" ,intltool)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("gexiv2" ,gexiv2)
+       ("gobject-introspection" ,gobject-introspection)
+       ("gst-libav" ,gst-libav)
+       ("gst-plugins-base" ,gst-plugins-base)
+       ("gst-plugins-good" ,gst-plugins-good)
+       ("gstreamer" ,gstreamer)
+       ("libgudev" ,libgudev)
+       ("libnotify" ,libnotify)
+       ("libmediainfo" ,libmediainfo)
+       ("usdisks" ,udisks)))
+    (propagated-inputs
+     `(("python-pyqt" ,python-pyqt)
+       ("python-pygobject" ,python-pygobject)
+       ("python-gphoto2" ,python-gphoto2)
+       ("python-pyzmq" ,python-pyzmq)
+       ("python-tornado" ,python-tornado)
+       ("python-psutil" ,python-psutil)
+       ("python-pyxdg" ,python-pyxdg)
+       ("python-arrow" ,python-arrow)
+       ("python-dateutil" ,python-dateutil)
+       ("python-easygui" ,python-easygui)
+       ("python-colour" ,python-colour)
+       ("python-pymediainfo" ,python-pymediainfo)
+       ("python-sortedcontainers" ,python-sortedcontainers)
+       ("python-rawkit" ,python-rawkit)
+       ("python-requests" ,python-requests)
+       ("python-colorlog" ,python-colorlog)
+       ("python-pyprind" ,python-pyprind)
+       ("python-tenacity" ,python-tenacity)))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'patch-libmediainfo
+                    (lambda _
+                      (substitute* "raphodo/metadatavideo.py"
+                        (("pymedia_library_file = 'libmediainfo.so.0'")
+                         (string-append "pymedia_library_file = '"
+                                        (assoc-ref %build-inputs "libmediainfo")
+                                        "/lib/libmediainfo.so.0'"))))))))
+    (home-page "https://www.damonlynch.net/rapid/")
+    (synopsis "Import photos and videos from cameras, phones and memory cards")
+    (description "Import photos and videos from cameras, phones and memory cards and generate meaningful file and folder names.")
+    (license license:gpl2+)))
+
 (define-public libraw
   (package
     (name "libraw")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Mon, 27 Jan 2020 08:36:02 GMT) Full text and rfc822 format available.

Message #38 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: Sebastian Schott <sschott <at> mailbox.org>
Cc: 39292 <at> debbugs.gnu.org
Subject: Re: [bug#39292] [PATCH 01/10] gnu: Add python-pymediainfo
Date: Mon, 27 Jan 2020 08:35:43 +0000
[Message part 1 (text/plain, inline)]
Sebastian Schott <sschott <at> mailbox.org> writes:

> * gnu/packages/python-xyz.scm (python-pymediainfo): New variable.
> ---
>  gnu/packages/python-xyz.scm | 41 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 2c308796e7..9f5cb20095 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -166,6 +166,47 @@
>    #:use-module (srfi srfi-1)
>    #:use-module (srfi srfi-26))
>
> +(define-public python-pymediainfo
> +  (package
> +    (name "python-pymediainfo")
> +    (version "4.1")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (pypi-uri "pymediainfo" version))
> +       (sha256
> +        (base32
> +         "0mhpxs7vlqx8w75z93dy7nnvx89kwfdjkla03l19an15rlyqyspd"))))
> +    (build-system python-build-system)
> +    (native-inputs
> +     `(("python-setuptools-scm" ,python-setuptools-scm)
> +       ("python-pytest" ,python-pytest)
> +       ("python-pytest-runner" ,python-pytest-runner)))
> +    (inputs
> +     `(("libmediainfo" ,libmediainfo)))
> +    (arguments
> +     `(#:phases (modify-phases %standard-phases
> +                  (add-after 'unpack 'patch-libmediainfo
> +                    (lambda _
> +                      (substitute* "pymediainfo/__init__.py"
> +                        (("libmediainfo.so.0")
> +                         (string-append (assoc-ref %build-inputs "libmediainfo")
> +                                        "/lib/libmediainfo.so.0")))))

There's a convention of phases returning #t (I think), so it would be
good to just put #t at the end of this phase.

> +                  (replace 'check
> +                    (lambda _
> +                      ;; Extend PYTHONPATH so the built package will be found.
> +                      (setenv "PYTHONPATH"
> +                              (string-append (getcwd) "/build/lib:"
> +                                             (getenv "PYTHONPATH")))
> +                      (invoke "pytest" "-vv" "-k" "not
> test_parse_url"))))))

Here, is the "not test_parse_url" bit taken from the upstream source, or
does it have significance for the Guix package?

Also, if the only reason the check phase doesn't work is the PYTHONPATH,
you could always do something like:

  (add-before 'check 'set-PYTHONPATH
    (lambda _
      ;; Extend PYTHONPATH so the built package will be found.
      (setenv "PYTHONPATH"
              (string-append (getcwd) "/build/lib:"
                             (getenv "PYTHONPATH")))
      #t))

> +    (home-page
> +     "https://github.com/sbraz/pymediainfo")
> +    (synopsis
> +     "Python wrapper for the mediainfo library")
> +    (description
> +     "Python wrapper for the mediainfo library to access the
> technical and tag data for video and audio files.")

This line is a bit too long, not in terms of the value, but in terms of
how it's represented in the source code. Running guix lint on this
package should tell you this.

This is also true for some other new packages added in other patches in
this series, there's a list here [1].

1: https://guix-patches-data.cbaines.net/compare?base_commit=3cb8cb666069804551148b9c49ebaea6b3a9973e&target_commit=cf6f9c3d5d13c37af3852734778ec11b26ac8d4b

Thanks,

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Mon, 27 Jan 2020 08:41:01 GMT) Full text and rfc822 format available.

Message #41 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: guix-patches <at> gnu.org
Cc: 39292 <at> debbugs.gnu.org, Sebastian Schott <sschott <at> mailbox.org>
Subject: Re: [bug#39292] [PATCH 03/10] gnu: Add python-rawkit
Date: Mon, 27 Jan 2020 08:39:56 +0000
[Message part 1 (text/plain, inline)]
Sebastian Schott <sschott <at> mailbox.org> writes:

> * gnu/packages/python-xyz.scm (python-rawkit): New variable.
> ---
>  gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 1592c6b511..7c4b0495fa 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -126,6 +126,7 @@
>    #:use-module (gnu packages openstack)
>    #:use-module (gnu packages pcre)
>    #:use-module (gnu packages perl)
> +  #:use-module (gnu packages photo)
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages python-check)
> @@ -167,6 +168,26 @@
>    #:use-module (srfi srfi-1)
>    #:use-module (srfi srfi-26))
>
> +(define-public python-rawkit
> +  (package
> +    (name "python-rawkit")
> +    (version "0.6.0")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "rawkit" version))
> +              (sha256
> +               (base32
> +                "0vrhrpr70i61y5q5ysk341x1539ff1q1k82g59zq69lv16s0f76s"))))
> +    (build-system python-build-system)
> +    (native-inputs
> +     `(("libraw" ,libraw)

This might need to be an input, rather than a native-input. The
distinction is important for cross-compilation, as at that point, the
architecture for native-inputs matches where the build is taking place,
but the architecture for inputs matches the target architecture.

The distinction is also just useful to track what's needed at runtime,
rather than just build time, and I'm guessing libraw is required at
runtime.

> +       ("python-pytest" ,python-pytest)
> +       ("python-mock" ,python-mock)))
> +    (home-page "https://rawkit.readthedocs.io/en/v0.6.0/")

Maybe tweak this to not be version dependent (if possible).

> +    (synopsis "Ctypes-based LibRaw binding for Python")
> +    (description "The rawkit package provides two modules:  rawkit
> and libraw.  The rawkit module provides a high-level Pythonic
> interface for developing raw photos, while the libraw module provides
> a CTypes based interface for interacting with the low-level LibRaw C
> APIs.")

This line is too long, could you split the description across multiple
lines.

> +    (license license:expat)))
> +
>  (define-public python-easygui
>    (package
>      (name "python-easygui")
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Mon, 27 Jan 2020 08:41:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Mon, 27 Jan 2020 08:42:01 GMT) Full text and rfc822 format available.

Message #47 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: Re: [bug#39292] [PATCH 06/10] gnu: Add python-gphoto2
Date: Mon, 27 Jan 2020 08:40:59 +0000
[Message part 1 (text/plain, inline)]
Sebastian Schott <sschott <at> mailbox.org> writes:

> * gnu/packages/python-xyz.scm (python-gphoto2): New variable.
> ---
>  gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 22f316a0a6..d0ad983b81 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -168,6 +168,25 @@
>    #:use-module (srfi srfi-1)
>    #:use-module (srfi srfi-26))
>
> +(define-public python-gphoto2
> +  (package
> +    (name "python-gphoto2")
> +    (version "2.1.0")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "gphoto2" version))
> +              (sha256
> +               (base32
> +                "1fdmlyy3lbc6ggfn60fjizaz5icxd676y7gz9nzfy3l4id7mfyk4"))))
> +    (build-system python-build-system)
> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)
> +       ("libgphoto2" ,libgphoto2)))

libgphoto2 probably wants to be in the inputs section, as I'm guessing
it's used at runtime (not just when the package is being built).

> +    (home-page "https://github.com/jim-easterbrook/python-gphoto2")
> +    (synopsis "Python interface to libgphoto2")
> +    (description "@code{python-gphoto2} is a comprehensive Python interface (or binding) to @code{libgphoto2}.  It is built using @code{SWIG} to automatically generate the interface code.")
> +    (license license:gpl3+)))
> +
>  (define-public python-colour
>    (package
>      (name "python-colour")
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Mon, 27 Jan 2020 08:50:01 GMT) Full text and rfc822 format available.

Message #50 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Mon, 27 Jan 2020 08:49:11 +0000
[Message part 1 (text/plain, inline)]
Sebastian Schott <sschott <at> mailbox.org> writes:

> * gnu/packages/photo.scm (rapid-photo-downloader): New variable.
> ---
>  gnu/packages/photo.scm | 69 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 69 insertions(+)

...

So I've managed to build this package on my system, which is a good
start :)

> +(define-public rapid-photo-downloader
> +  (package
> +    (name "rapid-photo-downloader")
> +    (version "0.9.18")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://launchpad.net/rapid/pyqt/"
> +                                  version "/+download/" name "-"
> +                                  version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "15p7sssg6vmqbm5xnc4j5dr89d7gl7y5qyq44a240yl5aqkjnybw"))))
> +    (build-system python-build-system)
> +    (native-inputs
> +     `(("file" ,file)
> +       ("intltool" ,intltool)
> +       ("gdk-pixbuf" ,gdk-pixbuf)
> +       ("gexiv2" ,gexiv2)
> +       ("gobject-introspection" ,gobject-introspection)
> +       ("gst-libav" ,gst-libav)
> +       ("gst-plugins-base" ,gst-plugins-base)
> +       ("gst-plugins-good" ,gst-plugins-good)
> +       ("gstreamer" ,gstreamer)
> +       ("libgudev" ,libgudev)
> +       ("libnotify" ,libnotify)
> +       ("libmediainfo" ,libmediainfo)
> +       ("usdisks" ,udisks)))

If any of these packages above are used at runtime, move them to the
inputs section.

> +    (propagated-inputs
> +     `(("python-pyqt" ,python-pyqt)
> +       ("python-pygobject" ,python-pygobject)
> +       ("python-gphoto2" ,python-gphoto2)
> +       ("python-pyzmq" ,python-pyzmq)
> +       ("python-tornado" ,python-tornado)
> +       ("python-psutil" ,python-psutil)
> +       ("python-pyxdg" ,python-pyxdg)
> +       ("python-arrow" ,python-arrow)
> +       ("python-dateutil" ,python-dateutil)
> +       ("python-easygui" ,python-easygui)
> +       ("python-colour" ,python-colour)
> +       ("python-pymediainfo" ,python-pymediainfo)
> +       ("python-sortedcontainers" ,python-sortedcontainers)
> +       ("python-rawkit" ,python-rawkit)
> +       ("python-requests" ,python-requests)
> +       ("python-colorlog" ,python-colorlog)
> +       ("python-pyprind" ,python-pyprind)
> +       ("python-tenacity" ,python-tenacity)))

So I'm guessing this works, but one alternative to making all these
packages propagated inputs, is to wrap the relevant executables in the
package with specific environment variables.

This has some advantages, as it doesn't require pushing all these
packages in to the users profile, and often it means you can run the
package directly from the store, without having to install it in to a
profile.

Take a look at the package for Rhythmbox as an example [1].

1: http://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/gnome.scm#n5035

> +    (arguments
> +     `(#:phases (modify-phases %standard-phases
> +                  (add-after 'unpack 'patch-libmediainfo
> +                    (lambda _
> +                      (substitute* "raphodo/metadatavideo.py"
> +                        (("pymedia_library_file = 'libmediainfo.so.0'")
> +                         (string-append "pymedia_library_file = '"
> +                                        (assoc-ref %build-inputs "libmediainfo")
> +                                        "/lib/libmediainfo.so.0'"))))))))
> +    (home-page "https://www.damonlynch.net/rapid/")
> +    (synopsis "Import photos and videos from cameras, phones and memory cards")
> +    (description "Import photos and videos from cameras, phones and memory cards and generate meaningful file and folder names.")
> +    (license license:gpl2+)))
> +
>  (define-public libraw
>    (package
>      (name "libraw")

Thanks for sending these patches :)

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 02 Feb 2020 09:38:01 GMT) Full text and rfc822 format available.

Message #53 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <s.schott <at> mailbox.org>
To: "39292 <at> debbugs.gnu.org" <39292 <at> debbugs.gnu.org>
Cc: "mail <at> cbaines.net" <mail <at> cbaines.net>
Subject: Re: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sun, 2 Feb 2020 10:36:17 +0100 (CET)
[Message part 1 (text/html, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 02 Feb 2020 10:12:01 GMT) Full text and rfc822 format available.

Message #56 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: Sebastian Schott <s.schott <at> mailbox.org>
Cc: "39292 <at> debbugs.gnu.org" <39292 <at> debbugs.gnu.org>
Subject: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sun, 02 Feb 2020 11:11:16 +0100
[Message part 1 (text/plain, inline)]
Sebastian Schott <s.schott <at> mailbox.org> writes:

> Hi Chris,
>
> thank you very much for your suggestions and explanations (somehow
> your messages did not reach my mail inbox). Now I got some work to do,
> but I am not quite sure on how to proceed. Should I step back in my
> local git history, apply the corrections and resend the patches or can
> I just go on and patch my patches? I guess everything should go to the
> initial bug tracking number?

Hi Sebastian,

Sorry for the email issues, I had an issue with my mailserver, but it
should be fixed now.

The way you've split your changes across commits is good, so ideally
just tweak the commits. If you're familiar with interactive rebasing in
Git, you can use that to make the changes.

Don't worry too much about it though, it's the end result that's the
most important. Once you've had a go at iterating the patches, just send
them again to the bug email address.

Just let me know if you have any questions :)

Thanks,

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 23 Feb 2020 16:59:02 GMT) Full text and rfc822 format available.

Message #59 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <s.schott <at> mailbox.org>
To: "39292 <at> debbugs.gnu.org" <39292 <at> debbugs.gnu.org>
Cc: Christopher Baines <mail <at> cbaines.net>
Subject: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sun, 23 Feb 2020 11:40:10 +0100 (CET)
Hi Chris,

you are right, some libraries I added in native-inputs of rapid-photo-downloader cause trouble, e.g., I got "ValueError: Namespace Notify not available", when I try to start the program. This is a bit confusing, because before committing, I successfully tested this, but maybe I manually installed these libraries and therefore had no "clean" testing environment.

Now, I experimented a bit with native-inputs, inputs and propagated-inputs and managed to start the program, when I install it with the code at the end of this mail (./pre-inst-env guix install rapid-photo-downloader). When I just build the program and cd into the store folder to run it, I still got the "notify error" (./pre-inst-env guix build rapid-photo-downloader --> cd /gnu/store/.../bin --> ./rapid-photo-downloader). This makes sense, because without installing the program, also the propagated-inputs are not installed.

What is the recommended way to test a program without interfering with the current user profile, but still considering propagated-inputs?

You mentioned inputs are used for libraries required at runtime. Now I wonder, why I need to put libnotify, libgudev, usdisks and gexiv2 into the propagated-inputs to avoid errors like "ValueError: Namespace Notify not available"?


Best,

Sebastian


(define-public rapid-photo-downloader
  (package
    (name "rapid-photo-downloader")
    (version "0.9.18")
    (source (origin
              (method url-fetch)
              (uri (string-append "https://launchpad.net/rapid/pyqt/"
                                  version "/+download/" name "-"
                                  version ".tar.gz"))
              (sha256
               (base32
                "15p7sssg6vmqbm5xnc4j5dr89d7gl7y5qyq44a240yl5aqkjnybw"))))
    (build-system python-build-system)
    (native-inputs
     `(("file" ,file)
       ("intltool" ,intltool)
       ))
    (inputs
     `(("gdk-pixbuf" ,gdk-pixbuf)
;       ("gexiv2" ,gexiv2)
       ("gobject-introspection" ,gobject-introspection) ;
       ("gst-libav" ,gst-libav)
       ("gst-plugins-base" ,gst-plugins-base)
       ("gst-plugins-good" ,gst-plugins-good)
       ("gstreamer" ,gstreamer)
;       ("libgudev" ,libgudev)
;       ("libnotify" ,libnotify)
       ("libmediainfo" ,libmediainfo)
;       ("usdisks" ,udisks)
       ))
    (propagated-inputs
     `(("python-pyqt" ,python-pyqt)
       ("python-pygobject" ,python-pygobject)
       ("python-gphoto2" ,python-gphoto2)
       ("python-pyzmq" ,python-pyzmq)
       ("python-tornado" ,python-tornado)
       ("python-psutil" ,python-psutil)
       ("python-pyxdg" ,python-pyxdg)
       ("python-arrow" ,python-arrow)
       ("python-dateutil" ,python-dateutil)
       ("python-easygui" ,python-easygui)
       ("python-colour" ,python-colour)
       ("python-pymediainfo" ,python-pymediainfo)
       ("python-sortedcontainers" ,python-sortedcontainers)
       ("python-rawkit" ,python-rawkit)
       ("python-requests" ,python-requests)
       ("python-colorlog" ,python-colorlog)
       ("python-pyprind" ,python-pyprind)
       ("python-tenacity" ,python-tenacity)
       ("perl-image-exiftool" ,perl-image-exiftool)
       ("libnotify" ,libnotify)
       ("libgudev" ,libgudev)	
       ("usdisks" ,udisks)
       ("gexiv2" ,gexiv2)
       ))
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         (add-after 'unpack 'patch-libmediainfo
           (lambda _
             (substitute* "raphodo/metadatavideo.py"
               (("pymedia_library_file = 'libmediainfo.so.0'")
                (string-append "pymedia_library_file = '"
                               (assoc-ref %build-inputs "libmediainfo")
                               "/lib/libmediainfo.so.0'")))
             #t))
         )))
    (home-page "https://www.damonlynch.net/rapid/")
    (synopsis "Import photos and videos from cameras, phones and memory cards")
    (description "Import photos and videos from cameras, phones and memory
cards and generate meaningful file and folder names.")
    (license license:gpl2+)))




Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Mon, 24 Feb 2020 20:38:01 GMT) Full text and rfc822 format available.

Message #62 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: Sebastian Schott <s.schott <at> mailbox.org>
Cc: "39292 <at> debbugs.gnu.org" <39292 <at> debbugs.gnu.org>
Subject: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sun, 23 Feb 2020 16:55:22 +0000
[Message part 1 (text/plain, inline)]
Sebastian Schott <s.schott <at> mailbox.org> writes:

> Hi Chris,
>
> you are right, some libraries I added in native-inputs of
> rapid-photo-downloader cause trouble, e.g., I got "ValueError:
> Namespace Notify not available", when I try to start the program. This
> is a bit confusing, because before committing, I successfully tested
> this, but maybe I manually installed these libraries and therefore had
> no "clean" testing environment.
>
> Now, I experimented a bit with native-inputs, inputs and
> propagated-inputs and managed to start the program, when I install it
> with the code at the end of this mail (./pre-inst-env guix install
> rapid-photo-downloader). When I just build the program and cd into the
> store folder to run it, I still got the "notify error" (./pre-inst-env
> guix build rapid-photo-downloader --> cd /gnu/store/.../bin -->
> ./rapid-photo-downloader). This makes sense, because without
> installing the program, also the propagated-inputs are not installed.
>
> What is the recommended way to test a program without interfering with
> the current user profile, but still considering propagated-inputs?

Probably using guix environment --ad-hoc, although to set up the right
search paths, you'll need to also include some other packages in the
environment.

Propagated inputs with search paths are great for things like plugins,
and programming language libraries, but for improved reliability and
compatibility, they should be avoided for applications like Rapid Photo
Downloader.

> You mentioned inputs are used for libraries required at runtime. Now I
> wonder, why I need to put libnotify, libgudev, usdisks and gexiv2 into
> the propagated-inputs to avoid errors like "ValueError: Namespace
> Notify not available"?

Probably because of a search path like GI_TYPELIB_PATH. I've taken an
earlier version of your patch, and tweaked it [1] so that I can start
the application directly from the store (running [2]).

1: https://git.cbaines.net/guix/commit/?h=series-2725-tweaked&id=85613884ac9c4122460923aaf1e28ef13aab49df
2: /gnu/store/6ssz223fy59cpz3582jd3xqva49m9w8n-rapid-photo-downloader-0.9.18/bin/rapid-photo-downloader

If you take a look at that file [2], you'll see it's a bash script,
which sets a number of environment variables. This comes from the
wrap-program call in the patch [1].

Now using wrap-program is not an ideal technique, but what I think this
approach does provide is that it reduces the chance of other things in
your profile breaking rapid-photo-downloader, and it also means that you
can install another application that also uses a common dependency, but
has a different version of it, or a patched version, without running in
to difficulties combining both packages in to one profile.

Does that make sense?

Thanks,

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:10:02 GMT) Full text and rfc822 format available.

Message #65 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <s.schott <at> mailbox.org>
To: Christopher Baines <mail <at> cbaines.net>
Cc: "39292 <at> debbugs.gnu.org" <39292 <at> debbugs.gnu.org>
Subject: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sat, 7 Mar 2020 16:09:01 +0100 (CET)
Hi Chris,

thank you for the "guix environment --ad-hoc" hint and for implementing the wrapping technique. I revised all commits regarding to your suggestions and will upload the new patches soon.


Best,

Sebastian




Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:02 GMT) Full text and rfc822 format available.

Message #68 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 01/10] gnu: Add python-pymediainfo
Date: Sat,  7 Mar 2020 16:11:37 +0100
* gnu/packages/python-xyz.scm (python-pymediainfo): New variable.
---
 gnu/packages/python-xyz.scm | 46 +++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index bd107f9648..c1f1c7fa0e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -70,6 +70,7 @@
 ;;; Copyright © 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu <at> mdc-berlin.de>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba <at> kadziolka.net>
 ;;; Copyright © 2020 sirgazil <sirgazil <at> zoho.com>
+;;; Copyright © 2020 Sebastian Schott <sschott <at> mailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -170,6 +171,51 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-pymediainfo
+  (package
+    (name "python-pymediainfo")
+    (version "4.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pymediainfo" version))
+       (sha256
+        (base32
+         "0mhpxs7vlqx8w75z93dy7nnvx89kwfdjkla03l19an15rlyqyspd"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-setuptools-scm" ,python-setuptools-scm)
+       ("python-pytest" ,python-pytest)))
+    (inputs
+     `(("libmediainfo" ,libmediainfo)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-libmediainfo
+           (lambda _
+             (substitute* "pymediainfo/__init__.py"
+               (("libmediainfo.so.0")
+                (string-append (assoc-ref %build-inputs "libmediainfo")
+                               "/lib/libmediainfo.so.0")))
+             #t))
+         (replace 'check
+           (lambda _
+             ;; Extend PYTHONPATH so the built package will be found.
+             (setenv "PYTHONPATH"
+                     (string-append (getcwd) "/build/lib:"
+                                    (getenv "PYTHONPATH")))
+             ;; Skip the only failing test "test_parse_url"
+             (invoke "pytest" "-vv" "-k" "not test_parse_url")
+             #t)))))
+    (home-page
+     "https://github.com/sbraz/pymediainfo")
+    (synopsis
+     "Python wrapper for the mediainfo library")
+    (description
+     "Python wrapper for the mediainfo library to access the technical and tag
+data for video and audio files.")
+    (license license:expat)))
+
 (define-public python-psutil
   (package
     (name "python-psutil")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:02 GMT) Full text and rfc822 format available.

Message #71 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 02/10] gnu: Add python-easygui
Date: Sat,  7 Mar 2020 16:11:38 +0100
* gnu/packages/python-xyz.scm (python-easygui): New variable.
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index c1f1c7fa0e..17581c9304 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -171,6 +171,27 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-easygui
+  (package
+    (name "python-easygui")
+    (version "0.98.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "easygui" version))
+              (sha256
+               (base32
+                "1zmvmwgxyzvm83818skhn8b4wrci4kmnixaax8q3ia5cn7xrmj6v"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-tkinter" ,python "tk")))
+    (home-page "https://github.com/robertlugg/easygui")
+    (synopsis "GUI programming module for Python")
+    (description "EasyGUI is a module for very simple, very easy GUI
+programming in Python.  EasyGUI is different from other GUI generators in that
+EasyGUI is NOT event-driven.  Instead, all GUI interactions are invoked by
+simple function calls.")
+    (license license:bsd-3)))
+
 (define-public python-pymediainfo
   (package
     (name "python-pymediainfo")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:02 GMT) Full text and rfc822 format available.

Message #74 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 04/10] gnu: Add python-d2to1
Date: Sat,  7 Mar 2020 16:11:40 +0100
* gnu/packages/python-xyz.scm (python-d2to1): New variable.
---
 gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3f3030bc4e..4383fef660 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -172,6 +172,27 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-d2to1
+  (package
+    (name "python-d2to1")
+    (version "0.2.12.post1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "d2to1" version))
+              (sha256
+               (base32
+                "09fq7pq1z8d006xh5z75rm2lk61v6yn2xhy53z4gsgibhqb2vvs9"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-nose" ,python-nose)))
+    (home-page "https://github.com/embray/d2to1")
+    (synopsis "Allows for distutils2-like setup.cfg files as package metadata
+in python")
+    (description "The python package d2to1 (the d is for distutils) allows
+using distutils2-like setup.cfg files for a package's metadata with a
+distribute/setuptools setup.py script.")
+    (license license:bsd-2)))
+
 (define-public python-rawkit
   (package
     (name "python-rawkit")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:03 GMT) Full text and rfc822 format available.

Message #77 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 03/10] gnu: Add python-rawkit
Date: Sat,  7 Mar 2020 16:11:39 +0100
* gnu/packages/python-xyz.scm (python-rawkit): New variable.
---
 gnu/packages/python-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 17581c9304..3f3030bc4e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -130,6 +130,7 @@
   #:use-module (gnu packages openstack)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-check)
@@ -171,6 +172,30 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-rawkit
+  (package
+    (name "python-rawkit")
+    (version "0.6.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "rawkit" version))
+              (sha256
+               (base32
+                "0vrhrpr70i61y5q5ysk341x1539ff1q1k82g59zq69lv16s0f76s"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)
+       ("python-mock" ,python-mock)))
+    (inputs
+     `(("libraw" ,libraw)))
+    (home-page "https://rawkit.readthedocs.io")
+    (synopsis "Ctypes-based LibRaw binding for Python")
+    (description "The rawkit package provides two modules:  rawkit and libraw.
+The rawkit module provides a high-level Pythonic interface for developing raw
+photos, while the libraw module provides a CTypes based interface for
+interacting with the low-level LibRaw C APIs.")
+    (license license:expat)))
+
 (define-public python-easygui
   (package
     (name "python-easygui")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:03 GMT) Full text and rfc822 format available.

Message #80 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 05/10] gnu: Add python-colour
Date: Sat,  7 Mar 2020 16:11:41 +0100
* gnu/packages/python-xyz.scm (python-colour): New variable.
---
 gnu/packages/python-xyz.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 4383fef660..8b3920fb00 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -172,6 +172,25 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-colour
+  (package
+    (name "python-colour")
+    (version "0.1.5")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "colour" version))
+              (sha256
+               (base32
+                "1visbisfini5j14bdzgs95yssw6sm4pfzyq1n3lfvbyjxw7i485g"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-d2to1" ,python-d2to1)))
+    (home-page "https://github.com/vaab/colour")
+    (synopsis "Convert and manipulate various color representations")
+    (description "Pythonic way to manipulate color representations (HSL, RVB,
+web, X11, ...).")
+    (license license:expat)))
+
 (define-public python-d2to1
   (package
     (name "python-d2to1")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:04 GMT) Full text and rfc822 format available.

Message #83 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 07/10] gnu: Add python-pyprind
Date: Sat,  7 Mar 2020 16:11:43 +0100
* gnu/packages/python-xyz.scm (python-pyprind): New variable.
---
 gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2275373eac..6e42f3a70e 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -172,6 +172,26 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-pyprind
+  (package
+    (name "python-pyprind")
+    (version "2.11.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "PyPrind" version))
+              (sha256
+               (base32
+                "0xg6m5hr33h9bdlrr42kc58jm2m87a9zsagy7n2m4n407d2snv64"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-psutil" ,python-psutil)))
+    (home-page "https://github.com/rasbt/pyprind")
+    (synopsis "Python Progress Bar and Percent Indicator Utility")
+    (description "The PyPrind (Python Progress Indicator) module provides a
+progress bar and a percentage indicator object that let you track the progress
+of a loop structure or other iterative computation.")
+    (license license:bsd-3)))
+
 (define-public python-gphoto2
   (package
     (name "python-gphoto2")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:04 GMT) Full text and rfc822 format available.

Message #86 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 09/10] gnu: Add python-tenacity
Date: Sat,  7 Mar 2020 16:11:45 +0100
* gnu/packages/python-xyz.scm (python-tenacity): New variable.
---
 gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 05c9c1e5d5..989469ad27 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -172,6 +172,36 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-tenacity
+  (package
+    (name "python-tenacity")
+    (version "6.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "tenacity" version))
+              (sha256
+               (base32
+                "1j36v9fcpmmd4985ix0cwnvcq71rkrn5cjiiv0id9vkl4kpxh0gv"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-setuptools-scm" ,python-setuptools-scm)
+       ("python-sphinx" ,python-sphinx)
+       ("python-tornado" ,python-tornado)
+       ("python-pytest" ,python-pytest)))
+    (propagated-inputs
+     `(("python-six" ,python-six)))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (invoke "pytest")
+                      #t)))))
+    (home-page "https://github.com/jd/tenacity")
+    (synopsis "Retrying library for python")
+    (description "Tenacity is a general-purpose python library to simplify the
+task of adding retry behavior to just about anything.")
+    (license license:asl2.0)))
+
 (define-public python-colorlog
   (package
     (name "python-colorlog")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:05 GMT) Full text and rfc822 format available.

Message #89 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 06/10] gnu: Add python-gphoto2
Date: Sat,  7 Mar 2020 16:11:42 +0100
* gnu/packages/python-xyz.scm (python-gphoto2): New variable.
---
 gnu/packages/python-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8b3920fb00..2275373eac 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -172,6 +172,28 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-gphoto2
+  (package
+    (name "python-gphoto2")
+    (version "2.2.1")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "gphoto2" version))
+              (sha256
+               (base32
+                "118zm25c8mlajfl0pzssnwz4b8lamj9dgymla9rn4nla7l244a0r"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("libgphoto2" ,libgphoto2)))
+    (home-page "https://github.com/jim-easterbrook/python-gphoto2")
+    (synopsis "Python interface to libgphoto2")
+    (description "@code{python-gphoto2} is a comprehensive Python interface
+(or binding) to @code{libgphoto2}.  It is built using @code{SWIG} to
+automatically generate the interface code.")
+    (license license:gpl3+)))
+
 (define-public python-colour
   (package
     (name "python-colour")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:05 GMT) Full text and rfc822 format available.

Message #92 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sat,  7 Mar 2020 16:11:46 +0100
* gnu/packages/photo.scm (rapid-photo-downloader): New variable.
---
 gnu/packages/photo.scm | 94 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 94 insertions(+)

diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index 069767e414..585289daf1 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2017 Roel Janssen <roel <at> gnu.org>
 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2018 Leo Famulari <leo <at> famulari.name>
+;;; Copyright © 2020 Sebastian Schott <sschott <at> mailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,6 +27,7 @@
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
+  #:use-module (guix build-system python)
   #:use-module (guix download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
@@ -37,12 +39,15 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
+  #:use-module (gnu packages file)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages graphics)
+  #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
@@ -56,9 +61,13 @@
   #:use-module (gnu packages popt)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tex)
+  #:use-module (gnu packages time)
+  #:use-module (gnu packages video)
   #:use-module (gnu packages web)
   #:use-module (gnu packages wxwidgets)
   #:use-module (gnu packages xfig)
@@ -67,6 +76,91 @@
   #:use-module ((srfi srfi-1) #:hide (zip))
   #:use-module (srfi srfi-26))
 
+(define-public rapid-photo-downloader
+  (package
+    (name "rapid-photo-downloader")
+    (version "0.9.18")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://launchpad.net/rapid/pyqt/"
+                                  version "/+download/" name "-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "15p7sssg6vmqbm5xnc4j5dr89d7gl7y5qyq44a240yl5aqkjnybw"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("file" ,file)
+       ("intltool" ,intltool)
+       ("gobject-introspection" ,gobject-introspection)))
+    (inputs
+     `(("gdk-pixbuf" ,gdk-pixbuf)
+       ("gexiv2" ,gexiv2)
+       ("gst-libav" ,gst-libav)
+       ("gst-plugins-base" ,gst-plugins-base)
+       ("gst-plugins-good" ,gst-plugins-good)
+       ("gstreamer" ,gstreamer)
+       ("libgudev" ,libgudev)
+       ("libnotify" ,libnotify)
+       ("libmediainfo" ,libmediainfo)
+       ("usdisks" ,udisks)
+       ("python-pyqt" ,python-pyqt)
+       ("python-pygobject" ,python-pygobject)
+       ("python-gphoto2" ,python-gphoto2)
+       ("python-pyzmq" ,python-pyzmq)
+       ("python-tornado" ,python-tornado)
+       ("python-psutil" ,python-psutil)
+       ("python-pyxdg" ,python-pyxdg)
+       ("python-arrow" ,python-arrow)
+       ("python-dateutil" ,python-dateutil)
+       ("python-easygui" ,python-easygui)
+       ("python-colour" ,python-colour)
+       ("python-pymediainfo" ,python-pymediainfo)
+       ("python-sortedcontainers" ,python-sortedcontainers)
+       ("python-rawkit" ,python-rawkit)
+       ("python-requests" ,python-requests)
+       ("python-colorlog" ,python-colorlog)
+       ("python-pyprind" ,python-pyprind)
+       ("python-tenacity" ,python-tenacity)
+       ("perl-image-exiftool" ,perl-image-exiftool)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-libmediainfo
+           (lambda _
+             (substitute* "raphodo/metadatavideo.py"
+               (("pymedia_library_file = 'libmediainfo.so.0'")
+                (string-append "pymedia_library_file = '"
+                               (assoc-ref %build-inputs "libmediainfo")
+                               "/lib/libmediainfo.so.0'")))
+             #t))
+         (add-after 'install 'wrap
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((out               (assoc-ref outputs "out"))
+                   (path              (string-join
+                                       (list (string-append
+                                              (assoc-ref inputs "perl-image-exiftool")
+                                              "/bin"))
+                                       ":"))
+                   (gi-typelib-path   (getenv "GI_TYPELIB_PATH"))
+                   (python-path       (getenv "PYTHONPATH")))
+               (for-each
+                (lambda (program)
+                  (wrap-program program
+                    `("PATH" ":" prefix (,path))
+                    `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
+                    `("PYTHONPATH"             ":" prefix (,python-path))))
+                (map (lambda (name)
+                       (string-append out "/bin/" name))
+                     '("analyze-pv-structure"
+                       "rapid-photo-downloader"))))
+             #t)))))
+    (home-page "https://www.damonlynch.net/rapid/")
+    (synopsis "Import photos and videos from cameras, phones and memory cards")
+    (description "Import photos and videos from cameras, phones and memory
+cards and generate meaningful file and folder names.")
+    (license license:gpl2+)))
+
 (define-public libraw
   (package
     (name "libraw")
-- 
2.24.0





Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sat, 07 Mar 2020 15:13:05 GMT) Full text and rfc822 format available.

Message #95 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Sebastian Schott <sschott <at> mailbox.org>
To: 39292 <at> debbugs.gnu.org
Cc: Sebastian Schott <sschott <at> mailbox.org>
Subject: [PATCH 08/10] gnu: Add python-colorlog
Date: Sat,  7 Mar 2020 16:11:44 +0100
* gnu/packages/python-xyz.scm (python-colorlog): New variable.
---
 gnu/packages/python-xyz.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6e42f3a70e..05c9c1e5d5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -172,6 +172,35 @@
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-colorlog
+  (package
+    (name "python-colorlog")
+    (version "4.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "colorlog" version))
+              (sha256
+               (base32
+                "1lpk8zmfv8vz090h5d0hzb4n39wgasxdd3x3bpn3v1x1n9dfzaih"))))
+    (build-system python-build-system)
+    (native-inputs
+     `(("python-pytest" ,python-pytest)))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      ;; Extend PYTHONPATH so the built package will be found.
+                      (setenv "PYTHONPATH"
+                              (string-append (getcwd) "/build/lib:"
+                                             (getenv "PYTHONPATH")))
+                      (invoke "pytest" "-p" "no:logging")
+                      #t)))))
+    (home-page "https://github.com/borntyping/python-colorlog")
+    (synopsis "Log formatting with colors for python")
+    (description "The @code{colorlog.ColoredFormatter} is a formatter for use
+with Python's logging module that outputs records using terminal colors.")
+    (license license:expat)))
+
 (define-public python-pyprind
   (package
     (name "python-pyprind")
-- 
2.24.0





Reply sent to Christopher Baines <mail <at> cbaines.net>:
You have taken responsibility. (Sun, 15 Mar 2020 17:00:02 GMT) Full text and rfc822 format available.

Notification sent to sschott <at> mailbox.org:
bug acknowledged by developer. (Sun, 15 Mar 2020 17:00:03 GMT) Full text and rfc822 format available.

Message #100 received at 39292-done <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: Sebastian Schott <s.schott <at> mailbox.org>
Cc: 39292-done <at> debbugs.gnu.org
Subject: Re: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader
Date: Sun, 15 Mar 2020 16:59:51 +0000
[Message part 1 (text/plain, inline)]
Sebastian Schott <s.schott <at> mailbox.org> writes:

> Hi Chris,
>
> thank you for the "guix environment --ad-hoc" hint and for
> implementing the wrapping technique. I revised all commits regarding
> to your suggestions and will upload the new patches soon.

Thanks Sebastian, I've finally got around to looking at the updated
patches, and they're pretty much perfect. I've pushed them to the master
branch as 39af91db7943700b723c96ce1fc100f110aa88d1.

Thanks for your work and persistence!

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 15 Mar 2020 18:48:02 GMT) Full text and rfc822 format available.

Message #103 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Sebastian Schott <sschott <at> mailbox.org>
Cc: 39292 <at> debbugs.gnu.org
Subject: Re: [bug#39292] [PATCH 01/10] gnu: Add python-pymediainfo
Date: Sun, 15 Mar 2020 14:47:28 -0400
On Sat, Mar 07, 2020 at 04:11:37PM +0100, Sebastian Schott wrote:
> * gnu/packages/python-xyz.scm (python-pymediainfo): New variable.

Thanks for this patch series Sebastian! Overall it looks good...

I only have one nitpick:

> +             ;; Skip the only failing test "test_parse_url"
> +             (invoke "pytest" "-vv" "-k" "not test_parse_url")
> +             #t)))))

How does the test fail? We should add comments explaining why tests are
skipped, not just that they are fail so we skip them :)

And while you are adding that comment or fixing the test, can you rebase
the patches on the current master branch? They no longer apply due to
other changes in python-xyz.scm.




Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 15 Mar 2020 21:27:01 GMT) Full text and rfc822 format available.

Message #106 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: leo <at> famulari.name
Cc: 39292 <at> debbugs.gnu.org, Sebastian Schott <sschott <at> mailbox.org>
Subject: Re: [bug#39292] [PATCH 01/10] gnu: Add python-pymediainfo
Date: Sun, 15 Mar 2020 21:26:46 +0000
[Message part 1 (text/plain, inline)]
Leo Famulari <leo <at> famulari.name> writes:

> On Sat, Mar 07, 2020 at 04:11:37PM +0100, Sebastian Schott wrote:
>> * gnu/packages/python-xyz.scm (python-pymediainfo): New variable.
>
> Thanks for this patch series Sebastian! Overall it looks good...
>
> I only have one nitpick:
>
>> +             ;; Skip the only failing test "test_parse_url"
>> +             (invoke "pytest" "-vv" "-k" "not test_parse_url")
>> +             #t)))))
>
> How does the test fail? We should add comments explaining why tests are
> skipped, not just that they are fail so we skip them :)

I did see this when reviewing the patches, but I didn't think to look at
it like this. It's the proper question to ask though.

Out of interest, I built the package without skipping that test, and
that failure looks related to the test trying to access the network, so
disabling it is probably justified.

> And while you are adding that comment or fixing the test, can you rebase
> the patches on the current master branch? They no longer apply due to
> other changes in python-xyz.scm.

If you have an up to date copy of master, this could be because I merged
the patches a few hours ago.

Thanks,

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39292; Package guix-patches. (Sun, 15 Mar 2020 21:40:01 GMT) Full text and rfc822 format available.

Message #109 received at 39292 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Christopher Baines <mail <at> cbaines.net>
Cc: 39292 <at> debbugs.gnu.org, Sebastian Schott <sschott <at> mailbox.org>
Subject: Re: [bug#39292] [PATCH 01/10] gnu: Add python-pymediainfo
Date: Sun, 15 Mar 2020 17:39:07 -0400
On Sun, Mar 15, 2020 at 09:26:46PM +0000, Christopher Baines wrote:
> If you have an up to date copy of master, this could be because I merged
> the patches a few hours ago.

Oh... facepalm. Thanks Chris!




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 13 Apr 2020 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 12 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.