~ruther/guix-local

0195d4b1c31d7cdbac5b05139ffff7da63793e62 — Maxim Cournoyer 5 years ago 8dec180
gnu: libcloudproviders-minimal: Introduce minimal variant.

* gnu/packages/gnome.scm (libcloudproviders-minimal): New minimal variant that
doesn't require Inkscape to be built (through gtk-doc).
[source]: Adjust URI.
[outputs]: Remove field.
[configure-flags]: Disable introspection, docs and vala bindings.
[phases]{move-doc}: Move phase to ...
(libcloudproviders)[phases]: ... here.
Rewrite in terms of libcloudproviders-minimal.  The "doc" output is moved
here.
[configure-flags]: Clear inherited flags and enable doc.
* gnu/packages/gtk.scm (gtk+)[inputs]{libcloudproviders}: Use the minimal
variant to prevent a cycle with Inkscape.
2 files changed, 37 insertions(+), 25 deletions(-)

M gnu/packages/gnome.scm
M gnu/packages/gtk.scm
M gnu/packages/gnome.scm => gnu/packages/gnome.scm +36 -24
@@ 39,7 39,7 @@
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019, 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2019, 2020 Raghav Gururajan <raghavgururajan@disroot.org>


@@ 338,41 338,28 @@ Desktop.  It is designed to be as simple as possible and has some unique
features to enable users to create their discs easily and quickly.")
    (license license:gpl2+)))

(define-public libcloudproviders
;;; Minimal variant, used to break a cycle with Inkscape.
(define-public libcloudproviders-minimal
  (package
    (name "libcloudproviders")
    (name "libcloudproviders-minimal")
    (version "0.3.1")
    (source
     (origin
       (method url-fetch)
       (uri
        (string-append "mirror://gnome/sources/" name "/"
                       (version-major+minor version) "/"
                       name "-" version ".tar.xz"))
        (string-append "mirror://gnome/sources/libcloudproviders/"
                       (version-major+minor version)
                       "/libcloudproviders-" version ".tar.xz"))
       (sha256
        (base32 "0aars24myf6n8b8hm1n12hsgcm54097kpbpm4ba31zp1l4y22qs7"))))
    (build-system meson-build-system)
    (outputs '("out" "doc"))
    (arguments
     `(#:glib-or-gtk? #t     ; To wrap binaries and/or compile schemas
       #:configure-flags
       (list
        "-Denable-gtk-doc=true")
       #:phases
       (modify-phases %standard-phases
         (add-after 'install 'move-doc
           (lambda* (#:key outputs #:allow-other-keys)
             (let* ((out (assoc-ref outputs "out"))
                    (doc (assoc-ref outputs "doc")))
               (mkdir-p (string-append doc "/share"))
               (rename-file
                (string-append out "/share/gtk-doc")
                (string-append doc "/share/gtk-doc"))
               #t))))))
     `(#:glib-or-gtk? #t             ; To wrap binaries and/or compile schemas
       #:configure-flags (list "-Dintrospection=false"
                               "-Denable-gtk-doc=false"
                               "-Dvapigen=false")))
    (native-inputs
     `(("glib:bin" ,glib "bin")
       ("gobject-introspection" ,gobject-introspection)
       ("gtk-doc" ,gtk-doc/stable)
       ("pkg-config" ,pkg-config)
       ("vala" ,vala)))
    (inputs


@@ 386,6 373,31 @@ services.")
    (home-page "https://csorianognome.wordpress.com/2015/07/07/cloud-providers/")
    (license license:lgpl3+)))

(define-public libcloudproviders
  (package/inherit libcloudproviders-minimal
    (name "libcloudproviders")
    (version "0.3.1")
    (outputs (cons "doc" (package-outputs libcloudproviders-minimal)))
    (arguments
     (substitute-keyword-arguments (package-arguments libcloudproviders-minimal)
       ((#:configure-flags _)
        '(list "-Denable-gtk-doc=true")) ;false by default
       ((#:phases phases '%standard-phases)
        `(modify-phases %standard-phases
           (add-after 'install 'move-doc
             (lambda* (#:key outputs #:allow-other-keys)
               (let* ((out (assoc-ref outputs "out"))
                      (doc (assoc-ref outputs "doc")))
                 (mkdir-p (string-append doc "/share"))
                 (rename-file
                  (string-append out "/share/gtk-doc")
                  (string-append doc "/share/gtk-doc")))))))))
    (native-inputs
     (append
         `(("gobject-introspection" ,gobject-introspection)
           ("gtk-doc" ,gtk-doc/stable))
         (package-native-inputs libcloudproviders-minimal)))))

(define-public libgrss
  (package
    (name "libgrss")

M gnu/packages/gtk.scm => gnu/packages/gtk.scm +1 -1
@@ 1005,7 1005,7 @@ application suites.")
                          gdk-pixbuf+svg
                          gdk-pixbuf))
       ("glib" ,glib)
       ("libcloudproviders" ,libcloudproviders)
       ("libcloudproviders" ,libcloudproviders-minimal)
       ("libepoxy" ,libepoxy)
       ("libx11" ,libx11)
       ("libxcomposite" ,libxcomposite)