aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/photo.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/photo.scm')
-rw-r--r--gnu/packages/photo.scm94
1 files changed, 94 insertions, 0 deletions
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index b0d35441b3..31cf75df96 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2020 Sebastian Schott <sschott@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")