[PATCH wip-gnome 0/8]: Misc.

  • Done
  • quality assurance status badge
Details
5 participants
  • ???
  • Leo Prikler
  • Maxime Devos
  • Mark H Weaver
  • Raghav Gururajan
Owner
unassigned
Submitted by
Raghav Gururajan
Severity
normal
R
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 1/8] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-1-rg@raghavgururajan.name
Remove inheritance to prevent rebuilds of packages like inkscape
and gtk+, whenever changes are made gtkmm@3.

* gnu/packages/gtk.scm (gtkmm-2)[build-system,outputs,arguments,
native-inputs,synopsis,description,home-page,license]: New fields.
---
gnu/packages/gtk.scm | 48 ++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 46 insertions(+), 2 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 04a0db1161..81ac4a7197 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1660,7 +1660,6 @@ tutorial.")
(define-public gtkmm-2
(package
- (inherit gtkmm)
(name "gtkmm")
(version "2.24.5")
(source
@@ -1672,12 +1671,57 @@ tutorial.")
name "-" version ".tar.xz"))
(sha256
(base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
+ (build-system glib-or-gtk-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests require a running X server.
+ (system "Xvfb :1 +extension GLX &")
+ (setenv "DISPLAY" ":1")
+ ;; For missing '/etc/machine-id'.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #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/doc")
+ (string-append doc "/share/doc"))
+ #t))))))
+ (native-inputs
+ `(("dot" ,graphviz)
+ ("doxygen" ,doxygen)
+ ("m4" ,m4)
+ ("mm-common" ,mm-common)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("xsltproc" ,libxslt)
+ ("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
`(("atkmm" ,atkmm-2.28)
("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm-2.64)
("gtk+" ,gtk+-2)
- ("pangomm" ,pangomm-2.42)))))
+ ("pangomm" ,pangomm-2.42)))
+ (synopsis "C++ Interfaces for GTK+ and GNOME")
+ (description "GTKmm is the official C++ interface for the popular GUI
+library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
+widgets that are easily extensible via inheritance. You can create user
+interfaces either in code or with the Glade User Interface designer, using
+libglademm. There's extensive documentation, including API reference and a
+tutorial.")
+ (home-page "https://gtkmm.org/")
+ (license
+ (list
+ ;; Library
+ license:lgpl2.1+
+ ;; Tools
+ license:gpl2+))))
(define-public gtksourceviewmm
(package
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 2/8] gnu: gtkmm: Change build-system.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-2-rg@raghavgururajan.name
Switch to meson-build-system, as its preferred by the project.
Preserve building of documentation.

* gnu/packages/gtk.scm (gtkmm)[build-system]: Change from glib-or-gtk
to meson.
[configure-flags](build-documentation): New flag.
---
gnu/packages/gtk.scm | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

Toggle diff (21 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 81ac4a7197..a7e387a47d 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1606,10 +1606,12 @@ library.")
name "-" version ".tar.xz"))
(sha256
(base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv"))))
- (build-system glib-or-gtk-build-system)
+ (build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
- `(#:phases
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags '("-Dbuild-documentation=true")
+ #:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-3-rg@raghavgururajan.name
* gnu/packages/gtk.scm (gtkmm)[native-inputs]: Add glib:bin.
[propagated-inputs]: Change; atkmm to atkmm-2.28, pangomm to pangomm-2.42,
and cairomm to cairomm-1.13.
---
gnu/packages/gtk.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a7e387a47d..86490115d6 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1633,6 +1633,7 @@ library.")
(native-inputs
`(("dot" ,graphviz)
("doxygen" ,doxygen)
+ ("glib:bin" ,glib "bin") ; For glib-compile-resources
("m4" ,m4)
("mm-common" ,mm-common)
("perl" ,perl)
@@ -1640,11 +1641,11 @@ library.")
("xsltproc" ,libxslt)
("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
- `(("atkmm" ,atkmm)
- ("cairomm" ,cairomm)
+ `(("atkmm" ,atkmm-2.28)
+ ("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm)
("gtk+" ,gtk+)
- ("pangomm" ,pangomm)))
+ ("pangomm" ,pangomm-2.42)))
(synopsis "C++ Interfaces for GTK+ and GNOME")
(description "GTKmm is the official C++ interface for the popular GUI
library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 4/8] gnu: libsoup: Simplify adjustment of tests and disable ssl-test.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-4-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
[native-inputs]: Remove gnutls.
---
gnu/packages/gnome.scm | 70 +++++++-----------------------------------
1 file changed, 11 insertions(+), 59 deletions(-)

Toggle diff (90 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 97cf80c586..29779c39af 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4927,64 +4927,17 @@ libxml to ease remote use of the RESTful API.")
#t)))
(add-after 'unpack 'adjust-tests
(lambda _
- ;; This test fails due to missing /etc/nsswitch.conf
- ;; in the build environment.
- (substitute* "tests/socket-test.c"
- ((".*/sockets/unconnected.*") ""))
-
- ;; These fail because "subdomain.localhost" does not resolve in
- ;; the build environment.
- (substitute* "tests/hsts-test.c"
- ((".*/hsts/basic.*") "")
- ((".*/hsts/subdomains.*") "")
- ((".*/hsts/superdomain.*") "")
- ((".*/hsts/utf8-address.*") ""))
- (substitute* "tests/hsts-db-test.c"
- ((".*/hsts-db/subdomains.*") ""))
-
- ;; Generate a self-signed certificate that has "localhost" as its
- ;; 'dnsName'. Failing to do that, and starting with GnuTLS
- ;; 3.5.12, tests such as "ssl-tests" fail:
- ;;
- ;; ERROR:ssl-test.c:406:do_tls_interaction_test: Unexpected status 6 Unacceptable TLS certificate (expected 200 OK)
- ;;
- ;; 'certtool' is interactive so we have to pipe it the answers.
- ;; Reported at <https://bugzilla.gnome.org/show_bug.cgi?id=784696>.
- (let ((pipe (open-output-pipe "certtool --generate-self-signed \
- --load-privkey tests/test-key.pem --outfile tests/test-cert.pem")))
- (for-each (lambda (line)
- (display line pipe)
- (newline pipe))
- '("" ;Common name
- "" ;UID
- "Guix" ;Organizational unit name
- "GNU" ;Organization name
- "" ;Locality name
- "" ;State or province
- "" ;Country
- "" ;subject's domain component (DC)
- "" ;E-mail
- "" ;serial number
- "-1" ;expiration time
- "N" ;belong to authority?
- "N" ;web client certificate?
- "N" ;IPsec IKE?
- "Y" ;web server certificate?
- "localhost" ;dnsName of subject
- "" ;dnsName of subject (end)
- "" ;URI of subject
- "127.0.0.1" ;IP address of subject
- "" ;signing?
- "" ;encryption (RSA)?
- "" ;data encryption?
- "" ;sign OCSP requests?
- "" ;sign code?
- "" ;time stamping?
- "" ;email protection?
- "" ;URI of the CRL distribution point
- "y" ;above info OK?
- ))
- (close-pipe pipe))
+ (substitute* "tests/meson.build"
+ ;; These fail because "subdomain.localhost" does not resolve in
+ ;; the build environment.
+ (("[ \t]*\\['hsts', true, \\[\\]\\],") "")
+ (("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
+ ;; This test fails due to missing /etc/nsswitch.conf
+ ;; in the build environment.
+ (("[ \t]*\\['socket', true, \\[\\]\\],") "")
+ ;; FIX-ME: ssl-test fails, starting with
+ ;; glib-networking 2.68.x.
+ (("[ \t]*\\['ssl', true, \\[\\]\\],") ""))
#t))
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
@@ -5006,7 +4959,6 @@ libxml to ease remote use of the RESTful API.")
("vala" ,vala)
("php" ,php)
("curl" ,curl)
- ("gnutls" ,gnutls) ;for 'certtool'
("httpd" ,httpd)))
(propagated-inputs
;; libsoup-2.4.pc refers to all these.
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 5/8] gnu: libsoup: Add missing argument and input.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-5-rg@raghavgururajan.name
Propagate glib-networking as per .pc file.

* gnu/packages/gnome.scm (libsoup)[arguments](glib-or-gtk): New argument.
[inputs]: Add samba. Move glib-networking to ...
[propagated-inputs]: ... here.
---
gnu/packages/gnome.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 29779c39af..b69980091b 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4913,7 +4913,7 @@ libxml to ease remote use of the RESTful API.")
`(#:modules ((guix build utils)
(guix build meson-build-system)
(ice-9 popen))
-
+ #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#:configure-flags '("-Dgtk_doc=true")
#:phases
(modify-phases %standard-phases
@@ -4964,13 +4964,14 @@ libxml to ease remote use of the RESTful API.")
;; libsoup-2.4.pc refers to all these.
`(("brotli" ,google-brotli)
("glib" ,glib)
+ ("glib-networking" ,glib-networking)
("libpsl" ,libpsl)
("libxml2" ,libxml2)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(inputs
- `(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)))
+ `(("mit-krb5" ,mit-krb5)
+ ("ntlm_auth" ,samba)))
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
(description
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 6/8] gnu: libsoup: Update home-page.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-6-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[home-page]: Modify.
---
gnu/packages/gnome.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b69980091b..db811573c4 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4972,7 +4972,7 @@ libxml to ease remote use of the RESTful API.")
(inputs
`(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba)))
- (home-page "https://live.gnome.org/LibSoup/")
+ (home-page "https://wiki.gnome.org/Projects/libsoup")
(synopsis "GLib-based HTTP Library")
(description
"LibSoup is an HTTP client/server library for GNOME. It uses GObjects
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 7/8] gnu: python-pycairo: Update to 1.20.0.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-7-rg@raghavgururajan.name
* gnu/packages/gtk.scm (python-pycairo)[version]: Update to 1.20.0.
---
gnu/packages/gtk.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 86490115d6..e7f71fa739 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1761,7 +1761,7 @@ printing and other features typical of a source code editor.")
(define-public python-pycairo
(package
(name "python-pycairo")
- (version "1.19.1")
+ (version "1.20.0")
(source
(origin
(method url-fetch)
@@ -1769,7 +1769,7 @@ printing and other features typical of a source code editor.")
version "/pycairo-" version ".tar.gz"))
(sha256
(base32
- "111fav9m1iagw3nh2ws2vzkjh34r97yl7rdlpvsngsqg521k251c"))))
+ "1326aa2ybhhhrvz3n4p22z5sic25m016ddb5yq0hvbprnw6a35an"))))
(build-system python-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 10:11
[PATCH wip-gnome 8/8] gnu: python-pygobject: Update to 3.40.1.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426081145.28926-8-rg@raghavgururajan.name
* gnu/packages/glib.scm (python-pygobject)[version]: Update to 3.40.1.
[native-inputs]: Add python-wrapper.
---
gnu/packages/glib.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index fd88d7329f..31cd13e9c7 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -776,7 +776,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
- (version "3.34.0")
+ (version "3.40.1")
(source
(origin
(method url-fetch)
@@ -785,7 +785,7 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
- "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))
+ "0d80g5kgf2i9cginyhalvb7ibfk9g30yilqzmcsw6h6byj8xbih0"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -800,7 +800,8 @@ useful for C++.")
(native-inputs
`(("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config)
- ("python-pytest" ,python-pytest)))
+ ("python-pytest" ,python-pytest)
+ ("python-wrapper" ,python-wrapper))) ; For patching shebangs
(inputs
`(("python" ,python)
("python-pycairo" ,python-pycairo)
--
2.31.1
L
L
Leo Prikler wrote on 26 Apr 2021 10:34
Re: [PATCH wip-gnome 4/8] gnu: libsoup: Simplify adjustment of tests and disable ssl-test.
795eec65c654e1f74d147b3e39729ef41086d9ff.camel@student.tugraz.at
Am Montag, den 26.04.2021, 04:11 -0400 schrieb Raghav Gururajan:
Toggle quote (108 lines)
> * gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
> [native-inputs]: Remove gnutls.
> ---
> gnu/packages/gnome.scm | 70 +++++++---------------------------------
> --
> 1 file changed, 11 insertions(+), 59 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 97cf80c586..29779c39af 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -4927,64 +4927,17 @@ libxml to ease remote use of the RESTful
> API.")
> #t)))
> (add-after 'unpack 'adjust-tests
> (lambda _
> - ;; This test fails due to missing /etc/nsswitch.conf
> - ;; in the build environment.
> - (substitute* "tests/socket-test.c"
> - ((".*/sockets/unconnected.*") ""))
> -
> - ;; These fail because "subdomain.localhost" does not
> resolve in
> - ;; the build environment.
> - (substitute* "tests/hsts-test.c"
> - ((".*/hsts/basic.*") "")
> - ((".*/hsts/subdomains.*") "")
> - ((".*/hsts/superdomain.*") "")
> - ((".*/hsts/utf8-address.*") ""))
> - (substitute* "tests/hsts-db-test.c"
> - ((".*/hsts-db/subdomains.*") ""))
> -
> - ;; Generate a self-signed certificate that has
> "localhost" as its
> - ;; 'dnsName'. Failing to do that, and starting with
> GnuTLS
> - ;; 3.5.12, tests such as "ssl-tests" fail:
> - ;;
> - ;; ERROR:ssl-test.c:406:do_tls_interaction_test:
> Unexpected status 6 Unacceptable TLS certificate (expected 200 OK)
> - ;;
> - ;; 'certtool' is interactive so we have to pipe it the
> answers.
> - ;; Reported at <
> https://bugzilla.gnome.org/show_bug.cgi?id=784696>;.
> - (let ((pipe (open-output-pipe "certtool --generate-
> self-signed \
> - --load-privkey tests/test-key.pem --outfile tests/test-cert.pem")))
> - (for-each (lambda (line)
> - (display line pipe)
> - (newline pipe))
> - '("" ;Common name
> - "" ;UID
> - "Guix" ;Organizational unit
> name
> - "GNU" ;Organization name
> - "" ;Locality name
> - "" ;State or province
> - "" ;Country
> - "" ;subject's domain
> component (DC)
> - "" ;E-mail
> - "" ;serial number
> - "-1" ;expiration time
> - "N" ;belong to authority?
> - "N" ;web client certificate?
> - "N" ;IPsec IKE?
> - "Y" ;web server certificate?
> - "localhost" ;dnsName of subject
> - "" ;dnsName of subject
> (end)
> - "" ;URI of subject
> - "127.0.0.1" ;IP address of subject
> - "" ;signing?
> - "" ;encryption (RSA)?
> - "" ;data encryption?
> - "" ;sign OCSP requests?
> - "" ;sign code?
> - "" ;time stamping?
> - "" ;email protection?
> - "" ;URI of the CRL
> distribution point
> - "y" ;above info OK?
> - ))
> - (close-pipe pipe))
> + (substitute* "tests/meson.build"
> + ;; These fail because "subdomain.localhost" does not
> resolve in
> + ;; the build environment.
> + (("[ \t]*\\['hsts', true, \\[\\]\\],") "")
> + (("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
> + ;; This test fails due to missing /etc/nsswitch.conf
> + ;; in the build environment.
> + (("[ \t]*\\['socket', true, \\[\\]\\],") "")
> + ;; FIX-ME: ssl-test fails, starting with
> + ;; glib-networking 2.68.x.
> + (("[ \t]*\\['ssl', true, \\[\\]\\],") ""))
> #t))
> (add-after 'install 'move-doc
> (lambda* (#:key outputs #:allow-other-keys)
> @@ -5006,7 +4959,6 @@ libxml to ease remote use of the RESTful API.")
> ("vala" ,vala)
> ("php" ,php)
> ("curl" ,curl)
> - ("gnutls" ,gnutls) ;for 'certtool'
> ("httpd" ,httpd)))
> (propagated-inputs
> ;; libsoup-2.4.pc refers to all these.
This does not look much like a simplification to me. Instead, the
regexp seems to have been more complicated, and also the patchee has
been changed from some C file to meson.build. Is this necessary to
disable the SSL test? If not, try separating this patch into two
parts.

Regards,
Leo
L
L
Leo Prikler wrote on 26 Apr 2021 10:40
Re: [PATCH wip-gnome 5/8] gnu: libsoup: Add missing argument and input.
73660fda850714bb152afc392df78addecd29932.camel@student.tugraz.at
This headline does not match the contents of the patch.

Am Montag, den 26.04.2021, 04:11 -0400 schrieb Raghav Gururajan:
Toggle quote (1 lines)
> Propagate glib-networking as per .pc file.
This looks like it could be its own patch were it not for the fact,
that samba needs to be added as well (what for?)

Toggle quote (18 lines)
> * gnu/packages/gnome.scm (libsoup)[arguments](glib-or-gtk): New
> argument.
> [inputs]: Add samba. Move glib-networking to ...
> [propagated-inputs]: ... here.
> ---
> gnu/packages/gnome.scm | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 29779c39af..b69980091b 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -4913,7 +4913,7 @@ libxml to ease remote use of the RESTful API.")
> `(#:modules ((guix build utils)
> (guix build meson-build-system)
> (ice-9 popen))
> -
> + #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
That doesn't sound very sure to me. Why are you wrapping binaries
and/or compiling schemas?
Toggle quote (9 lines)
> #:configure-flags '("-Dgtk_doc=true")
> #:phases
> (modify-phases %standard-phases
> @@ -4964,13 +4964,14 @@ libxml to ease remote use of the RESTful
> API.")
> ;; libsoup-2.4.pc refers to all these.
> `(("brotli" ,google-brotli)
> ("glib" ,glib)
> + ("glib-networking" ,glib-networking)
I haven't checked, but if the .pc file says so, so be it.
Toggle quote (9 lines)
> ("libpsl" ,libpsl)
> ("libxml2" ,libxml2)
> ("sqlite" ,sqlite)
> ("zlib" ,zlib)))
> (inputs
> - `(("glib-networking" ,glib-networking)
> - ("mit-krb5" ,mit-krb5)))
> + `(("mit-krb5" ,mit-krb5)
> + ("ntlm_auth" ,samba)))
Careful with the indentation.
Toggle quote (4 lines)
> (synopsis "GLib-based HTTP Library")
> (description

Regards,
Leo
L
L
Leo Prikler wrote on 26 Apr 2021 10:46
Re: [PATCH wip-gnome 6/8] gnu: libsoup: Update home-page.
8a2e86713aaa81cf8e9e69e3df6a1c1abf5210d3.camel@student.tugraz.at
Am Montag, den 26.04.2021, 04:11 -0400 schrieb Raghav Gururajan:
Toggle quote (19 lines)
> * gnu/packages/gnome.scm (libsoup)[home-page]: Modify.
> ---
> gnu/packages/gnome.scm | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index b69980091b..db811573c4 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -4972,7 +4972,7 @@ libxml to ease remote use of the RESTful API.")
> (inputs
> `(("mit-krb5" ,mit-krb5)
> ("ntlm_auth" ,samba)))
> - (home-page "https://live.gnome.org/LibSoup/")
> + (home-page "https://wiki.gnome.org/Projects/libsoup")
> (synopsis "GLib-based HTTP Library")
> (description
> "LibSoup is an HTTP client/server library for GNOME. It uses
> GObjects
LGTM.

For your information, libsoup has 254 transitive dependants, so if some
of your changes don't require the rest of wip-gnome, they can be pushed
to master. Please go through the proper cleanup/review process for all
of them prior to that, however.

Regards,
Leo
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 02/10] gnu: gtkmm: Change build-system.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-2-rg@raghavgururajan.name
Switch to meson-build-system, as its preferred by the project.
Preserve building of documentation.

* gnu/packages/gtk.scm (gtkmm)[build-system]: Change from glib-or-gtk
to meson.
[configure-flags](build-documentation): New flag.
---
gnu/packages/gtk.scm | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

Toggle diff (21 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 81ac4a7197..a7e387a47d 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1606,10 +1606,12 @@ library.")
name "-" version ".tar.xz"))
(sha256
(base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv"))))
- (build-system glib-or-gtk-build-system)
+ (build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
- `(#:phases
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags '("-Dbuild-documentation=true")
+ #:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 01/10] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-1-rg@raghavgururajan.name
Remove inheritance to prevent rebuilds of packages like inkscape
and gtk+, whenever changes are made gtkmm@3.

* gnu/packages/gtk.scm (gtkmm-2)[build-system,outputs,arguments,
native-inputs,synopsis,description,home-page,license]: New fields.
---
gnu/packages/gtk.scm | 48 ++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 46 insertions(+), 2 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 04a0db1161..81ac4a7197 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1660,7 +1660,6 @@ tutorial.")
(define-public gtkmm-2
(package
- (inherit gtkmm)
(name "gtkmm")
(version "2.24.5")
(source
@@ -1672,12 +1671,57 @@ tutorial.")
name "-" version ".tar.xz"))
(sha256
(base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
+ (build-system glib-or-gtk-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests require a running X server.
+ (system "Xvfb :1 +extension GLX &")
+ (setenv "DISPLAY" ":1")
+ ;; For missing '/etc/machine-id'.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #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/doc")
+ (string-append doc "/share/doc"))
+ #t))))))
+ (native-inputs
+ `(("dot" ,graphviz)
+ ("doxygen" ,doxygen)
+ ("m4" ,m4)
+ ("mm-common" ,mm-common)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("xsltproc" ,libxslt)
+ ("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
`(("atkmm" ,atkmm-2.28)
("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm-2.64)
("gtk+" ,gtk+-2)
- ("pangomm" ,pangomm-2.42)))))
+ ("pangomm" ,pangomm-2.42)))
+ (synopsis "C++ Interfaces for GTK+ and GNOME")
+ (description "GTKmm is the official C++ interface for the popular GUI
+library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
+widgets that are easily extensible via inheritance. You can create user
+interfaces either in code or with the Glade User Interface designer, using
+libglademm. There's extensive documentation, including API reference and a
+tutorial.")
+ (home-page "https://gtkmm.org/")
+ (license
+ (list
+ ;; Library
+ license:lgpl2.1+
+ ;; Tools
+ license:gpl2+))))
(define-public gtksourceviewmm
(package
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 03/10] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-3-rg@raghavgururajan.name
* gnu/packages/gtk.scm (gtkmm)[native-inputs]: Add glib:bin.
[propagated-inputs]: Change; atkmm to atkmm-2.28, pangomm to pangomm-2.42,
and cairomm to cairomm-1.13.
---
gnu/packages/gtk.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a7e387a47d..86490115d6 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1633,6 +1633,7 @@ library.")
(native-inputs
`(("dot" ,graphviz)
("doxygen" ,doxygen)
+ ("glib:bin" ,glib "bin") ; For glib-compile-resources
("m4" ,m4)
("mm-common" ,mm-common)
("perl" ,perl)
@@ -1640,11 +1641,11 @@ library.")
("xsltproc" ,libxslt)
("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
- `(("atkmm" ,atkmm)
- ("cairomm" ,cairomm)
+ `(("atkmm" ,atkmm-2.28)
+ ("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm)
("gtk+" ,gtk+)
- ("pangomm" ,pangomm)))
+ ("pangomm" ,pangomm-2.42)))
(synopsis "C++ Interfaces for GTK+ and GNOME")
(description "GTKmm is the official C++ interface for the popular GUI
library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 04/10] gnu: libsoup: Simplify adjustment of tests.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-4-rg@raghavgururajan.name
Switch from using mutiple C files to single meson.build file.

* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
---
gnu/packages/gnome.scm | 22 ++++++++--------------
1 file changed, 8 insertions(+), 14 deletions(-)

Toggle diff (35 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 97cf80c586..c8e7b55f6c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4927,20 +4927,14 @@ libxml to ease remote use of the RESTful API.")
#t)))
(add-after 'unpack 'adjust-tests
(lambda _
- ;; This test fails due to missing /etc/nsswitch.conf
- ;; in the build environment.
- (substitute* "tests/socket-test.c"
- ((".*/sockets/unconnected.*") ""))
-
- ;; These fail because "subdomain.localhost" does not resolve in
- ;; the build environment.
- (substitute* "tests/hsts-test.c"
- ((".*/hsts/basic.*") "")
- ((".*/hsts/subdomains.*") "")
- ((".*/hsts/superdomain.*") "")
- ((".*/hsts/utf8-address.*") ""))
- (substitute* "tests/hsts-db-test.c"
- ((".*/hsts-db/subdomains.*") ""))
+ (substitute* "tests/meson.build"
+ ;; These fail because "subdomain.localhost" does not resolve in
+ ;; the build environment.
+ (("[ \t]*\\['hsts', true, \\[\\]\\],") "")
+ (("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
+ ;; This test fails due to missing /etc/nsswitch.conf
+ ;; in the build environment.
+ (("[ \t]*\\['socket', true, \\[\\]\\],") ""))
;; Generate a self-signed certificate that has "localhost" as its
;; 'dnsName'. Failing to do that, and starting with GnuTLS
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 05/10] gnu: libsoup: Disable ssl-test.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-5-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
[native-inputs]: Remove gnutls.
---
gnu/packages/gnome.scm | 50 ++++--------------------------------------
1 file changed, 4 insertions(+), 46 deletions(-)

Toggle diff (70 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index c8e7b55f6c..29779c39af 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4934,51 +4934,10 @@ libxml to ease remote use of the RESTful API.")
(("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
;; This test fails due to missing /etc/nsswitch.conf
;; in the build environment.
- (("[ \t]*\\['socket', true, \\[\\]\\],") ""))
-
- ;; Generate a self-signed certificate that has "localhost" as its
- ;; 'dnsName'. Failing to do that, and starting with GnuTLS
- ;; 3.5.12, tests such as "ssl-tests" fail:
- ;;
- ;; ERROR:ssl-test.c:406:do_tls_interaction_test: Unexpected status 6 Unacceptable TLS certificate (expected 200 OK)
- ;;
- ;; 'certtool' is interactive so we have to pipe it the answers.
- ;; Reported at <https://bugzilla.gnome.org/show_bug.cgi?id=784696>.
- (let ((pipe (open-output-pipe "certtool --generate-self-signed \
- --load-privkey tests/test-key.pem --outfile tests/test-cert.pem")))
- (for-each (lambda (line)
- (display line pipe)
- (newline pipe))
- '("" ;Common name
- "" ;UID
- "Guix" ;Organizational unit name
- "GNU" ;Organization name
- "" ;Locality name
- "" ;State or province
- "" ;Country
- "" ;subject's domain component (DC)
- "" ;E-mail
- "" ;serial number
- "-1" ;expiration time
- "N" ;belong to authority?
- "N" ;web client certificate?
- "N" ;IPsec IKE?
- "Y" ;web server certificate?
- "localhost" ;dnsName of subject
- "" ;dnsName of subject (end)
- "" ;URI of subject
- "127.0.0.1" ;IP address of subject
- "" ;signing?
- "" ;encryption (RSA)?
- "" ;data encryption?
- "" ;sign OCSP requests?
- "" ;sign code?
- "" ;time stamping?
- "" ;email protection?
- "" ;URI of the CRL distribution point
- "y" ;above info OK?
- ))
- (close-pipe pipe))
+ (("[ \t]*\\['socket', true, \\[\\]\\],") "")
+ ;; FIX-ME: ssl-test fails, starting with
+ ;; glib-networking 2.68.x.
+ (("[ \t]*\\['ssl', true, \\[\\]\\],") ""))
#t))
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
@@ -5000,7 +4959,6 @@ libxml to ease remote use of the RESTful API.")
("vala" ,vala)
("php" ,php)
("curl" ,curl)
- ("gnutls" ,gnutls) ;for 'certtool'
("httpd" ,httpd)))
(propagated-inputs
;; libsoup-2.4.pc refers to all these.
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 06/10] gnu: libsoup: Add missing argument and input.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-6-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[arguments](glib-or-gtk): New argument.
[inputs]: Add samba.
---
gnu/packages/gnome.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

Toggle diff (25 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 29779c39af..21f5eaa4c9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4913,7 +4913,7 @@ libxml to ease remote use of the RESTful API.")
`(#:modules ((guix build utils)
(guix build meson-build-system)
(ice-9 popen))
-
+ #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#:configure-flags '("-Dgtk_doc=true")
#:phases
(modify-phases %standard-phases
@@ -4970,7 +4970,8 @@ libxml to ease remote use of the RESTful API.")
("zlib" ,zlib)))
(inputs
`(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)))
+ ("mit-krb5" ,mit-krb5)
+ ("ntlm_auth" ,samba))) ; For ntlm_auth support
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
(description
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 07/10] gnu: libsoup: Propagate glib-networking.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-7-rg@raghavgururajan.name
Propagate glib-networking as per .pc file.

* gnu/packages/gnome.scm (libsoup)[inputs]: Move glib-networking to ...
[propagated-inputs]: ... here.
---
gnu/packages/gnome.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 21f5eaa4c9..ae1238ff5e 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4964,13 +4964,13 @@ libxml to ease remote use of the RESTful API.")
;; libsoup-2.4.pc refers to all these.
`(("brotli" ,google-brotli)
("glib" ,glib)
+ ("glib-networking" ,glib-networking)
("libpsl" ,libpsl)
("libxml2" ,libxml2)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(inputs
- `(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)
+ `(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba))) ; For ntlm_auth support
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 08/10] gnu: libsoup: Update home-page.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-8-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[home-page]: Modify.
---
gnu/packages/gnome.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index ae1238ff5e..9b0850e0b9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4972,7 +4972,7 @@ libxml to ease remote use of the RESTful API.")
(inputs
`(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba))) ; For ntlm_auth support
- (home-page "https://live.gnome.org/LibSoup/")
+ (home-page "https://wiki.gnome.org/Projects/libsoup")
(synopsis "GLib-based HTTP Library")
(description
"LibSoup is an HTTP client/server library for GNOME. It uses GObjects
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 09/10] gnu: python-pycairo: Update to 1.20.0.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-9-rg@raghavgururajan.name
* gnu/packages/gtk.scm (python-pycairo)[version]: Update to 1.20.0.
---
gnu/packages/gtk.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 86490115d6..e7f71fa739 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1761,7 +1761,7 @@ printing and other features typical of a source code editor.")
(define-public python-pycairo
(package
(name "python-pycairo")
- (version "1.19.1")
+ (version "1.20.0")
(source
(origin
(method url-fetch)
@@ -1769,7 +1769,7 @@ printing and other features typical of a source code editor.")
version "/pycairo-" version ".tar.gz"))
(sha256
(base32
- "111fav9m1iagw3nh2ws2vzkjh34r97yl7rdlpvsngsqg521k251c"))))
+ "1326aa2ybhhhrvz3n4p22z5sic25m016ddb5yq0hvbprnw6a35an"))))
(build-system python-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:08
[PATCH wip-gnome v2 10/10] gnu: python-pygobject: Update to 3.40.1.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426090823.30672-10-rg@raghavgururajan.name
* gnu/packages/glib.scm (python-pygobject)[version]: Update to 3.40.1.
[native-inputs]: Add python-wrapper.
---
gnu/packages/glib.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index fd88d7329f..31cd13e9c7 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -776,7 +776,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
- (version "3.34.0")
+ (version "3.40.1")
(source
(origin
(method url-fetch)
@@ -785,7 +785,7 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
- "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))
+ "0d80g5kgf2i9cginyhalvb7ibfk9g30yilqzmcsw6h6byj8xbih0"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -800,7 +800,8 @@ useful for C++.")
(native-inputs
`(("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config)
- ("python-pytest" ,python-pytest)))
+ ("python-pytest" ,python-pytest)
+ ("python-wrapper" ,python-wrapper))) ; For patching shebangs
(inputs
`(("python" ,python)
("python-pycairo" ,python-pycairo)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 02/10] gnu: gtkmm: Change build-system.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-2-rg@raghavgururajan.name
Switch to meson-build-system, as its preferred by the project.
Preserve building of documentation.

* gnu/packages/gtk.scm (gtkmm)[build-system]: Change from glib-or-gtk
to meson.
[configure-flags](build-documentation): New flag.
---
gnu/packages/gtk.scm | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

Toggle diff (21 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 81ac4a7197..a7e387a47d 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1606,10 +1606,12 @@ library.")
name "-" version ".tar.xz"))
(sha256
(base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv"))))
- (build-system glib-or-gtk-build-system)
+ (build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
- `(#:phases
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags '("-Dbuild-documentation=true")
+ #:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 03/10] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-3-rg@raghavgururajan.name
* gnu/packages/gtk.scm (gtkmm)[native-inputs]: Add glib:bin.
[propagated-inputs]: Change; atkmm to atkmm-2.28, pangomm to pangomm-2.42,
and cairomm to cairomm-1.13.
---
gnu/packages/gtk.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a7e387a47d..86490115d6 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1633,6 +1633,7 @@ library.")
(native-inputs
`(("dot" ,graphviz)
("doxygen" ,doxygen)
+ ("glib:bin" ,glib "bin") ; For glib-compile-resources
("m4" ,m4)
("mm-common" ,mm-common)
("perl" ,perl)
@@ -1640,11 +1641,11 @@ library.")
("xsltproc" ,libxslt)
("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
- `(("atkmm" ,atkmm)
- ("cairomm" ,cairomm)
+ `(("atkmm" ,atkmm-2.28)
+ ("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm)
("gtk+" ,gtk+)
- ("pangomm" ,pangomm)))
+ ("pangomm" ,pangomm-2.42)))
(synopsis "C++ Interfaces for GTK+ and GNOME")
(description "GTKmm is the official C++ interface for the popular GUI
library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 01/10] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-1-rg@raghavgururajan.name
Remove inheritance to prevent rebuilds of packages like inkscape
and gtk+, whenever changes are made to gtkmm@3.

* gnu/packages/gtk.scm (gtkmm-2)[build-system,outputs,arguments,
native-inputs,synopsis,description,home-page,license]: New fields.
---
gnu/packages/gtk.scm | 48 ++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 46 insertions(+), 2 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 04a0db1161..81ac4a7197 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1660,7 +1660,6 @@ tutorial.")
(define-public gtkmm-2
(package
- (inherit gtkmm)
(name "gtkmm")
(version "2.24.5")
(source
@@ -1672,12 +1671,57 @@ tutorial.")
name "-" version ".tar.xz"))
(sha256
(base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
+ (build-system glib-or-gtk-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests require a running X server.
+ (system "Xvfb :1 +extension GLX &")
+ (setenv "DISPLAY" ":1")
+ ;; For missing '/etc/machine-id'.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #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/doc")
+ (string-append doc "/share/doc"))
+ #t))))))
+ (native-inputs
+ `(("dot" ,graphviz)
+ ("doxygen" ,doxygen)
+ ("m4" ,m4)
+ ("mm-common" ,mm-common)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("xsltproc" ,libxslt)
+ ("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
`(("atkmm" ,atkmm-2.28)
("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm-2.64)
("gtk+" ,gtk+-2)
- ("pangomm" ,pangomm-2.42)))))
+ ("pangomm" ,pangomm-2.42)))
+ (synopsis "C++ Interfaces for GTK+ and GNOME")
+ (description "GTKmm is the official C++ interface for the popular GUI
+library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
+widgets that are easily extensible via inheritance. You can create user
+interfaces either in code or with the Glade User Interface designer, using
+libglademm. There's extensive documentation, including API reference and a
+tutorial.")
+ (home-page "https://gtkmm.org/")
+ (license
+ (list
+ ;; Library
+ license:lgpl2.1+
+ ;; Tools
+ license:gpl2+))))
(define-public gtksourceviewmm
(package
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 04/10] gnu: libsoup: Simplify adjustment of tests.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-4-rg@raghavgururajan.name
Switch from using mutiple C files to single meson.build file.

* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
---
gnu/packages/gnome.scm | 22 ++++++++--------------
1 file changed, 8 insertions(+), 14 deletions(-)

Toggle diff (35 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 97cf80c586..c8e7b55f6c 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4927,20 +4927,14 @@ libxml to ease remote use of the RESTful API.")
#t)))
(add-after 'unpack 'adjust-tests
(lambda _
- ;; This test fails due to missing /etc/nsswitch.conf
- ;; in the build environment.
- (substitute* "tests/socket-test.c"
- ((".*/sockets/unconnected.*") ""))
-
- ;; These fail because "subdomain.localhost" does not resolve in
- ;; the build environment.
- (substitute* "tests/hsts-test.c"
- ((".*/hsts/basic.*") "")
- ((".*/hsts/subdomains.*") "")
- ((".*/hsts/superdomain.*") "")
- ((".*/hsts/utf8-address.*") ""))
- (substitute* "tests/hsts-db-test.c"
- ((".*/hsts-db/subdomains.*") ""))
+ (substitute* "tests/meson.build"
+ ;; These fail because "subdomain.localhost" does not resolve in
+ ;; the build environment.
+ (("[ \t]*\\['hsts', true, \\[\\]\\],") "")
+ (("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
+ ;; This test fails due to missing /etc/nsswitch.conf
+ ;; in the build environment.
+ (("[ \t]*\\['socket', true, \\[\\]\\],") ""))
;; Generate a self-signed certificate that has "localhost" as its
;; 'dnsName'. Failing to do that, and starting with GnuTLS
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 05/10] gnu: libsoup: Disable ssl-test.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-5-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
[native-inputs]: Remove gnutls.
---
gnu/packages/gnome.scm | 50 ++++--------------------------------------
1 file changed, 4 insertions(+), 46 deletions(-)

Toggle diff (70 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index c8e7b55f6c..29779c39af 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4934,51 +4934,10 @@ libxml to ease remote use of the RESTful API.")
(("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
;; This test fails due to missing /etc/nsswitch.conf
;; in the build environment.
- (("[ \t]*\\['socket', true, \\[\\]\\],") ""))
-
- ;; Generate a self-signed certificate that has "localhost" as its
- ;; 'dnsName'. Failing to do that, and starting with GnuTLS
- ;; 3.5.12, tests such as "ssl-tests" fail:
- ;;
- ;; ERROR:ssl-test.c:406:do_tls_interaction_test: Unexpected status 6 Unacceptable TLS certificate (expected 200 OK)
- ;;
- ;; 'certtool' is interactive so we have to pipe it the answers.
- ;; Reported at <https://bugzilla.gnome.org/show_bug.cgi?id=784696>.
- (let ((pipe (open-output-pipe "certtool --generate-self-signed \
- --load-privkey tests/test-key.pem --outfile tests/test-cert.pem")))
- (for-each (lambda (line)
- (display line pipe)
- (newline pipe))
- '("" ;Common name
- "" ;UID
- "Guix" ;Organizational unit name
- "GNU" ;Organization name
- "" ;Locality name
- "" ;State or province
- "" ;Country
- "" ;subject's domain component (DC)
- "" ;E-mail
- "" ;serial number
- "-1" ;expiration time
- "N" ;belong to authority?
- "N" ;web client certificate?
- "N" ;IPsec IKE?
- "Y" ;web server certificate?
- "localhost" ;dnsName of subject
- "" ;dnsName of subject (end)
- "" ;URI of subject
- "127.0.0.1" ;IP address of subject
- "" ;signing?
- "" ;encryption (RSA)?
- "" ;data encryption?
- "" ;sign OCSP requests?
- "" ;sign code?
- "" ;time stamping?
- "" ;email protection?
- "" ;URI of the CRL distribution point
- "y" ;above info OK?
- ))
- (close-pipe pipe))
+ (("[ \t]*\\['socket', true, \\[\\]\\],") "")
+ ;; FIX-ME: ssl-test fails, starting with
+ ;; glib-networking 2.68.x.
+ (("[ \t]*\\['ssl', true, \\[\\]\\],") ""))
#t))
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
@@ -5000,7 +4959,6 @@ libxml to ease remote use of the RESTful API.")
("vala" ,vala)
("php" ,php)
("curl" ,curl)
- ("gnutls" ,gnutls) ;for 'certtool'
("httpd" ,httpd)))
(propagated-inputs
;; libsoup-2.4.pc refers to all these.
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 06/10] gnu: libsoup: Add missing input.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-6-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[inputs]: Add samba.
---
gnu/packages/gnome.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Toggle diff (16 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 29779c39af..6c9cdd5ef9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4970,7 +4970,8 @@ libxml to ease remote use of the RESTful API.")
("zlib" ,zlib)))
(inputs
`(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)))
+ ("mit-krb5" ,mit-krb5)
+ ("ntlm_auth" ,samba))) ; For ntlm_auth support
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
(description
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 07/10] gnu: libsoup: Propagate glib-networking.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-7-rg@raghavgururajan.name
Propagate glib-networking as per .pc file.

* gnu/packages/gnome.scm (libsoup)[inputs]: Move glib-networking to ...
[propagated-inputs]: ... here.
---
gnu/packages/gnome.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (22 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 6c9cdd5ef9..d75265e3ad 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4964,13 +4964,13 @@ libxml to ease remote use of the RESTful API.")
;; libsoup-2.4.pc refers to all these.
`(("brotli" ,google-brotli)
("glib" ,glib)
+ ("glib-networking" ,glib-networking)
("libpsl" ,libpsl)
("libxml2" ,libxml2)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(inputs
- `(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)
+ `(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba))) ; For ntlm_auth support
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 08/10] gnu: libsoup: Update home-page.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-8-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[home-page]: Modify.
---
gnu/packages/gnome.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index d75265e3ad..97009df873 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4972,7 +4972,7 @@ libxml to ease remote use of the RESTful API.")
(inputs
`(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba))) ; For ntlm_auth support
- (home-page "https://live.gnome.org/LibSoup/")
+ (home-page "https://wiki.gnome.org/Projects/libsoup")
(synopsis "GLib-based HTTP Library")
(description
"LibSoup is an HTTP client/server library for GNOME. It uses GObjects
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 09/10] gnu: python-pycairo: Update to 1.20.0.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-9-rg@raghavgururajan.name
* gnu/packages/gtk.scm (python-pycairo)[version]: Update to 1.20.0.
---
gnu/packages/gtk.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 86490115d6..e7f71fa739 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1761,7 +1761,7 @@ printing and other features typical of a source code editor.")
(define-public python-pycairo
(package
(name "python-pycairo")
- (version "1.19.1")
+ (version "1.20.0")
(source
(origin
(method url-fetch)
@@ -1769,7 +1769,7 @@ printing and other features typical of a source code editor.")
version "/pycairo-" version ".tar.gz"))
(sha256
(base32
- "111fav9m1iagw3nh2ws2vzkjh34r97yl7rdlpvsngsqg521k251c"))))
+ "1326aa2ybhhhrvz3n4p22z5sic25m016ddb5yq0hvbprnw6a35an"))))
(build-system python-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:22
[PATCH wip-gnome v3 10/10] gnu: python-pygobject: Update to 3.40.1.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426092215.31032-10-rg@raghavgururajan.name
* gnu/packages/glib.scm (python-pygobject)[version]: Update to 3.40.1.
[native-inputs]: Add python-wrapper.
---
gnu/packages/glib.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index fd88d7329f..31cd13e9c7 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -776,7 +776,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
- (version "3.34.0")
+ (version "3.40.1")
(source
(origin
(method url-fetch)
@@ -785,7 +785,7 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
- "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))
+ "0d80g5kgf2i9cginyhalvb7ibfk9g30yilqzmcsw6h6byj8xbih0"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -800,7 +800,8 @@ useful for C++.")
(native-inputs
`(("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config)
- ("python-pytest" ,python-pytest)))
+ ("python-pytest" ,python-pytest)
+ ("python-wrapper" ,python-wrapper))) ; For patching shebangs
(inputs
`(("python" ,python)
("python-pycairo" ,python-pycairo)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:24
Re: [PATCH wip-gnome 4/8] gnu: libsoup: Simplify adjustment of tests and disable ssl-test.
e4982ca2-34ea-8610-82bd-129a13f53e79@raghavgururajan.name
Hi Leo!

Toggle quote (6 lines)
> This does not look much like a simplification to me. Instead, the
> regexp seems to have been more complicated, and also the patchee has
> been changed from some C file to meson.build. Is this necessary to
> disable the SSL test? If not, try separating this patch into two
> parts.

I have separated them to into patches, in v3.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 26 Apr 2021 11:28
Re: [PATCH wip-gnome 5/8] gnu: libsoup: Add missing argument and input.
88a82777-3c12-58d6-912f-196ea150f772@raghavgururajan.name
Hi Leo!

Toggle quote (3 lines)
> This looks like it could be its own patch were it not for the fact,
> that samba needs to be added as well (what for?)

I have split them into two patches and added comment, in v3.

Toggle quote (3 lines)
> That doesn't sound very sure to me. Why are you wrapping binaries
> and/or compiling schemas?

It is mainly for compiling schemas, as libsoup doesn't have binaries to
wrap. But I just now realized that there is no
`[out]/share/glib-2.0/schemas` either. So I removed this in v3.

Toggle quote (2 lines)
> Careful with the indentation.

Ah, good catch. I have fixed it in v3.

Thanks!

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 26 Apr 2021 11:42
Re: [PATCH wip-gnome v3 04/10] gnu: libsoup: Simplify adjustment of tests.
ce34499f3c66249fa280da5381052ee04b3d0619.camel@student.tugraz.at
Am Montag, den 26.04.2021, 05:22 -0400 schrieb Raghav Gururajan:
Toggle quote (45 lines)
> Switch from using mutiple C files to single meson.build file.
>
> * gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
> ---
> gnu/packages/gnome.scm | 22 ++++++++--------------
> 1 file changed, 8 insertions(+), 14 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 97cf80c586..c8e7b55f6c 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -4927,20 +4927,14 @@ libxml to ease remote use of the RESTful
> API.")
> #t)))
> (add-after 'unpack 'adjust-tests
> (lambda _
> - ;; This test fails due to missing /etc/nsswitch.conf
> - ;; in the build environment.
> - (substitute* "tests/socket-test.c"
> - ((".*/sockets/unconnected.*") ""))
> -
> - ;; These fail because "subdomain.localhost" does not
> resolve in
> - ;; the build environment.
> - (substitute* "tests/hsts-test.c"
> - ((".*/hsts/basic.*") "")
> - ((".*/hsts/subdomains.*") "")
> - ((".*/hsts/superdomain.*") "")
> - ((".*/hsts/utf8-address.*") ""))
> - (substitute* "tests/hsts-db-test.c"
> - ((".*/hsts-db/subdomains.*") ""))
> + (substitute* "tests/meson.build"
> + ;; These fail because "subdomain.localhost" does not
> resolve in
> + ;; the build environment.
> + (("[ \t]*\\['hsts', true, \\[\\]\\],") "")
> + (("[ \t]*\\['hsts-db', true, \\[\\]\\],") "")
> + ;; This test fails due to missing /etc/nsswitch.conf
> + ;; in the build environment.
> + (("[ \t]*\\['socket', true, \\[\\]\\],") ""))
>
> ;; Generate a self-signed certificate that has
> "localhost" as its
> ;; 'dnsName'. Failing to do that, and starting with
> GnuTLS
I'm sorry, but after a closer look, I will have to reject this patch.
This does far more than just disable a few failing tests, it disables
all tests, that happen to lie in a file with a failing one. Please
stick to disabling patches in the C files, or if the entire C file
fails just disable that one in meson (but try to see if you can disable
it in C as well).

Regards,
Leo
L
L
Leo Prikler wrote on 26 Apr 2021 11:47
Re: [PATCH wip-gnome 5/8] gnu: libsoup: Add missing argument and input.
(name . Mark H Weaver)(address . mhw@netris.org)
610e1f33a099e2b8fad8f5df21447f9108082a9c.camel@student.tugraz.at
Am Montag, den 26.04.2021, 05:28 -0400 schrieb Raghav Gururajan:
Toggle quote (18 lines)
> Hi Leo!
>
> > This looks like it could be its own patch were it not for the fact,
> > that samba needs to be added as well (what for?)
>
> I have split them into two patches and added comment, in v3.
>
> > That doesn't sound very sure to me. Why are you wrapping binaries
> > and/or compiling schemas?
>
> It is mainly for compiling schemas, as libsoup doesn't have binaries
> to
> wrap. But I just now realized that there is no
> `[out]/share/glib-2.0/schemas` either. So I removed this in v3.
>
> > Careful with the indentation.
>
> Ah, good catch. I have fixed it in v3.
v3 06/07 LGTM, but could in my opinon be merged into a single patch
with the line: "gnu: libsoup: Add missing inputs." or perhaps "gnu:
libsoup: Adjust inputs". I've CC'd Mark Weaver to hear their input.

Regards,
Leo
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-3-rg@raghavgururajan.name
* gnu/packages/gtk.scm (gtkmm)[native-inputs]: Add glib:bin.
[propagated-inputs]: Change; atkmm to atkmm-2.28, pangomm to pangomm-2.42,
and cairomm to cairomm-1.13.
---
gnu/packages/gtk.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index a7e387a47d..86490115d6 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1633,6 +1633,7 @@ library.")
(native-inputs
`(("dot" ,graphviz)
("doxygen" ,doxygen)
+ ("glib:bin" ,glib "bin") ; For glib-compile-resources
("m4" ,m4)
("mm-common" ,mm-common)
("perl" ,perl)
@@ -1640,11 +1641,11 @@ library.")
("xsltproc" ,libxslt)
("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
- `(("atkmm" ,atkmm)
- ("cairomm" ,cairomm)
+ `(("atkmm" ,atkmm-2.28)
+ ("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm)
("gtk+" ,gtk+)
- ("pangomm" ,pangomm)))
+ ("pangomm" ,pangomm-2.42)))
(synopsis "C++ Interfaces for GTK+ and GNOME")
(description "GTKmm is the official C++ interface for the popular GUI
library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 2/8] gnu: gtkmm: Change build-system.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-2-rg@raghavgururajan.name
Switch to meson-build-system, as its preferred by the project.
Preserve building of documentation.

* gnu/packages/gtk.scm (gtkmm)[build-system]: Change from glib-or-gtk
to meson.
[configure-flags](build-documentation): New flag.
---
gnu/packages/gtk.scm | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

Toggle diff (21 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 81ac4a7197..a7e387a47d 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1606,10 +1606,12 @@ library.")
name "-" version ".tar.xz"))
(sha256
(base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv"))))
- (build-system glib-or-gtk-build-system)
+ (build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
- `(#:phases
+ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
+ #:configure-flags '("-Dbuild-documentation=true")
+ #:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 1/8] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-1-rg@raghavgururajan.name
Remove inheritance to prevent rebuilds of packages like inkscape
and gtk+, whenever changes are made to gtkmm@3.

* gnu/packages/gtk.scm (gtkmm-2)[build-system,outputs,arguments,
native-inputs,synopsis,description,home-page,license]: New fields.
---
gnu/packages/gtk.scm | 48 ++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 46 insertions(+), 2 deletions(-)

Toggle diff (73 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 04a0db1161..81ac4a7197 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1660,7 +1660,6 @@ tutorial.")
(define-public gtkmm-2
(package
- (inherit gtkmm)
(name "gtkmm")
(version "2.24.5")
(source
@@ -1672,12 +1671,57 @@ tutorial.")
name "-" version ".tar.xz"))
(sha256
(base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
+ (build-system glib-or-gtk-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; Tests require a running X server.
+ (system "Xvfb :1 +extension GLX &")
+ (setenv "DISPLAY" ":1")
+ ;; For missing '/etc/machine-id'.
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ #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/doc")
+ (string-append doc "/share/doc"))
+ #t))))))
+ (native-inputs
+ `(("dot" ,graphviz)
+ ("doxygen" ,doxygen)
+ ("m4" ,m4)
+ ("mm-common" ,mm-common)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("xsltproc" ,libxslt)
+ ("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
`(("atkmm" ,atkmm-2.28)
("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm-2.64)
("gtk+" ,gtk+-2)
- ("pangomm" ,pangomm-2.42)))))
+ ("pangomm" ,pangomm-2.42)))
+ (synopsis "C++ Interfaces for GTK+ and GNOME")
+ (description "GTKmm is the official C++ interface for the popular GUI
+library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
+widgets that are easily extensible via inheritance. You can create user
+interfaces either in code or with the Glade User Interface designer, using
+libglademm. There's extensive documentation, including API reference and a
+tutorial.")
+ (home-page "https://gtkmm.org/")
+ (license
+ (list
+ ;; Library
+ license:lgpl2.1+
+ ;; Tools
+ license:gpl2+))))
(define-public gtksourceviewmm
(package
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 4/8] gnu: libsoup: Disable ssl-test.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-4-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
[native-inputs]: Remove gnutls.
---
gnu/packages/gnome.scm | 48 ++++--------------------------------------
1 file changed, 4 insertions(+), 44 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 97cf80c586..115e2e7985 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4942,49 +4942,10 @@ libxml to ease remote use of the RESTful API.")
(substitute* "tests/hsts-db-test.c"
((".*/hsts-db/subdomains.*") ""))
- ;; Generate a self-signed certificate that has "localhost" as its
- ;; 'dnsName'. Failing to do that, and starting with GnuTLS
- ;; 3.5.12, tests such as "ssl-tests" fail:
- ;;
- ;; ERROR:ssl-test.c:406:do_tls_interaction_test: Unexpected status 6 Unacceptable TLS certificate (expected 200 OK)
- ;;
- ;; 'certtool' is interactive so we have to pipe it the answers.
- ;; Reported at <https://bugzilla.gnome.org/show_bug.cgi?id=784696>.
- (let ((pipe (open-output-pipe "certtool --generate-self-signed \
- --load-privkey tests/test-key.pem --outfile tests/test-cert.pem")))
- (for-each (lambda (line)
- (display line pipe)
- (newline pipe))
- '("" ;Common name
- "" ;UID
- "Guix" ;Organizational unit name
- "GNU" ;Organization name
- "" ;Locality name
- "" ;State or province
- "" ;Country
- "" ;subject's domain component (DC)
- "" ;E-mail
- "" ;serial number
- "-1" ;expiration time
- "N" ;belong to authority?
- "N" ;web client certificate?
- "N" ;IPsec IKE?
- "Y" ;web server certificate?
- "localhost" ;dnsName of subject
- "" ;dnsName of subject (end)
- "" ;URI of subject
- "127.0.0.1" ;IP address of subject
- "" ;signing?
- "" ;encryption (RSA)?
- "" ;data encryption?
- "" ;sign OCSP requests?
- "" ;sign code?
- "" ;time stamping?
- "" ;email protection?
- "" ;URI of the CRL distribution point
- "y" ;above info OK?
- ))
- (close-pipe pipe))
+ ;; FIX-ME: ssl-test fails, starting with
+ ;; glib-networking 2.68.x.
+ (substitute* "tests/meson.build"
+ (("[ \t]*\\['ssl', true, \\[\\]\\],") ""))
#t))
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
@@ -5006,7 +4967,6 @@ libxml to ease remote use of the RESTful API.")
("vala" ,vala)
("php" ,php)
("curl" ,curl)
- ("gnutls" ,gnutls) ;for 'certtool'
("httpd" ,httpd)))
(propagated-inputs
;; libsoup-2.4.pc refers to all these.
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 5/8] gnu: libsoup: Adjust inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-5-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[inputs]: Add samba and
move glib-networking to ...
[propagated-inputs]: ... here.
---
gnu/packages/gnome.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 115e2e7985..6b2accc991 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4972,13 +4972,14 @@ libxml to ease remote use of the RESTful API.")
;; libsoup-2.4.pc refers to all these.
`(("brotli" ,google-brotli)
("glib" ,glib)
+ ("glib-networking" ,glib-networking)
("libpsl" ,libpsl)
("libxml2" ,libxml2)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(inputs
- `(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)))
+ `(("mit-krb5" ,mit-krb5)
+ ("ntlm_auth" ,samba))) ; For ntlm_auth support
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
(description
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 6/8] gnu: libsoup: Update home-page.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-6-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[home-page]: Modify.
---
gnu/packages/gnome.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 6b2accc991..ebba290775 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4980,7 +4980,7 @@ libxml to ease remote use of the RESTful API.")
(inputs
`(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba))) ; For ntlm_auth support
- (home-page "https://live.gnome.org/LibSoup/")
+ (home-page "https://wiki.gnome.org/Projects/libsoup")
(synopsis "GLib-based HTTP Library")
(description
"LibSoup is an HTTP client/server library for GNOME. It uses GObjects
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 7/8] gnu: python-pycairo: Update to 1.20.0.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-7-rg@raghavgururajan.name
* gnu/packages/gtk.scm (python-pycairo)[version]: Update to 1.20.0.
---
gnu/packages/gtk.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 86490115d6..e7f71fa739 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1761,7 +1761,7 @@ printing and other features typical of a source code editor.")
(define-public python-pycairo
(package
(name "python-pycairo")
- (version "1.19.1")
+ (version "1.20.0")
(source
(origin
(method url-fetch)
@@ -1769,7 +1769,7 @@ printing and other features typical of a source code editor.")
version "/pycairo-" version ".tar.gz"))
(sha256
(base32
- "111fav9m1iagw3nh2ws2vzkjh34r97yl7rdlpvsngsqg521k251c"))))
+ "1326aa2ybhhhrvz3n4p22z5sic25m016ddb5yq0hvbprnw6a35an"))))
(build-system python-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:28
[PATCH wip-gnome v4 8/8] gnu: python-pygobject: Update to 3.40.1.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210426102834.636-8-rg@raghavgururajan.name
* gnu/packages/glib.scm (python-pygobject)[version]: Update to 3.40.1.
[native-inputs]: Add python-wrapper.
---
gnu/packages/glib.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index fd88d7329f..31cd13e9c7 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -776,7 +776,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
- (version "3.34.0")
+ (version "3.40.1")
(source
(origin
(method url-fetch)
@@ -785,7 +785,7 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
- "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))
+ "0d80g5kgf2i9cginyhalvb7ibfk9g30yilqzmcsw6h6byj8xbih0"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -800,7 +800,8 @@ useful for C++.")
(native-inputs
`(("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config)
- ("python-pytest" ,python-pytest)))
+ ("python-pytest" ,python-pytest)
+ ("python-wrapper" ,python-wrapper))) ; For patching shebangs
(inputs
`(("python" ,python)
("python-pycairo" ,python-pycairo)
--
2.31.1
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:31
Re: [PATCH wip-gnome v3 04/10] gnu: libsoup: Simplify adjustment of tests.
0981a7c6-f10a-29e8-d369-d1d2f5d9ff1a@raghavgururajan.name
Hi Leo!

Toggle quote (7 lines)
> I'm sorry, but after a closer look, I will have to reject this patch.
> This does far more than just disable a few failing tests, it disables
> all tests, that happen to lie in a file with a failing one. Please
> stick to disabling patches in the C files, or if the entire C file
> fails just disable that one in meson (but try to see if you can disable
> it in C as well).

No worries! Thanks for the review.

In v4, I have only disabled ssl-test via meson.build, as any of the
tests included in ssl-test.c fails.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 26 Apr 2021 12:32
Re: [PATCH wip-gnome 5/8] gnu: libsoup: Add missing argument and input.
(name . Mark H Weaver)(address . mhw@netris.org)
abc1d1e3-84a1-28cc-71ea-81864279570c@raghavgururajan.name
Hi Leo!

Toggle quote (4 lines)
> v3 06/07 LGTM, but could in my opinon be merged into a single patch
> with the line: "gnu: libsoup: Add missing inputs." or perhaps "gnu:
> libsoup: Adjust inputs". I've CC'd Mark Weaver to hear their input.

Makes sense! I have merged the changes into single patch, in v4.

Regards,
RG.
Attachment: OpenPGP_signature
M
M
Mark H Weaver wrote on 26 Apr 2021 19:26
Re: [PATCH wip-gnome v4 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs
878s55j6sy.fsf@netris.org
Hi Raghav,

Version 4 of your patch set mostly looks good to me, but I have one
concern about patch 3 (gnu: gtkmm: Add missing native-input and correct
propagated-inputs).

That patch modifies the 'propagated-inputs' field of 'gtkmm' to refer to
specific versions of packages: 'atkmm-2.28', 'cairomm-1.13', and
'pangomm-2.42'. These references to specific versions are not ideal,
because:

(1) They will likely lead to conflicts within profiles. For example, a
profile that includes both 'gtkmm' and 'cairomm' may fail to build,
because it would require including both 'cairomm' and 'cairomm-1.13',
and

(2) We might forget to update these references in the future.

It would be good to avoid these version-specific references, if
possible. Can you help me understand the rationale? Did you find that
there is an incompatibility between the latest stable versions of
'gtkmm', 'atkmm', 'cairomm', and 'pangomm'? If so, could you help me
understand the nature of that incompatibility? Perhaps it can be
addressed in another way.

If it turns out that these versioned references are truly unavoidable,
it would be good to add comments next to those references, briefly
explaining the rationale.

Thanks very much for your work on this, Raghav.

Regards,
Mark

--
Support Richard Stallman against the vicious disinformation campaign
against him and the FSF. See https://stallmansupport.org for more.
M
M
Maxime Devos wrote on 26 Apr 2021 22:47
Re: [bug#48028] [PATCH wip-gnome 1/8] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
cd3d32e9a291aecad98e93537725901bb82478a7.camel@telenet.be
IIUC, the commit message is ‘gnu: gtkmm@2: Remove inheritance from gtkmm@3’.
But this patch also adds some inputs, a description, starts an X server
for tests, places documentation in the correct place ... Could you split
up this patch?

Raghav Gururajan via Guix-patches via schreef op ma 26-04-2021 om 04:11 [-0400]:
Toggle quote (3 lines)
> Remove inheritance to prevent rebuilds of packages like inkscape
> and gtk+, whenever changes are made gtkmm@3.

If changes are made to gtkmm@3, wouldn't gtkmm@2 require similar changes
anyway?
For example ...

Toggle quote (26 lines)
> * gnu/packages/gtk.scm (gtkmm-2)[build-system,outputs,arguments,
> native-inputs,synopsis,description,home-page,license]: New fields.
> ---
> gnu/packages/gtk.scm | 48 ++++++++++++++++++++++++++++++++++++++++++--
> 1 file changed, 46 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
> index 04a0db1161..81ac4a7197 100644
> --- a/gnu/packages/gtk.scm
> +++ b/gnu/packages/gtk.scm
> @@ -1660,7 +1660,6 @@ tutorial.")
>
> (define-public gtkmm-2
> (package
> - (inherit gtkmm)
> (name "gtkmm")
> (version "2.24.5")
> (source
> @@ -1672,12 +1671,57 @@ tutorial.")
> name "-" version ".tar.xz"))
> (sha256
> (base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
> + (build-system glib-or-gtk-build-system)
> + (outputs '("out" "doc"))
> + (arguments

btw, the following has been dropped in
I wonder why?

My guess: disallowed-references refers to the wrong version when cross-compiling.
But that seems rather harmless to me? (Though ideally there would be exist a
disallowed-references/native or something ...)

Toggle quote (20 lines)
> + `(#:phases
> + (modify-phases %standard-phases
> + (add-before 'check 'pre-check
> + (lambda _
> + ;; Tests require a running X server.
> + (system "Xvfb :1 +extension GLX &")
> + (setenv "DISPLAY" ":1")
> + ;; For missing '/etc/machine-id'.
> + (setenv "DBUS_FATAL_WARNINGS" "0")
> + #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/doc")
> + (string-append doc "/share/doc"))
> + #t))))))

These phases were added to gtkmm@3 in
It seems they are also required in gtkmm@2.

Toggle quote (10 lines)
> + (native-inputs
> + `(("dot" ,graphviz)
> + ("doxygen" ,doxygen)
> + ("m4" ,m4)
> + ("mm-common" ,mm-common)
> + ("perl" ,perl)
> + ("pkg-config" ,pkg-config)
> + ("xsltproc" ,libxslt)
> + ("xorg-server" ,xorg-server-for-tests)))

Likewise.

Toggle quote (15 lines)
> (propagated-inputs
> `(("atkmm" ,atkmm-2.28)
> ("cairomm" ,cairomm-1.13)
> ("glibmm" ,glibmm-2.64)
> ("gtk+" ,gtk+-2)
> - ("pangomm" ,pangomm-2.42)))))
> + ("pangomm" ,pangomm-2.42)))
> + (synopsis "C++ Interfaces for GTK+ and GNOME")
> + (description "GTKmm is the official C++ interface for the popular GUI
> +library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
> +widgets that are easily extensible via inheritance. You can create user
> +interfaces either in code or with the Glade User Interface designer, using
> +libglademm. There's extensive documentation, including API reference and a
> +tutorial.")

Duplication.

Toggle quote (8 lines)
> + (home-page "https://gtkmm.org/")
> + (license
> + (list
> + ;; Library
> + license:lgpl2.1+
> + ;; Tools
> + license:gpl2+))))

More duplication.

So I don't see the value of removing inheritance from gtkmm@3.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIcm6RccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7sycAP9wJB068NgREL222NQU6ssFc7Nj
DnU3wR9jYoi48WMdlgEA3Z7CYpKSTGQappEp1o0A5BM3XsrhqYYbeIOAbfui9gE=
=0Ig0
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 26 Apr 2021 22:52
Re: [bug#48028] [PATCH wip-gnome 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
4fe792b27d14d83ee72a84ae5715140921c219ca.camel@telenet.be
Raghav Gururajan via Guix-patches via schreef op ma 26-04-2021 om 04:11 [-0400]:
Toggle quote (2 lines)
> * gnu/packages/gtk.scm (gtkmm)[native-inputs]: Add glib:bin.

Maybe make this "Add glib:lib for glib-compile-resources" for clarity.
Toggle quote (2 lines)
> [propagated-inputs]: Change; atkmm to atkmm-2.28, pangomm to pangomm-2.42,
> and cairomm to cairomm-1.13.
See comment below.

Toggle quote (13 lines)
> ---
> gnu/packages/gtk.scm | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
> index a7e387a47d..86490115d6 100644
> --- a/gnu/packages/gtk.scm
> +++ b/gnu/packages/gtk.scm
> @@ -1633,6 +1633,7 @@ library.")
> (native-inputs
> `(("dot" ,graphviz)
> ("doxygen" ,doxygen)
> + ("glib:bin" ,glib "bin") ; For glib-compile-resources
LGTM

Toggle quote (16 lines)
> ("m4" ,m4)
> ("mm-common" ,mm-common)
> ("perl" ,perl)
> @@ -1640,11 +1641,11 @@ library.")
> ("xsltproc" ,libxslt)
> ("xorg-server" ,xorg-server-for-tests)))
> (propagated-inputs
> - `(("atkmm" ,atkmm)
> - ("cairomm" ,cairomm)
> + `(("atkmm" ,atkmm-2.28)
> + ("cairomm" ,cairomm-1.13)
> ("glibmm" ,glibmm)
> ("gtk+" ,gtk+)
> - ("pangomm" ,pangomm)))
> + ("pangomm" ,pangomm-2.42)))

What makes the old propageted-inputs incorrect, and the new ones correct?
Has there been an ABI change or something, or does GTKmm now require new
APIs? Could you add a little comment why the old inputs were incorrect
in the commit message?

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIcn8xccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7rtfAP0aJnPjfJGlrXAmklNbaNWPqkOm
YUnmCIsHn5mtJOqy2wD+NxoF8tor6bFOIdkLiWiqgunJn3nLEPo4g8RFBlivKwY=
=WYFV
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 26 Apr 2021 22:58
Re: [bug#48028] [PATCH wip-gnome v2 05/10] gnu: libsoup: Disable ssl-test.
1cac79bc3175adf6012a36eb1e24befee9dfb550.camel@telenet.be
Raghav Gururajan via Guix-patches via schreef op ma 26-04-2021 om 05:08 [-0400]:
Toggle quote (2 lines)
> + ;; FIX-ME: ssl-test fails, starting with

The convention seems to be FIXME and not FIX-ME.
Only 3 hits for "git grep -F FIX-ME", and 612 hits for
"git grep -F FIXME" in some random branch.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIcpkBccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7hHyAP9gCnK5SCKg8Nmq920hH+mS9+qB
mcgH7jKCK4YsqR4rcwD+JLygzbJU7kjoEgtHBQS1Kko16lvcy1blFZQQgJolMA0=
=v3vS
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 26 Apr 2021 23:02
Re: [bug#48028] [PATCH wip-gnome v2 06/10] gnu: libsoup: Add missing argument and input.
30969aa291fa7ba84a0d9713a4c26c7c36a9d54f.camel@telenet.be
Raghav Gururajan via Guix-patches via schreef op ma 26-04-2021 om 05:08 [-0400]:
Toggle quote (8 lines)
> * gnu/packages/gnome.scm (libsoup)[arguments](glib-or-gtk): New argument.
> [inputs]: Add samba.
> ---
> [...]
> + #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
> [...]
> + ("ntlm_auth" ,samba))) ; For ntlm_auth support

A clearer commit message would be:
libsoup: Add input for NTLM-based authentication
and:
libsoup: Wrap and/or compile schemas.

(+ the usual * gnu/STUFF (package)[arguments].... of course)

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIcqVBccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7kFHAQCMKHhKX53FmBWbJaA8nHw45HhZ
MVKbQkldRDf3Bq0HSgEAoERvPaAMdtTy0K02P28PLyZSv8Prw+oJ74JM0TWXoQ8=
=89SF
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 26 Apr 2021 23:08
Re: [bug#48028] [PATCH wip-gnome v4 1/8] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
4f4ded25659eafae9a8a8101bde38e8c25f9b67f.camel@telenet.be
That were all my reviews! Every patch I didn't reply to looked good
to me. Except the patch with disabling tests, GNUtls and soup, where
I remain neutral.

Thanks for working on this!
Note: I didn't test this.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIcr1hccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7uMmAP9s8rgKwuMmR+/s8lwYjI0PyNB4
ebXuJoSgtW1tztCIQAEA/Dv/Ewc+PGxA7MqJMcGfzuYgtNMfY4/CZ15gIsiS3AU=
=0mwJ
-----END PGP SIGNATURE-----


R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-3-rg@raghavgururajan.name
* gnu/packages/gtk.scm (gtkmm)[native-inputs]: Add glib:bin.
[propagated-inputs]: Change; atkmm to atkmm-2.28, pangomm to pangomm-2.42,
and cairomm to cairomm-1.13.
---
gnu/packages/gtk.scm | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 91bdfde092..f310e1c306 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1632,6 +1632,7 @@ library.")
(native-inputs
`(("dot" ,graphviz)
("doxygen" ,doxygen)
+ ("glib:bin" ,glib "bin") ; For glib-compile-resources
("m4" ,m4)
("mm-common" ,mm-common)
("perl" ,perl)
@@ -1639,11 +1640,14 @@ library.")
("xsltproc" ,libxslt)
("xorg-server" ,xorg-server-for-tests)))
(propagated-inputs
- `(("atkmm" ,atkmm)
- ("cairomm" ,cairomm)
+ ;; Latest versions of atkmm, cairomm and pangomm,
+ ;; are ABI incompatible with gtkmm.
+ ;; Pkg-config checks for these ABI versions.
+ `(("atkmm" ,atkmm-2.28)
+ ("cairomm" ,cairomm-1.13)
("glibmm" ,glibmm)
("gtk+" ,gtk+)
- ("pangomm" ,pangomm)))
+ ("pangomm" ,pangomm-2.42)))
(synopsis "C++ Interfaces for GTK+ and GNOME")
(description "GTKmm is the official C++ interface for the popular GUI
library GTK+. Highlights include typesafe callbacks, and a comprehensive set of
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 2/8] gnu: gtkmm@2: Override inheritance of certain changes from gtkmm.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-2-rg@raghavgururajan.name
Recent changes made to gtkmm (d7974adbed019160c10036b040e8d9ff789cbc26),
are not applicable to gtkmm@2, as the latter does not use meson.

* gnu/packages/gtk.scm (gtkmm-2)[build-system]: New field.
[arguments]: New field.
---
gnu/packages/gtk.scm | 10 ++++++++++
1 file changed, 10 insertions(+)

Toggle diff (23 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 3aa8967ca5..91bdfde092 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1673,6 +1673,16 @@ tutorial.")
name "-" version ".tar.xz"))
(sha256
(base32 "0wkbzvsx4kgw16f6xjdc1dz7f77ldngdila4yi5lw2zrgcxsb006"))))
+ (build-system gnu-build-system)
+ (arguments
+ (substitute-keyword-arguments (package-arguments gtkmm)
+ ((#:modules modules %gnu-build-system-modules)
+ `((srfi srfi-1)
+ ,@modules))
+ ((#:configure-flags flags)
+ `(fold delete
+ ,flags
+ '("-Dbuild-documentation=true")))))
(propagated-inputs
`(("atkmm" ,atkmm-2.28)
("cairomm" ,cairomm-1.13)
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 5/8] gnu: libsoup: Adjust inputs.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-5-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[inputs]: Add samba and
move glib-networking to ...
[propagated-inputs]: ... here.
---
gnu/packages/gnome.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

Toggle diff (23 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 51a72c4e58..e9924b67a0 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4972,13 +4972,14 @@ libxml to ease remote use of the RESTful API.")
;; libsoup-2.4.pc refers to all these.
`(("brotli" ,google-brotli)
("glib" ,glib)
+ ("glib-networking" ,glib-networking)
("libpsl" ,libpsl)
("libxml2" ,libxml2)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(inputs
- `(("glib-networking" ,glib-networking)
- ("mit-krb5" ,mit-krb5)))
+ `(("mit-krb5" ,mit-krb5)
+ ("ntlm_auth" ,samba))) ; For ntlm_auth support
(home-page "https://live.gnome.org/LibSoup/")
(synopsis "GLib-based HTTP Library")
(description
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 4/8] gnu: libsoup: Disable ssl-test.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-4-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[phases](adjust-tests): Modify.
[native-inputs]: Remove gnutls.
---
gnu/packages/gnome.scm | 48 ++++--------------------------------------
1 file changed, 4 insertions(+), 44 deletions(-)

Toggle diff (68 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 97cf80c586..51a72c4e58 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4942,49 +4942,10 @@ libxml to ease remote use of the RESTful API.")
(substitute* "tests/hsts-db-test.c"
((".*/hsts-db/subdomains.*") ""))
- ;; Generate a self-signed certificate that has "localhost" as its
- ;; 'dnsName'. Failing to do that, and starting with GnuTLS
- ;; 3.5.12, tests such as "ssl-tests" fail:
- ;;
- ;; ERROR:ssl-test.c:406:do_tls_interaction_test: Unexpected status 6 Unacceptable TLS certificate (expected 200 OK)
- ;;
- ;; 'certtool' is interactive so we have to pipe it the answers.
- ;; Reported at <https://bugzilla.gnome.org/show_bug.cgi?id=784696>.
- (let ((pipe (open-output-pipe "certtool --generate-self-signed \
- --load-privkey tests/test-key.pem --outfile tests/test-cert.pem")))
- (for-each (lambda (line)
- (display line pipe)
- (newline pipe))
- '("" ;Common name
- "" ;UID
- "Guix" ;Organizational unit name
- "GNU" ;Organization name
- "" ;Locality name
- "" ;State or province
- "" ;Country
- "" ;subject's domain component (DC)
- "" ;E-mail
- "" ;serial number
- "-1" ;expiration time
- "N" ;belong to authority?
- "N" ;web client certificate?
- "N" ;IPsec IKE?
- "Y" ;web server certificate?
- "localhost" ;dnsName of subject
- "" ;dnsName of subject (end)
- "" ;URI of subject
- "127.0.0.1" ;IP address of subject
- "" ;signing?
- "" ;encryption (RSA)?
- "" ;data encryption?
- "" ;sign OCSP requests?
- "" ;sign code?
- "" ;time stamping?
- "" ;email protection?
- "" ;URI of the CRL distribution point
- "y" ;above info OK?
- ))
- (close-pipe pipe))
+ ;; FIXME: ssl-test fails, starting with
+ ;; glib-networking 2.68.x.
+ (substitute* "tests/meson.build"
+ (("[ \t]*\\['ssl', true, \\[\\]\\],") ""))
#t))
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
@@ -5006,7 +4967,6 @@ libxml to ease remote use of the RESTful API.")
("vala" ,vala)
("php" ,php)
("curl" ,curl)
- ("gnutls" ,gnutls) ;for 'certtool'
("httpd" ,httpd)))
(propagated-inputs
;; libsoup-2.4.pc refers to all these.
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 6/8] gnu: libsoup: Update home-page.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-6-rg@raghavgururajan.name
* gnu/packages/gnome.scm (libsoup)[home-page]: Modify.
---
gnu/packages/gnome.scm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Toggle diff (15 lines)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index e9924b67a0..3e6eb9ee00 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4980,7 +4980,7 @@ libxml to ease remote use of the RESTful API.")
(inputs
`(("mit-krb5" ,mit-krb5)
("ntlm_auth" ,samba))) ; For ntlm_auth support
- (home-page "https://live.gnome.org/LibSoup/")
+ (home-page "https://wiki.gnome.org/Projects/libsoup")
(synopsis "GLib-based HTTP Library")
(description
"LibSoup is an HTTP client/server library for GNOME. It uses GObjects
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 1/8] gnu: gtkmm: Change build-system and adjust arguments accordingly.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-1-rg@raghavgururajan.name
Switch to meson-build-system, as its preferred by the project.
Preserve building of documentation.

* gnu/packages/gtk.scm (gtkmm)[build-system]: Change from glib-or-gtk
to meson.
[configure-flags](build-documentation): New flag.
---
gnu/packages/gtk.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

Toggle diff (20 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 04a0db1161..3aa8967ca5 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1606,10 +1606,11 @@ library.")
name "-" version ".tar.xz"))
(sha256
(base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv"))))
- (build-system glib-or-gtk-build-system)
+ (build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
- `(#:phases
+ `(#:configure-flags '("-Dbuild-documentation=true")
+ #:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 7/8] gnu: python-pycairo: Update to 1.20.0.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-7-rg@raghavgururajan.name
* gnu/packages/gtk.scm (python-pycairo)[version]: Update to 1.20.0.
---
gnu/packages/gtk.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index f310e1c306..8b17d66632 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1729,7 +1729,7 @@ printing and other features typical of a source code editor.")
(define-public python-pycairo
(package
(name "python-pycairo")
- (version "1.19.1")
+ (version "1.20.0")
(source
(origin
(method url-fetch)
@@ -1737,7 +1737,7 @@ printing and other features typical of a source code editor.")
version "/pycairo-" version ".tar.gz"))
(sha256
(base32
- "111fav9m1iagw3nh2ws2vzkjh34r97yl7rdlpvsngsqg521k251c"))))
+ "1326aa2ybhhhrvz3n4p22z5sic25m016ddb5yq0hvbprnw6a35an"))))
(build-system python-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:23
[PATCH wip-gnome v5 8/8] gnu: python-pygobject: Update to 3.40.1.
(address . 48028@debbugs.gnu.org)(name . Raghav Gururajan)(address . rg@raghavgururajan.name)
20210427092334.23537-8-rg@raghavgururajan.name
* gnu/packages/glib.scm (python-pygobject)[version]: Update to 3.40.1.
[native-inputs]: Add python-wrapper.
---
gnu/packages/glib.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (34 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index fd88d7329f..31cd13e9c7 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -776,7 +776,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
- (version "3.34.0")
+ (version "3.40.1")
(source
(origin
(method url-fetch)
@@ -785,7 +785,7 @@ useful for C++.")
"/pygobject-" version ".tar.xz"))
(sha256
(base32
- "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))
+ "0d80g5kgf2i9cginyhalvb7ibfk9g30yilqzmcsw6h6byj8xbih0"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -800,7 +800,8 @@ useful for C++.")
(native-inputs
`(("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config)
- ("python-pytest" ,python-pytest)))
+ ("python-pytest" ,python-pytest)
+ ("python-wrapper" ,python-wrapper))) ; For patching shebangs
(inputs
`(("python" ,python)
("python-pycairo" ,python-pycairo)
--
2.31.1
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:29
Re: [bug#48028] [PATCH wip-gnome 1/8] gnu: gtkmm@2: Remove inheritance from gtkmm@3.
d26f2d31-7934-744c-d469-eefa95bc8bce@raghavgururajan.name
Hi Maxime,

Thanks for the review.

I have revised the patches in v5.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:32
Re: [bug#48028] [PATCH wip-gnome 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
5a66db08-c1a8-2596-c370-b49041654b99@raghavgururajan.name
Hi Maxime,

Toggle quote (2 lines)
> Maybe make this "Add glib:lib for glib-compile-resources" for clarity.

But that wouldn't involve other changes.

Toggle quote (5 lines)
> What makes the old propageted-inputs incorrect, and the new ones correct?
> Has there been an ABI change or something, or does GTKmm now require new
> APIs? Could you add a little comment why the old inputs were incorrect
> in the commit message?

It's ABI incompatibility. I have added comment in the code, in v5.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:33
Re: [bug#48028] [PATCH wip-gnome v2 05/10] gnu: libsoup: Disable ssl-test.
c815c7c4-d34a-718e-b339-a538df0f6dce@raghavgururajan.name
Hi Maxime,

Toggle quote (4 lines)
> The convention seems to be FIXME and not FIX-ME.
> Only 3 hits for "git grep -F FIX-ME", and 612 hits for
> "git grep -F FIXME" in some random branch.

Fixed in v5. Thanks!

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:34
Re: [bug#48028] [PATCH wip-gnome v2 06/10] gnu: libsoup: Add missing argument and input.
e564f31a-bcae-653f-a318-d754ed700e93@raghavgururajan.name
Hi Maxime,

Toggle quote (7 lines)
> A clearer commit message would be:
> libsoup: Add input for NTLM-based authentication
> and:
> libsoup: Wrap and/or compile schemas.
>
> (+ the usual * gnu/STUFF (package)[arguments].... of course)

This patch is no longer applicable as-is, starting from v3.

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 27 Apr 2021 11:37
Re: [PATCH wip-gnome v4 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs
0af67af0-9649-13f6-6740-60b8cc05ee1f@raghavgururajan.name
Hi Mark,

Toggle quote (7 lines)
> It would be good to avoid these version-specific references, if
> possible. Can you help me understand the rationale? Did you find that
> there is an incompatibility between the latest stable versions of
> 'gtkmm', 'atkmm', 'cairomm', and 'pangomm'? If so, could you help me
> understand the nature of that incompatibility? Perhaps it can be
> addressed in another way.

Its because of ABI incompatibility. The pkg-config for gtkmm, checks for
specific ABI versions of atkmm, cairomm and pangomm.

Toggle quote (4 lines)
> If it turns out that these versioned references are truly unavoidable,
> it would be good to add comments next to those references, briefly
> explaining the rationale.

I have added comment in the code, in v5.

Regards,
RG.
Attachment: OpenPGP_signature
M
M
Maxime Devos wrote on 27 Apr 2021 19:42
Re: [bug#48028] [PATCH wip-gnome v5 2/8] gnu: gtkmm@2: Override inheritance of certain changes from gtkmm.
1f60ab610b38bf7d6fe2faf5a7e648d86132079f.camel@telenet.be
Raghav Gururajan via Guix-patches via schreef op di 27-04-2021 om 05:23 [-0400]:
Toggle quote (6 lines)
> Recent changes made to gtkmm (d7974adbed019160c10036b040e8d9ff789cbc26),
> are not applicable to gtkmm@2, as the latter does not use meson.
>
> * gnu/packages/gtk.scm (gtkmm-2)[build-system]: New field.
> [arguments]: New field.

This new patch addresses my remark about inheritance.

Thanks,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIhM6BccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7pytAQDHZnOysJ9ZnXGirrw8/qKuBfaz
ByttLAxvWiZQOY/vXQEAoxjkLyQoGoTu4f3S2Rvgg7V7aJhBGraYF+Ut/JQwEAY=
=mZXZ
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 27 Apr 2021 19:43
Re: [bug#48028] [PATCH wip-gnome v5 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs.
1b2b657dce5389f5e00dbfaa5eca09ea0d951720.camel@telenet.be
Raghav Gururajan via Guix-patches via schreef op di 27-04-2021 om 05:23 [-0400]:
Toggle quote (4 lines)
> + ;; Latest versions of atkmm, cairomm and pangomm,
> + ;; are ABI incompatible with gtkmm.
> + ;; Pkg-config checks for these ABI versions.

This addresses my remarks, thanks!

Greetings,
Maxme.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYIhNQRccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7ohuAP9aPAHAo+b95AhWQAMWPatBY0VS
JP83oIzLGQU/c+pJxwD9Hq6AjbUPhFvAPq6tNjlS5Oynt2C4SLp5enjO5J059Ao=
=0CEC
-----END PGP SIGNATURE-----


M
M
Mark H Weaver wrote on 27 Apr 2021 23:49
Re: [PATCH wip-gnome v4 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs
87czufqtxj.fsf@netris.org
Hi Raghav,

Raghav Gururajan <rg@raghavgururajan.name> writes:

Toggle quote (16 lines)
>> It would be good to avoid these version-specific references, if
>> possible. Can you help me understand the rationale? Did you find that
>> there is an incompatibility between the latest stable versions of
>> 'gtkmm', 'atkmm', 'cairomm', and 'pangomm'? If so, could you help me
>> understand the nature of that incompatibility? Perhaps it can be
>> addressed in another way.
>
> Its because of ABI incompatibility. The pkg-config for gtkmm, checks for
> specific ABI versions of atkmm, cairomm and pangomm.
>
>> If it turns out that these versioned references are truly unavoidable,
>> it would be good to add comments next to those references, briefly
>> explaining the rationale.
>
> I have added comment in the code, in v5.

Respectfully, it seems to me that you've been too quick to dismiss my
concerns. As I pointed out in my previous email:

(1) [These versioned references] will likely lead to conflicts within
profiles. For example, a profile that includes both 'gtkmm' and
'cairomm' may fail to build, because it would require including both
'cairomm' and 'cairomm-1.13',

This could be a real annoyance. Guix users should be able to run "guix
install gtkmm atkmm cairomm pangomm" and have that work. With these
proposed patches applied, I suspect that it might not work.

Traditional GNU/Linux distributions that package GNOME 40 will certainly
choose versions of 'gtkmm', 'atkmm', 'cairomm', and 'pangomm' that are
compatible with each other. We should too, I think.

From my own experience performing a GNOME upgrade for Guix a few years
ago, I remember that when the GNOME developers produce a new GNOME
release, they provide somewhere a list of the versions of each component
that are part of that release. Presumably they choose those versions to
be compatible with each other.

This makes me wonder if some of the GNOME components on the 'wip-gnome'
branch are newer than they should be (perhaps a development version) or
older than they should be.

What do you think?

Regards,
Mark

--
Support Richard Stallman against the vicious disinformation campaign
against him and the FSF. See https://stallmansupport.org for more.
L
L
Leo Prikler wrote on 28 Apr 2021 09:41
Re: [PATCH wip-gnome v5 5/8] gnu: libsoup: Adjust inputs.
e978df27c19a3bb135c137eda92a7589959d3661.camel@student.tugraz.at
Hi,

Am Dienstag, den 27.04.2021, 05:23 -0400 schrieb Raghav Gururajan:
Toggle quote (17 lines)
> * gnu/packages/gnome.scm (libsoup)[inputs]: Add samba and
> move glib-networking to ...
> [propagated-inputs]: ... here.
> ---
> gnu/packages/gnome.scm | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 51a72c4e58..e9924b67a0 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -4972,13 +4972,14 @@ libxml to ease remote use of the RESTful
> API.")
> ;; libsoup-2.4.pc refers to all these.
> `(("brotli" ,google-brotli)
> ("glib" ,glib)
> + ("glib-networking" ,glib-networking)
After looking at this more closely, the comment is a little misleading,
since the libsoup-2.4.pc does not actually refer to glib-networking.
What is the rationale behind this propagation?
In v1 you claimed the .pc file mentions this, but I don't see any of
it:
libsoup-2.4.pc:Requires: glib-2.0 >= 2.58, gobject-2.0 >= 2.58, gio-
2.0 >= 2.58
libsoup-2.4.pc:Requires.private: libxml-2.0, sqlite3, libpsl >= 0.20,
libbrotlidec, zlib
libsoup-gnome-2.4.pc:Requires: libsoup-2.4
libsoup-gnome-2.4.pc:Requires.private: glib-2.0 >= 2.58, gobject-2.0
Toggle quote (1 lines)
>= 2.58, gio-2.0 >= 2.58, libxml-2.0, sqlite3, libpsl >= 0.20,
libbrotlidec, zlib

In fact, I had a look at the libsoup source, and even there, using
2.99.4, which is the latest *unstable* release (as opposed to the
lastest stable release), the glib_deps from which the pkg-config file
is formed, says:
glib_deps = [glib_dep, gobject_dep, gio_dep]

There doesn't even seem to be a pkg-config file for glib-networking.
(Note: I'm running my checks on master to avoid the rebuilds, that come
from wip-gnome, but wip-gnome appears to package the same version, so
there shouldn't be a difference)

Regards,
Leo
R
R
Raghav Gururajan wrote on 28 Apr 2021 15:07
a8072457-84c1-167a-b72b-099224d612c7@raghavgururajan.name
Hi Leo,

Toggle quote (14 lines)
> After looking at this more closely, the comment is a little misleading,
> since the libsoup-2.4.pc does not actually refer to glib-networking.
> What is the rationale behind this propagation?
> In v1 you claimed the .pc file mentions this, but I don't see any of
> it:
> libsoup-2.4.pc:Requires: glib-2.0 >= 2.58, gobject-2.0 >= 2.58, gio-
> 2.0 >= 2.58
> libsoup-2.4.pc:Requires.private: libxml-2.0, sqlite3, libpsl >= 0.20,
> libbrotlidec, zlib
> libsoup-gnome-2.4.pc:Requires: libsoup-2.4
> libsoup-gnome-2.4.pc:Requires.private: glib-2.0 >= 2.58, gobject-2.0
>> = 2.58, gio-2.0 >= 2.58, libxml-2.0, sqlite3, libpsl >= 0.20,
> libbrotlidec, zlib

It `gio` I was referring to. GIO can mean [glib]/lib/libgio or
[glib-networking]/lib/gio/modules/libgio* or both. It depends on what
package it is. Libsoup is a networking package, which uses
glib-networking as tls backend. So GIO networking modules provided by
glib-networking, is required by libsoup at runtime.

Regards,
RG.
Attachment: OpenPGP_signature
L
L
Leo Prikler wrote on 28 Apr 2021 16:40
b684ae7b163ce4883afe76e7168ded16e752aec1.camel@student.tugraz.at
Am Mittwoch, den 28.04.2021, 09:07 -0400 schrieb Raghav Gururajan:
Toggle quote (29 lines)
> Hi Leo,
>
> > After looking at this more closely, the comment is a little
> > misleading,
> > since the libsoup-2.4.pc does not actually refer to glib-
> > networking.
> > What is the rationale behind this propagation?
> > In v1 you claimed the .pc file mentions this, but I don't see any
> > of
> > it:
> > libsoup-2.4.pc:Requires: glib-2.0 >= 2.58, gobject-2.0 >= 2.58,
> > gio-
> > 2.0 >= 2.58
> > libsoup-2.4.pc:Requires.private: libxml-2.0, sqlite3, libpsl
> > >= 0.20,
> > libbrotlidec, zlib
> > libsoup-gnome-2.4.pc:Requires: libsoup-2.4
> > libsoup-gnome-2.4.pc:Requires.private: glib-2.0 >= 2.58, gobject-
> > 2.0
> > > = 2.58, gio-2.0 >= 2.58, libxml-2.0, sqlite3, libpsl >= 0.20,
> > libbrotlidec, zlib
>
> It `gio` I was referring to. GIO can mean [glib]/lib/libgio or
> [glib-networking]/lib/gio/modules/libgio* or both. It depends on
> what
> package it is. Libsoup is a networking package, which uses
> glib-networking as tls backend. So GIO networking modules provided
> by
> glib-networking, is required by libsoup at runtime.
I don't think "gio inside .pc" means that, however. I do agree, that
it might be worth propagating it as a runtime dependency, but it should
be done with a suitable comment.

Regards,
Leo
?
Re: bug#48028: [PATCH wip-gnome 0/8]: Misc.
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)
OSZP286MB0664E304FBB6EAD20B48E1B3A35C9@OSZP286MB0664.JPNP286.PROD.OUTLOOK.COM
Leo Prikler <leo.prikler@student.tugraz.at> writes:

Toggle quote (31 lines)
> Am Mittwoch, den 28.04.2021, 09:07 -0400 schrieb Raghav Gururajan:
>> Hi Leo,
>>
>> > After looking at this more closely, the comment is a little
>> > misleading,
>> > since the libsoup-2.4.pc does not actually refer to glib-
>> > networking.
>> > What is the rationale behind this propagation?
>> > In v1 you claimed the .pc file mentions this, but I don't see any
>> > of
>> > it:
>> > libsoup-2.4.pc:Requires: glib-2.0 >= 2.58, gobject-2.0 >= 2.58,
>> > gio-
>> > 2.0 >= 2.58
>> > libsoup-2.4.pc:Requires.private: libxml-2.0, sqlite3, libpsl
>> > >= 0.20,
>> > libbrotlidec, zlib
>> > libsoup-gnome-2.4.pc:Requires: libsoup-2.4
>> > libsoup-gnome-2.4.pc:Requires.private: glib-2.0 >= 2.58, gobject-
>> > 2.0
>> > > = 2.58, gio-2.0 >= 2.58, libxml-2.0, sqlite3, libpsl >= 0.20,
>> > libbrotlidec, zlib
>>
>> It `gio` I was referring to. GIO can mean [glib]/lib/libgio or
>> [glib-networking]/lib/gio/modules/libgio* or both. It depends on
>> what
>> package it is. Libsoup is a networking package, which uses
>> glib-networking as tls backend. So GIO networking modules provided
>> by
>> glib-networking, is required by libsoup at runtime.

Yes, glib-networking provides 2 gio modules:
- libgiognutls.so: Let GIO based applications access HTTPS (TLS).
- libgiognomeproxy.so: Let GIO based applications use GNOME proxy settings.

They're required at runtime, and optional (one may argue that HTTPS is a
must have feature though). Currently we add glib-networking to webkit
browsers's inputs (eg: epiphany, luakit, etc.) directly, and wrap it
with 'GIO_EXTRA_MODULES'. By propagated glib-networking in libsoup, we
can remove it from inputs of thoese web browsers, but we still have to
wrap them...

Maybe there is a way to hardcode glib-networking in libsoup so that we
can get rid of GIO_EXTRA_MODULES? (another gio module is the gsettings
backends dconf, which also need a user dbus-daemon user spawn its
backend service...)

Toggle quote (4 lines)
> I don't think "gio inside .pc" means that, however. I do agree, that
> it might be worth propagating it as a runtime dependency, but it should
> be done with a suitable comment.

I Agree with Leo. Raghav, could you look into if we can get rid of
GIO_EXTRA_MODULES for glib-networking or add a specified comment for
this comment (maybe: "For HTTPS and GNOME proxy support")?

Thanks!
L
L
Leo Prikler wrote on 2 May 2021 09:03
(name . ???)(address . iyzsong@outlook.com)
a88d49116bb84d10a6e060739a5b56f23ff881e6.camel@student.tugraz.at
Am Sonntag, den 02.05.2021, 13:14 +0800 schrieb ???:
Toggle quote (71 lines)
> Leo Prikler <leo.prikler@student.tugraz.at> writes:
>
> > Am Mittwoch, den 28.04.2021, 09:07 -0400 schrieb Raghav Gururajan:
> > > Hi Leo,
> > >
> > > > After looking at this more closely, the comment is a little
> > > > misleading,
> > > > since the libsoup-2.4.pc does not actually refer to glib-
> > > > networking.
> > > > What is the rationale behind this propagation?
> > > > In v1 you claimed the .pc file mentions this, but I don't see
> > > > any
> > > > of
> > > > it:
> > > > libsoup-2.4.pc:Requires: glib-2.0 >= 2.58, gobject-2.0
> > > > >= 2.58,
> > > > gio-
> > > > 2.0 >= 2.58
> > > > libsoup-2.4.pc:Requires.private: libxml-2.0, sqlite3, libpsl
> > > > > = 0.20,
> > > > libbrotlidec, zlib
> > > > libsoup-gnome-2.4.pc:Requires: libsoup-2.4
> > > > libsoup-gnome-2.4.pc:Requires.private: glib-2.0 >= 2.58,
> > > > gobject-
> > > > 2.0
> > > > > = 2.58, gio-2.0 >= 2.58, libxml-2.0, sqlite3, libpsl
> > > > > >= 0.20,
> > > > libbrotlidec, zlib
> > >
> > > It `gio` I was referring to. GIO can mean [glib]/lib/libgio or
> > > [glib-networking]/lib/gio/modules/libgio* or both. It depends on
> > > what
> > > package it is. Libsoup is a networking package, which uses
> > > glib-networking as tls backend. So GIO networking modules
> > > provided
> > > by
> > > glib-networking, is required by libsoup at runtime.
>
> Yes, glib-networking provides 2 gio modules:
> - libgiognutls.so: Let GIO based applications access HTTPS (TLS).
> - libgiognomeproxy.so: Let GIO based applications use GNOME proxy
> settings.
>
> They're required at runtime, and optional (one may argue that HTTPS
> is a
> must have feature though). Currently we add glib-networking to
> webkit
> browsers's inputs (eg: epiphany, luakit, etc.) directly, and wrap it
> with 'GIO_EXTRA_MODULES'. By propagated glib-networking in libsoup,
> we
> can remove it from inputs of thoese web browsers, but we still have
> to
> wrap them...
>
> Maybe there is a way to hardcode glib-networking in libsoup so that
> we
> can get rid of GIO_EXTRA_MODULES? (another gio module is the
> gsettings
> backends dconf, which also need a user dbus-daemon user spawn its
> backend service...)
>
> > I don't think "gio inside .pc" means that, however. I do agree,
> > that
> > it might be worth propagating it as a runtime dependency, but it
> > should
> > be done with a suitable comment.
>
> I Agree with Leo. Raghav, could you look into if we can get rid of
> GIO_EXTRA_MODULES for glib-networking or add a specified comment for
> this comment (maybe: "For HTTPS and GNOME proxy support")?

I didn't go as far as you. All I wanted to say, was that insinuating
it to be a pkg-config dependency might be misleading, and that we ought
to have a suitable comment. I've already pushed that patch to master
with one I wrote myself.

I'm not quite sure what's the problem with wrapping here. Does glib-
or-gtk-build-system not take care of GIO_EXTRA_MODULES?

Regards,
Leo
?
(name . Leo Prikler)(address . leo.prikler@student.tugraz.at)
OSZP286MB06647A22639942247EFA3173A35B9@OSZP286MB0664.JPNP286.PROD.OUTLOOK.COM
Leo Prikler <leo.prikler@student.tugraz.at> writes:

Toggle quote (12 lines)
> Am Sonntag, den 02.05.2021, 13:14 +0800 schrieb ???:
> [...]
>>
>> I Agree with Leo. Raghav, could you look into if we can get rid of
>> GIO_EXTRA_MODULES for glib-networking or add a specified comment for
>> this comment (maybe: "For HTTPS and GNOME proxy support")?
>
> I didn't go as far as you. All I wanted to say, was that insinuating
> it to be a pkg-config dependency might be misleading, and that we ought
> to have a suitable comment. I've already pushed that patch to master
> with one I wrote myself.

Sure, thank you!

Toggle quote (4 lines)
>
> I'm not quite sure what's the problem with wrapping here. Does glib-
> or-gtk-build-system not take care of GIO_EXTRA_MODULES?

Yes, glib-or-gtk-build-system (and meson-build-system) will do, but that
requires the users of the libsoup and webkitgtk package (eg: midori) to
use glib-or-gtk-build-system which may not be the cases or can be easily
forget.
R
R
Raghav Gururajan wrote on 5 May 2021 21:06
Re: [PATCH wip-gnome v4 3/8] gnu: gtkmm: Add missing native-input and correct propagated-inputs
8a488be7-93e0-b453-d3a4-abe7f2343533@raghavgururajan.name
Hi Mark!

Toggle quote (8 lines)
> Respectfully, it seems to me that you've been too quick to dismiss my
> concerns. As I pointed out in my previous email:
>
> (1) [These versioned references] will likely lead to conflicts within
> profiles. For example, a profile that includes both 'gtkmm' and
> 'cairomm' may fail to build, because it would require including both
> 'cairomm' and 'cairomm-1.13',

I didn't dismiss your concerns. Since you mentioned "If it turns out
that these versioned references are truly unavoidable [...]", at the
time of my reply, I was convinced that its unavoidable.


Toggle quote (20 lines)
> This could be a real annoyance. Guix users should be able to run "guix
> install gtkmm atkmm cairomm pangomm" and have that work. With these
> proposed patches applied, I suspect that it might not work.
>
> Traditional GNU/Linux distributions that package GNOME 40 will certainly
> choose versions of 'gtkmm', 'atkmm', 'cairomm', and 'pangomm' that are
> compatible with each other. We should too, I think.
>
> From my own experience performing a GNOME upgrade for Guix a few years
> ago, I remember that when the GNOME developers produce a new GNOME
> release, they provide somewhere a list of the versions of each component
> that are part of that release. Presumably they choose those versions to
> be compatible with each other.
>
> This makes me wonder if some of the GNOME components on the 'wip-gnome'
> branch are newer than they should be (perhaps a development version) or
> older than they should be.
>
> What do you think?

I tried dirty hack of patching meson.build of gtkmm, to refer to latest
versions of cairomm, atkmm, pangomm. Though, 'configure phase passes,
'build phase fails with *numerous* errors.

If I de-propagate those inputs, packages that depends on gtkmm via
pkg-config, gonna barf "gtkmm not found".

Do you have any ideas?

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 5 May 2021 22:10
4d4acdb7-224b-e389-3d85-bbbdf6eb6e3b@raghavgururajan.name
Hi Mark!

Toggle quote (10 lines)
> I tried dirty hack of patching meson.build of gtkmm, to refer to latest

> versions of cairomm, atkmm, pangomm. Though, 'configure phase passes,
> 'build phase fails with *numerous* errors.
>
> If I de-propagate those inputs, packages that depends on gtkmm via
> pkg-config, gonna barf "gtkmm not found".
>
> Do you have any ideas?

Libsigc++, glibmm, cairomm, pangomm and atkmm; play well with each
other's latest stable version. The gtkmm is the only outlier.

So I think we can either de-propagate inputs in gtkmm or use the patch
as-is; and revert changes when new gtkmm version is released.

WDYT?

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 5 May 2021 22:55
3f522fca-ff33-6057-bae2-bfd9a4282125@raghavgururajan.name
Hi Mark,

Toggle quote (18 lines)
>> I tried dirty hack of patching meson.build of gtkmm, to refer to latest
>
>> versions of cairomm, atkmm, pangomm. Though, 'configure phase passes,
>> 'build phase fails with *numerous* errors.
>>
>> If I de-propagate those inputs, packages that depends on gtkmm via
>> pkg-config, gonna barf "gtkmm not found".
>>
>> Do you have any ideas?
>
> Libsigc++, glibmm, cairomm, pangomm and atkmm; play well with each
> other's latest stable version. The gtkmm is the only outlier.
>
> So I think we can either de-propagate inputs in gtkmm or use the patch
> as-is; and revert changes when new gtkmm version is released.
>
> WDYT?

I just realized packages that depend on gtkmm, doesn't propagate it. So
only way gtkmm, ends up in user-profiles is when explicitly installed.
Thus conflicts doesn't happen while building profiles right?

Regards,
RG.
Attachment: OpenPGP_signature
R
R
Raghav Gururajan wrote on 7 May 2021 19:25
(address . 48028@debbugs.gnu.org)
515cc8cf-e410-e5e2-a860-a73c12c9ae24@raghavgururajan.name
Hi Mark, Leo and Tobias:

Toggle quote (25 lines)
>>> I tried dirty hack of patching meson.build of gtkmm, to refer to latest
>>
>>> versions of cairomm, atkmm, pangomm. Though, 'configure phase passes,

>>> 'build phase fails with *numerous* errors.
>>>
>>> If I de-propagate those inputs, packages that depends on gtkmm via
>>> pkg-config, gonna barf "gtkmm not found".
>>>
>>> Do you have any ideas?
>>
>> Libsigc++, glibmm, cairomm, pangomm and atkmm; play well with each
>> other's latest stable version. The gtkmm is the only outlier.
>>
>> So I think we can either de-propagate inputs in gtkmm or use the patch

>> as-is; and revert changes when new gtkmm version is released.
>>
>> WDYT?
>
> I just realized packages that depend on gtkmm, doesn't propagate it. So

> only way gtkmm, ends up in user-profiles is when explicitly installed.
> Thus conflicts doesn't happen while building profiles right?

After this
what do you think of following plan?

[1] Temporarily have the gtkmm patch as-is in c-u
[2] package gtk (v4)
[3] rename gtkmm to gtkmm-3
[4] package gtkmm (v4).

So at the end these steps, glibmm, cairomm, pangomm, atkmm and gtkmm can
exist in same profile without conflicts.

Regards,
RG.
Attachment: OpenPGP_signature
M
M
Mark H Weaver wrote on 7 May 2021 20:34
87k0oal7ey.fsf@netris.org
Hi Raghav,

Raghav Gururajan <rg@raghavgururajan.name> writes:

Toggle quote (3 lines)
> Libsigc++, glibmm, cairomm, pangomm and atkmm; play well with each
> other's latest stable version. The gtkmm is the only outlier.

Is there a stable release version of gtkmm that plays well with those
others?

Thanks for looking into this, Raghav.

Mark

--
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about https://stallmansupport.org.
R
R
Raghav Gururajan wrote on 7 May 2021 20:37
f2e92727-5328-6c76-a14a-01724d0613fb@raghavgururajan.name
Hi Mark,

Toggle quote (6 lines)
>> Libsigc++, glibmm, cairomm, pangomm and atkmm; play well with each
>> other's latest stable version. The gtkmm is the only outlier.
>
> Is there a stable release version of gtkmm that plays well with those
> others?

Unfortunately no. :(

Regards,
RG.
Attachment: OpenPGP_signature
M
M
Mark H Weaver wrote on 7 May 2021 20:40
87h7jel73m.fsf@netris.org
Hi Raghav,

Raghav Gururajan <rg@raghavgururajan.name> writes:

Toggle quote (4 lines)
> I just realized packages that depend on gtkmm, doesn't propagate it. So
> only way gtkmm, ends up in user-profiles is when explicitly installed.
> Thus conflicts doesn't happen while building profiles right?

You might be right for users who only install user applications.

However, if I understand correctly, with the v4 patches that I looked at
earlier, and presumably also the v5 patches (based on what you wrote), I
guess that conflicts _would_ happen if someone tries to install 'gtkmm'
and 'cairomm' together in the same profile. It would be good to make
that work properly, by selecting appropriate versions of these *mm
packages that are compatible with each other.

What do you think?

Regards,
Mark

--
Disinformation flourishes because many people care deeply about injustice
but very few check the facts. Ask me about https://stallmansupport.org.
L
L
Leo Prikler wrote on 7 May 2021 21:05
1d59df5ebeb2ffa8b836eedbb200f43637e04ace.camel@student.tugraz.at
Am Freitag, den 07.05.2021, 14:40 -0400 schrieb Mark H Weaver:
Toggle quote (26 lines)
> Hi Raghav,
>
> Raghav Gururajan <rg@raghavgururajan.name> writes:
>
> > I just realized packages that depend on gtkmm, doesn't propagate
> > it. So
> > only way gtkmm, ends up in user-profiles is when explicitly
> > installed.
> > Thus conflicts doesn't happen while building profiles right?
>
> You might be right for users who only install user applications.
>
> However, if I understand correctly, with the v4 patches that I looked
> at
> earlier, and presumably also the v5 patches (based on what you
> wrote), I
> guess that conflicts _would_ happen if someone tries to install
> 'gtkmm'
> and 'cairomm' together in the same profile. It would be good to make
> that work properly, by selecting appropriate versions of these *mm
> packages that are compatible with each other.
>
> What do you think?
>
> Regards,
> Mark
As an addendum to what Mark said, I think this could be achieved by
temporarily hiding the variants of atkmm, cairomm, etc. that are
supposed to go with the yet unpackaged gtkmm and perhaps doing a round
of variable renames, so that those using manifests won't be screwed
either.
R
R
Raghav Gururajan wrote on 7 May 2021 23:23
(no subject)
(address . 48028-done@debbugs.gnu.org)
242e2b5d-57de-633c-c42d-17d473be3899@raghavgururajan.name
So I am gonna either hide new versions of atkmm etc, as leo suggested;
or gonna package gtk (v4) and gtkmm (v4). I will use different
patch-series for it.

Closing.

Regards,
RG.
Attachment: OpenPGP_signature
Closed
?