From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:34380) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j5uau-0003Dj-Kf for guix-patches@gnu.org; Sun, 23 Feb 2020 11:59:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j5uat-0005aQ-8n for guix-patches@gnu.org; Sun, 23 Feb 2020 11:59:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:45582) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j5uas-0005aD-Jq for guix-patches@gnu.org; Sun, 23 Feb 2020 11:59:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j5uas-0000iB-Js for guix-patches@gnu.org; Sun, 23 Feb 2020 11:59:02 -0500 Subject: [bug#39292] [PATCH 10/10] gnu: Add rapid-photo-downloader Resent-Message-ID: Date: Sun, 23 Feb 2020 11:40:10 +0100 (CET) From: Sebastian Schott Message-ID: <1889312991.7522.1582454410688@office.mailbox.org> In-Reply-To: <87sgjtgtju.fsf@cbaines.net> References: <87sgjtgtju.fsf@cbaines.net> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Sebastian Schott Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: "39292@debbugs.gnu.org" <39292@debbugs.gnu.org> Cc: Christopher Baines 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+)))