From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id IApAE6l30V5AZwAA0tVLHw (envelope-from ) for ; Fri, 29 May 2020 20:59:21 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id kBVaD6l30V5XOgAAB5/wlQ (envelope-from ) for ; Fri, 29 May 2020 20:59:21 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 522A39404E0 for ; Fri, 29 May 2020 20:59:20 +0000 (UTC) Received: from localhost ([::1]:33000 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jem63-00051Z-6M for larch@yhetil.org; Fri, 29 May 2020 16:59:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:48150) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jem27-000827-Qq for guix-devel@gnu.org; Fri, 29 May 2020 16:55:15 -0400 Received: from knopi.disroot.org ([178.21.23.139]:53066) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jem22-0006sg-Sc for guix-devel@gnu.org; Fri, 29 May 2020 16:55:15 -0400 Received: from localhost (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id B681655E5E; Fri, 29 May 2020 22:55:06 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at disroot.org Received: from knopi.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ppsTYfIDpD5u; Fri, 29 May 2020 22:55:04 +0200 (CEST) Subject: Re: [OUTREACHY]: Integration of desktop environments into GNU Guix DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1590785703; bh=fPREQ9Z9GsEa1urTWZCIStG/r/JSRmHmEPxt6/Ha61o=; h=Subject:From:To:Cc:References:Date:In-Reply-To; b=MdDpmrE2Fi3vi51j+6pS8J6+GAJB+3+dYt8DXLsqvXUcKSEfv/8Sy3GGMAQFleDQa LBc4nJ4EfA9LhhwsCCpMSQLKSQnJFFHQVjAnYAPsTGY2o6N8Y7ftqQx9f/9qsSgUiT V3fgU0fapcYOcTILsentLpTMiQSRPyi5r8r1YDjsmSBRitv189Gx8igtN5hjSx6ow2 MtYMQ2Yu5ZJGY52YDzhJmeIYw7YcknRlN35OJ5xOJ/LoDUrpTuZptjbNnb0OBjbPfn nGiWMLrvRrhFUP0sRxyelZQV/grcwp5D7zyVtkih7mEFLLDixVQDPyfWUSDC/wPKS2 oGvJbtyXVgvTA== From: Raghav Gururajan To: guix-devel@gnu.org References: <20200506051334.4558e7b3.raghavgururajan@disroot.org> <8c56bfdd-4080-9444-d3c2-7bd962c4c687@disroot.org> <49cc7f39-7bce-f5a1-55da-5f9bca203627@disroot.org> Autocrypt: addr=raghavgururajan@disroot.org; keydata= mQENBF6yxWcBCAClEApjrOYs8fSzDl8GBwMFtUzF6VCOVrWaGun1vvPDvk4AFzbB3ZV6+Jn8 VfEuqh3OOvSJGHL2cJoR28Q5gVqeOwupyaMWVdEt6TmDrHISyxriF426KVaJnklfMjYwIi0l /7j8bs3pDRyyR6uFrY6sYL9t6HFvevtt7NwgWL1MAEVy6txKkriyrK1h+qc13wRRgVx3tzl7 dNwYEDWd3yUDn+LESoDOlawJ7TQbO8d1K4FFHaqwyQ/SyaIfLBnMAz9Qd18MUWpDkktLh/9u jRfctouFx5BUr+uGgCHAWcII5D60lt867y5m6vp3Ua75TkVQrYTt7KSF/wm7NZ7L02fTABEB AAG0M1JhZ2hhdiBHdXJ1cmFqYW4gKFJHKSA8cmFnaGF2Z3VydXJhamFuQGRpc3Jvb3Qub3Jn PokBTgQTAQgAOBYhBCdBLzSqkY3qQNKUKK5u8wRtb3tXBQJetePbAhsDBQsJCAcCBhUKCQgL AgQWAgMBAh4BAheAAAoJEK5u8wRtb3tXvWIH/3NiwaJfcrOoO/r4/reE0PmfgVWRpWP8uhdy ZiuBmcnyltxSmxZ1drlWpnbap5P7ssVyIlY6SrLTAeN7R0S70HAINkn7XvKpWajHShX0MR4b NeqjETNZg7gh2PTg6zfTnYD1UQqdNxnPMiJTSBZBLCAm/LhdEuigt559uoDA9ZEVLR5ycKh+ ny94NLUhmuRXpH/sb6Ey0FKmdMc47KNnkGQaySeGY88RwONgfv3/rriNbOJ1t12d2qsqkiOo znuxg5O3nT6obd7hCuq+EYwjzwSVrUZuMelO32UE4d2iePhiPBfiprVCNDGPFztJTe0Y+OQA ajj23CBgGIap/L1CpZ25AQ0EXrLFZwEIANGMTVaAiSGtpAbxRo9AHOc2kgatkAsH/ejtzNH0 mtGwtE0g5Gh0OKTI678KItanztmukKcZmBngPCwvUGGNQYzWWwsS+kBti5wJ3OForg+JtYuf /n9DjSAhnb7h1piL9Xi0drULl5ovVFRp/IPldkbT3R8pgc9VwAa0VVRP59dsgF6nPhoHjxfB p/XcA2QRnRfB2bN4BVCValJelPGYR0pSwkftFpmha4FRa0LrJtcMeh+PG20asPiKcE4sNGZT mH3keHkTfk5Tuds3ly5vlqmEKg7qY/zoS1yWQJj0j36JoX1/ravo+gUxszig80140a5bF2VU ERLcKO+Cp0lI4/8AEQEAAYkBNgQYAQgAIBYhBCdBLzSqkY3qQNKUKK5u8wRtb3tXBQJessVn AhsMAAoJEK5u8wRtb3tXqTIH/A9z70HLCZcAfnpluGj4APfi3haqdU7xvtrkN9eHJoPV7pwx y1luNRR8xg7YHkwcQ/9qEcvSicNIvhjRw5cSpyW9HGmOFyiZ7+KLf3XPUjC7pC5pIM+AAWyy D5GlyqakH1wBe8RC9/8vNyfZnmbV4PUvHoHvY/xZH+D/Afg1J2igdIebkQzzhFBC65TAKFeM NIWQkYIMKjq4u+nmv3sreqvRvlt8VYq0VSq24SFs0JJ+dEmuO3/s72122JIL0XEUS3ooGb/p 678RM2OpelLZcZSPG6vIIrQFKw6/NVjDtOY3DrNPtQ+h84UnFPUtaZyvQQwpGNjvtNzU/Ym+ NwsFm0Q= Message-ID: Date: Fri, 29 May 2020 16:54:22 -0400 Mime-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="I9hmKzd7eHfNuFKOECl1vPPBCPHisy1MG" Received-SPF: pass client-ip=178.21.23.139; envelope-from=raghavgururajan@disroot.org; helo=knopi.disroot.org X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/29 16:55:06 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list 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+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=disroot.org header.s=mail header.b=MdDpmrE2; dmarc=fail reason="SPF not aligned (relaxed)" header.from=disroot.org (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -1.51 X-TUID: 01MlvNPy3pwA This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --I9hmKzd7eHfNuFKOECl1vPPBCPHisy1MG Content-Type: multipart/mixed; boundary="1PCO54gQPYpCN848Ub946ZB761caCfcQ4"; protected-headers="v1" From: Raghav Gururajan To: guix-devel@gnu.org Cc: =?UTF-8?Q?G=c3=a1bor_Boskovits?= , Danny Milosavljevic , Tobias Geerinckx-Rice Message-ID: Subject: Re: [OUTREACHY]: Integration of desktop environments into GNU Guix References: <20200506051334.4558e7b3.raghavgururajan@disroot.org> <8c56bfdd-4080-9444-d3c2-7bd962c4c687@disroot.org> <49cc7f39-7bce-f5a1-55da-5f9bca203627@disroot.org> In-Reply-To: --1PCO54gQPYpCN848Ub946ZB761caCfcQ4 Content-Type: multipart/mixed; boundary="------------824DCEC6974BEE0181363053" Content-Language: en-US This is a multi-part message in MIME format. --------------824DCEC6974BEE0181363053 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable @Danny Please find the attached patches. Regards, RG. --------------824DCEC6974BEE0181363053 Content-Type: text/x-patch; charset=UTF-8; name="0001-gnu-clutter-Update-package-definition.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0001-gnu-clutter-Update-package-definition.patch" =46rom daaf04cbc2a1c9ad894fbe788e4089593d287c84 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Fri, 29 May 2020 05:33:21 -0400 Subject: [PATCH 1/4] gnu: clutter: Update package definition. * gnu/packages/gnome.scm (clutter) [version]: Update to 1.26.4. [build-system]: Change from gnu to meson. [arguments]<#:glib-or-gtk?>: New argument. <#:tests?>: Remove argument. <#:configure-flags>[-Dwayland_compositor]: New flag. [--with-html-dir]: Remove flag. <#:phases>['patch-docbook-xml]: New phase. ['patch-docbook-examples]: New phase. ['move-doc]: New phase. ['pre-check]: New phase. [native-inputs]: Add docbook-xml, docbook-xsl, gtk-doc, perl, ruby and xorg-server. [inputs]: Remove eudev and libxkbcommon. [propagated-inputs]: Add gdk-pixbuf+svg, eudev, libgudev, libinput, libx11, libxi, libxkbcommon, pango and wayland. Remove xinput. [home-page]: Change from http to https. [license]: Update to lgpl2.1+. --- gnu/packages/gnome.scm | 108 ++++++++++++++++++++++++++++------------- 1 file changed, 74 insertions(+), 34 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index df29ba0000..6608f8228b 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4779,57 +4779,97 @@ without stepping on each others toes.") (define-public clutter (package (name "clutter") - (version "1.26.2") + (version "1.26.4") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) (sha256 - (base32 - "0mif1qnrpkgxi43h7pimim6w6zwywa16ixcliw0yjm9hk0a368z7")))) + (base32 "1rn4cd1an6a9dfda884aqpcwcgq8dgydpqvb19nmagw4b70zlj4b"))= )) ;; NOTE: mutter exports a bundled fork of clutter, so when making ch= anges ;; to clutter, corresponding changes may be appropriate in mutter as= well. - (build-system gnu-build-system) - (outputs '("out" - "doc")) ;9 MiB of gtk-doc HTML= pages + (build-system meson-build-system) + (outputs '("out" "doc")) + (arguments + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas. + #:configure-flags + (list + "-Dwayland_compositor=3Dtrue") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let* ((xmldoc (string-append (assoc-ref inputs "docbook-xm= l") + "/xml/dtd/docbook"))) + (substitute* "doc/reference/clutter-docs.xml" + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + #t))) + (add-after 'unpack 'patch-cookbook-examples + (lambda _ + (substitute* "doc/cookbook/meson.build" + (("subdir\\('examples'\\)") + "")) + #t)) + (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))) + (add-before 'check 'pre-check + (lambda* (#:key tests? inputs #:allow-other-keys) + (if tests? + (begin + ;; The test suite requires a running X server. + (system (format #f "~a/bin/Xvfb :1 +extension GLX &" + (assoc-ref inputs "xorg-server"))) + (setenv "DISPLAY" ":1") + #t) + (format #t "test suite not run~%")) + #t))))) (native-inputs - `(("glib:bin" ,glib "bin") ; for glib-genmarshal + `(("docbook-xml" ,docbook-xml-4.3) + ("docbook-xsl" ,docbook-xsl) + ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("libxslt" ,libxslt) + ("perl" ,perl) ("pkg-config" ,pkg-config) - ("xsltproc" ,libxslt))) + ("ruby" ,ruby) + ("xorg-server" ,xorg-server-for-tests))) (propagated-inputs - `(("cogl" ,cogl) + `(("atk" ,atk) + ("cogl" ,cogl) ("cairo" ,cairo) - ("atk" ,atk) + ("eudev" ,eudev) + ("gdk-pixbuf+svg" ,gdk-pixbuf+svg) + ("glib" ,glib) ("gtk+" ,gtk+) ("json-glib" ,json-glib) - ("glib" ,glib) + ("libgudev" ,libgudev) + ("libinput" ,libinput) + ("libx11" ,libx11) ("libxcomposite" ,libxcomposite) ("libxdamage" ,libxdamage) ("libxext" ,libxext) - ("xinput" ,xinput))) - (inputs - `(("libxkbcommon" ,libxkbcommon) - ("udev" ,eudev))) - (arguments - `(#:configure-flags (list "--enable-x11-backend=3Dyes" - - ;; This produces share/doc/{clutter,cally= }. - (string-append "--with-html-dir=3D" - (assoc-ref %outputs "doc")= - "/share/doc")) - ;; XXX FIXME: Get test suite working. It would probably fail in = the - ;; same way the cogl tests fail, since clutter is based on cogl. - #:tests? #f)) - (home-page "http://www.clutter-project.org") + ("libxi" ,libxi) + ("libxkbcommon" ,libxkbcommon) + ("pango" ,pango) + ("wayland" ,wayland))) (synopsis "OpenGL-based interactive canvas library") - (description - "Clutter is an OpenGL-based interactive canvas library, designed fo= r -creating fast, mainly 2D single window applications such as media box UI= s, -presentations, kiosk style applications and so on.") - (license license:lgpl2.0+))) + (description "Clutter is an OpenGL-based interactive canvas library,= +designed for creating fast, mainly 2D single window applications such as= media +box UIs, presentations, kiosk style applications and so on.") + (home-page "https://www.clutter-project.org") + (license license:lgpl2.1+))) =20 (define-public clutter-gtk (package --=20 2.26.2 --------------824DCEC6974BEE0181363053 Content-Type: text/x-patch; charset=UTF-8; name="0002-gnu-clutter-gtk-Update-package-definition.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0002-gnu-clutter-gtk-Update-package-definition.patch" =46rom d9ea6caf006819bc89b778a071b0ca46ea4b6d5e Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Fri, 29 May 2020 10:01:08 -0400 Subject: [PATCH 2/4] gnu: clutter-gtk: Update package definition. * gnu/packages/gnome.scm (clutter-gtk): Update package definition. [build-system]: Change from gnu to meson. [arguments]<#:glib-or-gtk?>: New argument. <#:configure-flags>[-Denable_docs]: New flag. <#:phases>['patch-docbook-xml]: New phase. ['move-doc]: New phase. [native-inputs]: Add docbook-xml, gettext and gtk-doc. [synopsis]: Modify. [description]: Modify. [home-page]: Change from http to https. [license]: Update to lgpl2.1+. --- gnu/packages/gnome.scm | 57 +++++++++++++++++++++++++++++++----------- 1 file changed, 43 insertions(+), 14 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6608f8228b..d2454901e2 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4878,27 +4878,56 @@ box UIs, presentations, kiosk style applications = and so on.") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) (sha256 (base32 "01ibniy4ich0fgpam53q252idm7f4fn5xg5qvizcfww90gn9652j")))) - (build-system gnu-build-system) + (build-system meson-build-system) + (outputs '("out" "doc")) + (arguments + `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas. + #:configure-flags + (list + "-Denable_docs=3Dtrue") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let* ((xmldoc (string-append (assoc-ref inputs "docbook-xm= l") + "/xml/dtd/docbook"))) + (substitute* "doc/clutter-gtk-1.0-docs.xml" + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + #t))) + (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)))))) (native-inputs - `(("pkg-config" ,pkg-config) - ("gobject-introspection" ,gobject-introspection))) + `(("docbook-xml" ,docbook-xml-4.3) + ("gettext" ,gettext-minimal) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config))) (propagated-inputs - ;; clutter-gtk.pc refers to all these. `(("clutter" ,clutter) ("gtk+" ,gtk+))) - (home-page "http://www.clutter-project.org") - (synopsis "OpenGL-based interactive canvas library GTK+ widget") - (description - "Clutter is an OpenGL-based interactive canvas library, designed fo= r -creating fast, mainly 2D single window applications such as media box UI= s, -presentations, kiosk style applications and so on.") - (license license:lgpl2.0+))) + (synopsis "GTK+ integration library for Clutter") + (description "Clutter-GTK is a library providing facilities to integ= rate +Clutter into GTK+ applications and vice versa. It provides a GTK+ widge= t, +GtkClutterEmbed, for embedding the a Clutter stage into any GtkContainer= ; and +GtkClutterActor, a Clutter actor for embedding any GtkWidget inside a Cl= utter +stage.") + (home-page "https://www.clutter-project.org") + (license license:lgpl2.1+))) =20 (define-public clutter-gst (package --=20 2.26.2 --------------824DCEC6974BEE0181363053 Content-Type: text/x-patch; charset=UTF-8; name="0003-gnu-clutter-gst-Update-package-definition.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0003-gnu-clutter-gst-Update-package-definition.patch" =46rom f8b35fa9f6e21a2d04f3449762fe9fd5a8fbc180 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Fri, 29 May 2020 10:51:27 -0400 Subject: [PATCH 3/4] gnu: clutter-gst: Update package definition. * gnu/packages/gnome.scm (clutter-gst): Update package definition. [build-system]: Change from gnu to glib-or-gtk. [outputs]: New output 'doc'. [arguments]<#:configure-flags>[--enable-gtk-doc]: New flag. <#:phases>['patch-docbook-xml]: New phase. ['move-doc]: New phase. [native-inputs]: Add docbook-xml, gtk-doc and python-wrapper. [propagated-inputs]: Add cogl and glib. [synopsis]: Modify. [description]: Modify. [home-page]: Change from http to https. [license]: Update to lgpl2.1+. --- gnu/packages/gnome.scm | 58 +++++++++++++++++++++++++++++++----------- 1 file changed, 43 insertions(+), 15 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d2454901e2..54e1c940c6 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4936,28 +4936,56 @@ stage.") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/clutter-gst/" - (version-major+minor version) "/" - "clutter-gst-" version ".tar.xz")) + (uri + (string-append "mirror://gnome/sources/clutter-gst/" + (version-major+minor version) "/" + "clutter-gst-" version ".tar.xz")) (sha256 (base32 "17czmpl92dzi4h3rn5rishk015yi3jwiw29zv8qan94xcmnbssgy"))= )) - (build-system gnu-build-system) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:configure-flags + (list + "--enable-gtk-doc") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let* ((xmldoc (string-append (assoc-ref inputs "docbook-xm= l") + "/xml/dtd/docbook"))) + (substitute* "doc/reference/clutter-gst-docs.xml" + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + #t))) + (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)))))) (native-inputs - `(("glib:bin" ,glib "bin") ; for glib-mkenums + `(("docbook-xml" ,docbook-xml-4.1.2) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) ("pkg-config" ,pkg-config) - ("gobject-introspection" ,gobject-introspection))) - (inputs + ("python-wrapper" ,python-wrapper))) + (propagated-inputs `(("clutter" ,clutter) + ("cogl" ,cogl) + ("glib" ,glib) ("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base))) - (home-page "http://www.clutter-project.org") - (synopsis "Integration library for using GStreamer with Clutter") - (description - "Clutter-Gst is an integration library for using GStreamer with Clu= tter. -It provides a GStreamer sink to upload frames to GL and an actor that -implements the ClutterGstPlayer interface using playbin. Clutter is an -OpenGL-based interactive canvas library.") - (license license:lgpl2.0+))) + (synopsis "GStreamer integration library for Clutter") + (description "Clutter-Gst is an integration library for using GStrea= mer with +Clutter. It provides a GStreamer sink to upload frames to GL and an act= or that +implements the ClutterGstPlayer interface using playbin.") + (home-page "https://www.clutter-project.org") + (license license:lgpl2.1+))) =20 (define-public libchamplain (package --=20 2.26.2 --------------824DCEC6974BEE0181363053 Content-Type: text/x-patch; charset=UTF-8; name="0004-gnu-cogl-Update-package-definition.patch" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0004-gnu-cogl-Update-package-definition.patch" =46rom 475694aadd6cf2b6d1c4cbb058784e79ee9fb8eb Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Fri, 29 May 2020 16:43:44 -0400 Subject: [PATCH 4/4] gnu: cogl: Update package definition. * gnu/packages/gnome.scm (cogl): Update package definition. [build-system]: Change from gnu to glib-or-gtk. [outputs]: New output 'doc'. [arguments]<#:configure-flags>[--enable-sdl2]: New flag. [--enable-gtk-doc]: New flag. [--with-html-dir]: New flag. <#:phases>['patch-docbook-xml]: New phase. [native-inputs]: Add docbook-xml, gettext, gtk-doc and python-wrapper. [inputs]: Add libdrm and sdl2. Remove mesa, cairo, pango, gstreamer, gst-plugins-base and wayland. [propagated-inputs]: Add cairo, gstreamer, gst-plugins-base, mesa and wayland. [synopsis]: Modify. --- gnu/packages/gnome.scm | 124 +++++++++++++++++++++++++---------------- 1 file changed, 76 insertions(+), 48 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 54e1c940c6..93b3d64052 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -161,6 +161,7 @@ #:use-module (gnu packages rust) #:use-module (gnu packages samba) #:use-module (gnu packages scanner) + #:use-module (gnu packages sdl) #:use-module (gnu packages selinux) #:use-module (gnu packages slang) #:use-module (gnu packages speech) @@ -4711,70 +4712,97 @@ throughout GNOME for API documentation).") (source (origin (method url-fetch) - (uri (string-append "mirror://gnome/sources/cogl/" - (version-major+minor version) "/" - "cogl-" version ".tar.xz")) + (uri + (string-append "mirror://gnome/sources/cogl/" + (version-major+minor version) "/" + "cogl-" version ".tar.xz")) (sha256 (base32 "0x8v4n61q89qy27v824bqswpz6bmn801403w2q3pa1lcwk9ln4vd"))= )) ;; NOTE: mutter exports a bundled fork of cogl, so when making chang= es to ;; cogl, corresponding changes may be appropriate in mutter as well.= - (build-system gnu-build-system) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:disallowed-references (,xorg-server-for-tests) + #:configure-flags + (list + "--enable-cogl-gst" + "--enable-sdl2" + "--enable-wayland-egl-platform" + "--enable-wayland-egl-server" + "--enable-gtk-doc" + (string-append "--with-html-dir=3D" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html") + (string-append "--with-gl-libname=3D" + (assoc-ref %build-inputs "mesa") + "/lib/libGL.so")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let* ((xmldoc (string-append (assoc-ref inputs "docbook-xm= l") + "/xml/dtd/docbook"))) + (with-directory-excursion "doc/reference" + (substitute* + '("cogl/cogl-docs.xml.in" + "cogl/blend-strings.xml" + "cogl-gst/cogl-gst-docs.xml.in" + "cogl-2.0-experimental/cogl-2.0-experimental-docs= =2Exml.in" + "cogl-2.0-experimental/blend-strings.xml") + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd")))) + #t))) + (add-before 'check 'start-xorg-server + (lambda* (#:key tests? inputs #:allow-other-keys) + (if tests? + (begin + ;; The test suite requires a running X server. + (system (format #f "~a/bin/Xvfb :1 +extension GLX &" + (assoc-ref inputs "xorg-server"))) + (setenv "DISPLAY" ":1") + #t) + (format #t "test suite not run~%")) + #t))))) (native-inputs - `(("glib:bin" ,glib "bin") ; for glib-mkenums + `(("docbook-xml" ,docbook-xml-4.1.2) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) ("xorg-server" ,xorg-server-for-tests) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("python-wrapper" ,python-wrapper))) + (inputs + `(("libdrm" ,libdrm) + ("sdl2" ,sdl2))) (propagated-inputs - `(("glib" ,glib) - ("gdk-pixbuf" ,gdk-pixbuf) + `(("cairo" ,cairo) + ("glib" ,glib) + ("gdk-pixbuf+svg" ,gdk-pixbuf+svg) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) ("libx11" ,libx11) ("libxext" ,libxext) ("libxfixes" ,libxfixes) ("libxdamage" ,libxdamage) ("libxcomposite" ,libxcomposite) - ("libxrandr" ,libxrandr))) - (inputs - `(("mesa" ,mesa) - ("cairo" ,cairo) + ("libxrandr" ,libxrandr) + ("mesa" ,mesa) ("pango" ,pango) - ("gstreamer" ,gstreamer) - ("gst-plugins-base" ,gst-plugins-base) ("wayland" ,wayland))) - (arguments - `(#:disallowed-references (,xorg-server-for-tests) - #:configure-flags (list "--enable-cogl-gst" - "--enable-wayland-egl-platform" - "--enable-wayland-egl-server" - - ;; Arrange to pass an absolute file name = to - ;; dlopen for libGL.so. - (string-append "--with-gl-libname=3D" - (assoc-ref %build-inputs "= mesa") - "/lib/libGL.so")) - #:phases - (modify-phases %standard-phases - (add-before 'check 'start-xorg-server - (lambda* (#:key tests? inputs #:allow-other-keys) - (if tests? - (begin - ;; The test suite requires a running X serv= er. - (system (format #f "~a/bin/Xvfb :1 +extensi= on GLX &" - (assoc-ref inputs "xorg-ser= ver"))) - (setenv "DISPLAY" ":1") - #t) - (format #t "test suite not run~%")) - #t))))) + (synopsis "Hardware accelerated 3D graphics API") + (description "Cogl is a small library for using 3D graphics hardware= for +rendering. The API departs from the flat state machine style of OpenGL = and is +designed to make it easy to write orthogonal components that can render = without +stepping on each others toes.") (home-page "https://www.cogl3d.org") - (synopsis "Object oriented GL/GLES Abstraction/Utility Layer") - (description - "Cogl is a small library for using 3D graphics hardware to draw pre= tty -pictures. The API departs from the flat state machine style of OpenGL a= nd is -designed to make it easy to write orthogonal components that can render -without stepping on each others toes.") - (license (list license:expat ; most of the code - license:bsd-3 ; cogl/cogl-point-in-poly.c - license:sgifreeb2.0 ; cogl-path/tesselator/ - license:asl2.0)))) ; examples/android/ + (license + (list + license:expat ; most of the code + license:bsd-3 ; cogl/cogl-point-in-poly.c + license:sgifreeb2.0 ; cogl-path/tesselator/ + license:asl2.0)))) ; examples/android/ =20 (define-public clutter (package --=20 2.26.2 --------------824DCEC6974BEE0181363053-- --1PCO54gQPYpCN848Ub946ZB761caCfcQ4-- --I9hmKzd7eHfNuFKOECl1vPPBCPHisy1MG Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEJ0EvNKqRjepA0pQorm7zBG1ve1cFAl7Rdn8ACgkQrm7zBG1v e1dS7gf+NhvfmKLmb6XsvIBHkOvEWRhyR4pntdQNH+fG1sd25GwnrGfNimA0qH9Q 2gn/xtIGvSmr1Jj+C70L/beZPKl0fFS0ViY4S9QWMTDRvVeTqHM2n/kYjbmjr0b1 25bzfxZxG6oZT86ijahg/hze4eTUcA19ciZ//z4PCA3Rq+/tQlrugwFfe41GMzSN y+e0g8GkUJ/5y+0apf0s2wocH8RBJLCLXQh7ffK6XPRM0OmptuS5MGZ9Iafdnlfc bQO+vB3eKtz1xVM/KFJCEB3FsxR2AEv8nnCiaYAOS2tJwPg8M/uMNUI5G/YigXap XpsLxNUGtb8c4Usem0oXW1ROMrc1cg== =+eMS -----END PGP SIGNATURE----- --I9hmKzd7eHfNuFKOECl1vPPBCPHisy1MG--