From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?B?5a6L5paH5q2m?= Subject: Re: [PATCH] Add Shotwell. Date: Wed, 02 Sep 2015 20:20:52 +0800 Message-ID: <87twrd8123.fsf@gmail.com> References: <878u8p52xw.fsf@elephly.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:56100) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZX71m-0002CK-AO for guix-devel@gnu.org; Wed, 02 Sep 2015 08:20:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZX71h-0007lH-V5 for guix-devel@gnu.org; Wed, 02 Sep 2015 08:20:34 -0400 Received: from mail-pa0-f43.google.com ([209.85.220.43]:35755) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZX71h-0007kt-Ni for guix-devel@gnu.org; Wed, 02 Sep 2015 08:20:29 -0400 Received: by pacfv12 with SMTP id fv12so10301653pac.2 for ; Wed, 02 Sep 2015 05:19:43 -0700 (PDT) In-Reply-To: <878u8p52xw.fsf@elephly.net> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ricardo Wurmus , Guix-devel Ricardo Wurmus writes: > More GNOME packages! > > From a4e79409b7ea4681f576b050e8cc5f8235eecf27 Mon Sep 17 00:00:00 2001 > From: Ricardo Wurmus > Date: Tue, 1 Sep 2015 21:36:32 +0200 > Subject: [PATCH 1/5] gnu: Add libraw. > > * gnu/packages/photo.scm (libraw): New variable. > --- > gnu/packages/photo.scm | 20 ++++++++++++++++++++ > 1 file changed, 20 insertions(+) > > diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm > index bf3c76c..cbfc1e8 100644 > --- a/gnu/packages/photo.scm > +++ b/gnu/packages/photo.scm > @@ -1,5 +1,6 @@ > ;;; GNU Guix --- Functional package management for GNU > ;;; Copyright =C2=A9 2014, 2015 Ludovic Court=C3=A8s > +;;; Copyright =C2=A9 2015 Ricardo Wurmus > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -30,6 +31,25 @@ > #:use-module (gnu packages perl) > #:use-module (gnu packages base)) >=20=20 > +(define-public libraw > + (package > + (name "libraw") > + (version "0.17.0") > + (source (origin > + (method url-fetch) > + (uri (string-append "http://www.libraw.org/data/LibRaw-" > + version ".tar.gz")) > + (sha256 > + (base32 > + "043kckxjqanw8dl3m9f6kvsf0l20ywxmgxd1xb0slj6m8l4w4hz6"))= )) > + (build-system gnu-build-system) > + (home-page "http://www.libraw.org") > + (synopsis "Raw image decoder") > + (description > + "LibRaw is a library for reading RAW files obtained from digital ph= oto > +cameras (CRW/CR2, NEF, RAF, DNG, and others).") > + (license lgpl2.1+))) > + Look good to me. > (define-public libexif > (package > (name "libexif") > --=20 > 2.5.0 > > From b2c832f83e807cd9cc51f310aa40fffe7f529eef Mon Sep 17 00:00:00 2001 > From: Ricardo Wurmus > Date: Tue, 1 Sep 2015 21:37:12 +0200 > Subject: [PATCH 2/5] gnu: Add libgee. > > * gnu/packages/gnome.scm (libgee): New variable. > --- > gnu/packages/gnome.scm | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index 790ec76..ba91ad1 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -3500,3 +3500,25 @@ manage, and publish documentation for Yelp and the= web. Most of the heavy > lifting is done by packages like yelp-xsl and itstool. This package just > wraps things up in a developer-friendly way.") > (license license:gpl2+))) > + > +(define-public libgee > + (package > + (name "libgee") > + (version "0.18.0") > + (source (origin > + (method url-fetch) > + (uri (string-append "mirror://gnome/sources/" name "/" > + (version-major+minor version) "/" > + name "-" version ".tar.xz")) > + (sha256 > + (base32 > + "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))= )) > + (build-system glib-or-gtk-build-system) There are no executables to be wrapped, please use 'gnu-build-system'. > + (native-inputs > + `(("pkg-config" ,pkg-config))) missing 'gobject-introspection' and 'vala'? > + (home-page "https://wiki.gnome.org/Projects/Libgee") > + (synopsis "GObject collection library") > + (description > + "Libgee is a utility library providing GObject-based interfaces and > +classes for commonly used data structures.") > + (license license:lgpl2.1+))) > --=20 > 2.5.0 > > From 4638ce2021d2b5df0b00cb25de5d88f54b4c5ab3 Mon Sep 17 00:00:00 2001 > From: Ricardo Wurmus > Date: Tue, 1 Sep 2015 21:38:06 +0200 > Subject: [PATCH 3/5] gnu: Add gexiv2. > > * gnu/packages/gnome.scm (gexiv2): New variable. > --- > gnu/packages/gnome.scm | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index ba91ad1..c9ea651 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -69,6 +69,7 @@ > #:use-module (gnu packages scanner) > #:use-module (gnu packages ssh) > #:use-module (gnu packages xml) > + #:use-module (gnu packages geeqie) > #:use-module (gnu packages gl) > #:use-module (gnu packages qt) ; for libxkbcommon > #:use-module (gnu packages compression) > @@ -3522,3 +3523,29 @@ wraps things up in a developer-friendly way.") > "Libgee is a utility library providing GObject-based interfaces and > classes for commonly used data structures.") > (license license:lgpl2.1+))) > + > +(define-public gexiv2 > + (package > + (name "gexiv2") > + (version "0.10.3") > + (source (origin > + (method url-fetch) > + (uri (string-append "mirror://gnome/sources/" name "/" > + (version-major+minor version) "/" > + name "-" version ".tar.xz")) > + (sha256 > + (base32 > + "121r5lv6l82pjr0ycdf2b01mdwy7sxwca2r068zrzylpc6bgn31r"))= )) > + (build-system glib-or-gtk-build-system) Same as above. > + (native-inputs > + `(("pkg-config" ,pkg-config))) > + (propagated-inputs > + ;; Listed in "Requires" section of gexiv2.pc > + `(("exiv2" ,exiv2))) > + (home-page "https://wiki.gnome.org/Projects/gexiv2") > + (synopsis "GObject wrapper around the Exiv2 photo metadata library") > + (description > + "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata librar= y. It > +allows for GNOME applications to easily inspect and update EXIF, IPTC, a= nd XMP > +metadata in photo and video files of various formats.") > + (license license:gpl2+))) > --=20 > 2.5.0 > > From d1171566ab78351abc24777d110479f31c792b2f Mon Sep 17 00:00:00 2001 > From: Ricardo Wurmus > Date: Tue, 1 Sep 2015 21:41:02 +0200 > Subject: [PATCH 4/5] gnu: Add rest. > > * gnu/packages/gnome.scm (rest): New variable. > --- > gnu/packages/gnome.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 42 insertions(+) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index c9ea651..68c4f45 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -40,6 +40,7 @@ > #:use-module (gnu packages bison) > #:use-module (gnu packages cups) > #:use-module (gnu packages curl) > + #:use-module (gnu packages certs) > #:use-module (gnu packages databases) > #:use-module (gnu packages djvu) > #:use-module (gnu packages flex) > @@ -3549,3 +3550,44 @@ classes for commonly used data structures.") > allows for GNOME applications to easily inspect and update EXIF, IPTC, a= nd XMP > metadata in photo and video files of various formats.") > (license license:gpl2+))) > + > +(define-public rest > + (package > + (name "rest") > + (version "0.7.93") > + (source (origin > + (method url-fetch) > + (uri (string-append "mirror://gnome/sources/" name "/" > + (version-major+minor version) "/" > + name "-" version ".tar.xz")) > + (sha256 > + (base32 > + "05mj10hhiik23ai8w4wkk5vhsp7hcv24bih5q3fl82ilam268467"))= )) > + (build-system glib-or-gtk-build-system) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (add-after 'unpack 'remove-broken-tests > + (lambda _ > + ;; These five tests require an Internet connection > + (substitute* "tests/Makefile.in" > + (((string-append "oauth\\$\\(EXEEXT\\) " > + "oauth-async\\$\\(EXEEXT\\) " > + "oauth2\\$\\(EXEEXT\\)")) "") > + (("flickr\\$\\(EXEEXT\\) lastfm\\$\\(EXEEXT\\)") "")) > + #t))) > + #:configure-flags > + (list (string-append "--with-ca-certificates=3D" > + (assoc-ref %build-inputs "nss-certs"))))) > + (native-inputs > + `(("pkg-config" ,pkg-config) > + ("gtk-doc" ,gtk-doc))) > + (inputs > + `(("libsoup" ,libsoup) > + ("nss-certs" ,nss-certs))) > + (home-page "https://wiki.gnome.org/Projects/Librest") > + (synopsis "Library to access RESTful web services") > + (description > + "Librest is a library was designed to make it easier to access web > +services that claim to be \"RESTful\".") > + (license license:lgpl2.1+))) I did it as 'librest', as mentioned in irc, we should rename it to 'rest'. > --=20 > 2.5.0 > > From 02761f4bfcf54c012a5e3b8017e594b49d1d8992 Mon Sep 17 00:00:00 2001 > From: Ricardo Wurmus > Date: Tue, 1 Sep 2015 21:42:41 +0200 > Subject: [PATCH 5/5] gnu: Add shotwell. > > * gnu/packages/gnome.scm (shotwell): New variable. > --- > gnu/packages/gnome.scm | 68 ++++++++++++++++++++++++++++++++++++++++++++= ++++++ > 1 file changed, 68 insertions(+) > > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm > index 68c4f45..bc85b34 100644 > --- a/gnu/packages/gnome.scm > +++ b/gnu/packages/gnome.scm > @@ -45,6 +45,7 @@ > #:use-module (gnu packages djvu) > #:use-module (gnu packages flex) > #:use-module (gnu packages docbook) > + #:use-module (gnu packages gettext) > #:use-module (gnu packages glib) > #:use-module (gnu packages gnupg) > #:use-module (gnu packages gnuzilla) > @@ -61,6 +62,7 @@ > #:use-module (gnu packages libusb) > #:use-module (gnu packages lirc) > #:use-module (gnu packages lua) > + #:use-module (gnu packages m4) > #:use-module (gnu packages image) > #:use-module (gnu packages perl) > #:use-module (gnu packages photo) > @@ -3591,3 +3593,69 @@ metadata in photo and video files of various forma= ts.") > "Librest is a library was designed to make it easier to access web > services that claim to be \"RESTful\".") > (license license:lgpl2.1+))) > + > +(define-public shotwell > + (package > + (name "shotwell") > + (version "0.22.0") > + (source (origin > + (method url-fetch) > + (uri (string-append "mirror://gnome/sources/" name "/" > + (version-major+minor version) "/" > + name "-" version ".tar.xz")) > + (sha256 > + (base32 > + "0cgqaaikrb10plhf6zxbgqy32zqpiwyi9dpx3g8yr261q72r5c81"))= )) > + (build-system glib-or-gtk-build-system) > + (arguments > + `(#:tests? #f ;no "check" target > + #:make-flags '("CC=3Dgcc") > + #:configure-flags '("--disable-gsettings-convert-install") > + #:out-of-source? #f > + #:phases > + (modify-phases %standard-phases > + (add-after 'unpack 'set-pythonpath-for-xml2po > + (lambda* (#:key inputs #:allow-other-keys) > + ;; FIXME: "xml2po" from the "gnome-doc-utils" package is not > + ;; functional when it is not installed into a profile. > + (setenv "PYTHONPATH" > + (string-append (assoc-ref inputs "gnome-doc-utils") > + "/lib/python2.7/site-packages:" > + (assoc-ref inputs "python2-libxml2") > + "/lib/python2.7/site-packages")) How about add 'python-2' to native-inputs to get the PYTHONPATH? > + #t))))) > + (native-inputs > + `(("pkg-config" ,pkg-config) > + ("gettext" ,gnu-gettext) > + ("m4" ,m4) > + ("desktop-file-utils" ,desktop-file-utils) > + ("vala" ,vala) > + ("which" ,which) > + ("gnome-doc-utils" ,gnome-doc-utils) > + ;; FIXME: I only added python2-libxml2 because xml2po needs it at > + ;; runtime. It should be propagated. > + ("python2-libxml2" ,python2-libxml2))) > + (inputs > + `(("gstreamer" ,gstreamer) > + ("gst-plugins-base" ,gst-plugins-base) > + ("gst-plugins-good" ,gst-plugins-good) > + ("libgee" ,libgee) > + ("gexiv2" ,gexiv2) > + ("libraw" ,libraw) > + ("json-glib" ,json-glib) > + ("rest" ,rest) > + ("webkitgtk" ,webkitgtk-2.4) > + ("sqlite" ,sqlite) > + ("libsoup" ,libsoup) > + ("libxml2" ,libxml2) > + ("gtk+" ,gtk+) > + ("libgudev" ,libgudev) > + ("libgphoto2" ,libgphoto2))) > + (home-page "https://wiki.gnome.org/Apps/Shotwell") > + (synopsis "Photo manager for GNOME 3") > + (description > + "Shotwell is a digital photo manager designed for the GNOME desktop > +environment. It allows you to import photos from disk or camera, organi= ze > +them by keywords and events, view them in full-window or fullscreen mode= , and > +share them with others via social networking and more.") > + (license license:lgpl2.1+))) > --=20 > 2.5.0