@Danny Please find the attached patches.
Regards, RG.
From daaf04cbc2a1c9ad894fbe788e4089593d287c84 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> 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 changes ;; 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=true") + #: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-xml") + "/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=yes" - - ;; This produces share/doc/{clutter,cally}. - (string-append "--with-html-dir=" - (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 for -creating fast, mainly 2D single window applications such as media box UIs, -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+))) (define-public clutter-gtk (package -- 2.26.2
From d9ea6caf006819bc89b778a071b0ca46ea4b6d5e Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> 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=true") + #: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-xml") + "/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 for -creating fast, mainly 2D single window applications such as media box UIs, -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 integrate +Clutter into GTK+ applications and vice versa. It provides a GTK+ widget, +GtkClutterEmbed, for embedding the a Clutter stage into any GtkContainer; and +GtkClutterActor, a Clutter actor for embedding any GtkWidget inside a Clutter +stage.") + (home-page "https://www.clutter-project.org") + (license license:lgpl2.1+))) (define-public clutter-gst (package -- 2.26.2
From f8b35fa9f6e21a2d04f3449762fe9fd5a8fbc180 Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> 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-xml") + "/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 Clutter. -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 GStreamer with +Clutter. It provides a GStreamer sink to upload frames to GL and an actor that +implements the ClutterGstPlayer interface using playbin.") + (home-page "https://www.clutter-project.org") + (license license:lgpl2.1+))) (define-public libchamplain (package -- 2.26.2
From 475694aadd6cf2b6d1c4cbb058784e79ee9fb8eb Mon Sep 17 00:00:00 2001 From: Raghav Gururajan <raghavgurura...@disroot.org> 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 changes 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=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html") + (string-append "--with-gl-libname=" + (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-xml") + "/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.xml.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=" - (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 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))))) + (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 pretty -pictures. 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.") - (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/ (define-public clutter (package -- 2.26.2
signature.asc
Description: OpenPGP digital signature