From patchwork Thu Sep 2 20:09:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 32519 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id AEE3527BBE3; Thu, 2 Sep 2021 21:11:18 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,T_DKIM_INVALID, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id F135727BBE1 for ; Thu, 2 Sep 2021 21:11:17 +0100 (BST) Received: from localhost ([::1]:40214 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mLt3M-0004bL-Tw for patchwork@mira.cbaines.net; Thu, 02 Sep 2021 16:11:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38822) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mLt38-0004SF-W7 for guix-patches@gnu.org; Thu, 02 Sep 2021 16:11:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:58830) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mLt38-0001y5-Nq for guix-patches@gnu.org; Thu, 02 Sep 2021 16:11:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mLt38-0004Qb-Eb for guix-patches@gnu.org; Thu, 02 Sep 2021 16:11:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#48554] [PATCH wip-gnome v5 1/2] gnu: Add gtk. References: In-Reply-To: Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 02 Sep 2021 20:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48554 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 48554@debbugs.gnu.org Cc: Raghav Gururajan Received: via spool by 48554-submit@debbugs.gnu.org id=B48554.163061341516960 (code B ref 48554); Thu, 02 Sep 2021 20:11:02 +0000 Received: (at 48554) by debbugs.gnu.org; 2 Sep 2021 20:10:15 +0000 Received: from localhost ([127.0.0.1]:42142 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mLt2H-0004PL-NQ for submit@debbugs.gnu.org; Thu, 02 Sep 2021 16:10:15 -0400 Received: from out1.migadu.com ([91.121.223.63]:55663) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mLt2B-0004Ou-EM for 48554@debbugs.gnu.org; Thu, 02 Sep 2021 16:10:08 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1630613399; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=/D2Pq5/qv7F3Ka868kdXlBpNNtPTmpLYb0HnW+7lJUQ=; b=TK4Q45k5iTQ5lXQSeWREmwe1/RS0ZvMQimMdv+BMI+awtWburyrf1vGWZbUGvoffcvvszm 0I5RL5Evxx5mk1oFAW6+bXbzuhAw1MNHMe3R4m87kIMoSnfWDNYEy96WqyL9uI9XQP1Wcf CAjkJWZrR7Gu9RK3fV1vc1de71TNlauSNe3aF1x4oUKes6U5WCrbrxOLxNl1Kzp6npomF6 kJ0c3BNhVLmwUtrLqaFmGuFgff+dVSYmZ3NqTGeBeCoteJzcrlEuPipe85yQCI7KIiyfLq fV+bq29tPTu2nAkUtWic1t0TKgJlluZ2z6TB5RPFkpOh2v+ki0raZohL23p2EA== Date: Thu, 2 Sep 2021 16:09:53 -0400 Message-Id: <20210902200954.30924-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/gtk.scm (gtk): New variable. * gnu/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/gtk.scm | 148 ++++++++++++++++++ .../patches/gtk4-respect-GUIX_GTK4_PATH.patch | 51 ++++++ 3 files changed, 200 insertions(+) create mode 100644 gnu/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8aa20471d5..7922712b04 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1204,6 +1204,7 @@ dist_patch_DATA = \ %D%/packages/patches/gtk2-theme-paths.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \ + %D%/packages/patches/gtk4-honor-GUIX_GTK4_PATH.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ %D%/packages/patches/gtksourceview-2-add-default-directory.patch \ %D%/packages/patches/gvfs-add-support-for-libplist-2.2.patch \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index ada006b671..97eda06d4b 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -91,11 +91,13 @@ #:use-module (gnu packages pretty-print) #:use-module (gnu packages profiling) #:use-module (gnu packages python) + #:use-module (gnu packages python-build) #:use-module (gnu packages python-xyz) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages cups) #:use-module (gnu packages version-control) + #:use-module (gnu packages vulkan) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) @@ -833,6 +835,152 @@ is part of the GNOME accessibility project.") (license license:lgpl2.1+) (home-page "https://wiki.gnome.org/Accessibility/"))) +(define-public gtk + (package + (name "gtk") + (version "4.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "1rh9fd5axf79pmd93hb2fmmflic5swcvqvq6vqghlgz4bmvnjc82")) + (patches + (search-patches "gtk4-respect-GUIX_GTK4_PATH.patch")))) + (build-system meson-build-system) + (outputs '("out" "doc")) + (arguments + `(#:meson ,meson-0.55 ;project requires meson v0.55 or higher + #:configure-flags + (list + "-Dbroadway-backend=true" ;for broadway display-backend + "-Dcloudproviders=enabled" ;for cloud-providers support + ;;"-Dsysprof=enabled" ;for tracing support + "-Dtracker=enabled" ;for filechooser search support + "-Dcolord=enabled" ;for color printing support + ,@(if (%current-target-system) + ;; If true, gtkdoc-scangobj will try to execute a + ;; cross-compiled binary. + '("-Dgtk_doc=false") + '("-Dgtk_doc=true")) + "-Dman-pages=true") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key inputs native-inputs #:allow-other-keys) + ;; Fix DTD resource of docbook-xml. + (substitute* (find-files "docs" "\\.xml$") + (("http://www.oasis-open.org/docbook/xml/4.3/") + (string-append + (assoc-ref (or native-inputs inputs) "docbook-xml-4.3") + "/xml/dtd/docbook/"))) + ;; Disable failing tests. + ;; https://paste.sr.ht/blob/0af160f1172a58dff88a5cf6354ecba613cccdef + (substitute* (find-files "testsuite" "meson.build") + (("[ \t]*'empty-text.node',") "") + (("[ \t]*'testswitch.node',") "") + (("[ \t]*'widgetfactory.node',") "")))) + (add-before 'check 'pre-check + (lambda _ + ;; Tests require a running X server. + (system "Xvfb :1 +extension GLX &") + (setenv "DISPLAY" ":1") + ;; Tests write to $HOME. + (setenv "HOME" (getcwd)) + ;; Tests look for $XDG_RUNTIME_DIR. + (setenv "XDG_RUNTIME_DIR" (getcwd)) + ;; For missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; Only run tests with x11 setup, instead of wayland. + (invoke "meson" "test" "--setup=x11")))) + (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/doc")) + (rename-file + (string-append out "/share/doc") + (string-append doc "/share/doc")))))))) + (native-inputs + `(("docbook-xml-4.3" ,docbook-xml-4.3) + ("docbook-xsl" ,docbook-xsl) + ("gettext-minimal" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) ;for building introspection data + ("gtk-doc" ,gtk-doc) ;for building documentation + ("intltool" ,intltool) + ("libxslt" ,libxslt) ;for building man-pages + ("pkg-config" ,pkg-config) + ;; These python modules are required for building documentation. + ("python-jinja2" ,python-jinja2) + ("python-markdown" ,python-markdown) + ("python-markupsafe" ,python-markupsafe) + ("python-pygments" ,python-pygments) + ("python-toml" ,python-toml) + ("python-typogrify" ,python-typogrify) + ("sassc" ,sassc) ;for building themes + ("vala" ,vala) + ("xorg-server-for-tests" ,xorg-server-for-tests))) + (inputs + ;; The disabled packages currently doesn't + ;; build successfully on wip-gnome branch. + ;; Enable them once they are fixed. + `(("colord" ,colord) ;for color printing support + ("cups" ,cups) ;for CUPS print-backend + ;;("ffmpeg" ,ffmpeg) ;for ffmpeg media-backend + ("fribidi" ,fribidi) + ;;("gstreamer" ,gstreamer) ;for gstreamer media-backend + ("harfbuzz" ,harfbuzz) + ("iso-codes" ,iso-codes) + ("json-glib" ,json-glib) + ("libcloudproviders" ,libcloudproviders) ;for clould-providers support + ("librsvg" ,librsvg) + ("python" ,python) + ("rest" ,rest) + ;;("sysprof" ,sysprof) ;for tracing support + ("tracker" ,tracker))) ;for filechooser search support + (propagated-inputs + ;; Following dependencies are referenced in .pc files. + `(("cairo" ,cairo) + ("fontconfig" ,fontconfig) + ("gdk-pixbuf+svg" ,gdk-pixbuf+svg) + ("glib" ,glib) + ("graphene" ,graphene) + ("libepoxy" ,libepoxy) + ("libx11" ,libx11) ;for x11 display-backend + ("libxcomposite" ,libxcomposite) + ("libxcursor" ,libxcursor) + ("libxdamage" ,libxdamage) + ("libxext" ,libxext) + ("libxfixes" ,libxfixes) + ("libxi" ,libxi) + ("libxinerama" ,libxinerama) ;for xinerama support + ("libxkbcommon" ,libxkbcommon) + ("libxrandr" ,libxrandr) + ("libxrender" ,libxrender) + ("pango" ,pango) + ("vulkan-headers" ,vulkan-headers) + ("vulkan-loader" ,vulkan-loader) ;for vulkan graphics API support + ("wayland" ,wayland) ;for wayland display-backend + ("wayland-protocols" ,wayland-protocols))) + (native-search-paths + (list + (search-path-specification + (variable "GUIX_GTK4_PATH") + (files '("lib/gtk-4.0"))))) + (search-paths native-search-paths) + (home-page "https://www.gtk.org/") + (synopsis "Cross-platform widget toolkit") + (description "GTK is a multi-platform toolkit for creating graphical user +interfaces. Offering a complete set of widgets, GTK is suitable for projects +ranging from small one-off tools to complete application suites.") + (license license:lgpl2.1+))) + (define-public gtk+-2 (package (name "gtk+") diff --git a/gnu/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch b/gnu/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch new file mode 100644 index 0000000000..4a60023bf7 --- /dev/null +++ b/gnu/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch @@ -0,0 +1,51 @@ +From 889294a93fc6464c2c2919bc47f6fd85ec823363 Mon Sep 17 00:00:00 2001 +From: Raghav Gururajan +Date: Tue, 18 May 2021 19:57:00 -0400 +Subject: [PATCH] [PATCH]: Honor GUIX_GTK4_PATH. + +This patch makes GTK look for additional modules in a list of directories +specified by the environment variable "GUIX_GTK4_PATH". This can be used +instead of "GTK_PATH" to make GTK find modules that are incompatible with +other major versions of GTK. +--- + gtk/gtkmodules.c | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/gtk/gtkmodules.c b/gtk/gtkmodules.c +index aace5dcbc9..193b6a02e9 100644 +--- a/gtk/gtkmodules.c ++++ b/gtk/gtkmodules.c +@@ -105,6 +105,7 @@ static char ** + get_module_path (void) + { + const char *module_path_env; ++ const gchar *module_guix_gtk4_path_env; + const char *exe_prefix; + char *module_path; + char *default_dir; +@@ -114,6 +115,7 @@ get_module_path (void) + return result; + + module_path_env = g_getenv ("GTK_PATH"); ++ module_guix_gtk4_path_env = g_getenv ("GUIX_GTK4_PATH"); + exe_prefix = g_getenv ("GTK_EXE_PREFIX"); + + if (exe_prefix) +@@ -121,7 +123,13 @@ get_module_path (void) + else + default_dir = g_build_filename (_gtk_get_libdir (), "gtk-4.0", NULL); + +- if (module_path_env) ++ if (module_guix_gtk4_path_env && module_path_env) ++ module_path = g_build_path (G_SEARCHPATH_SEPARATOR_S, ++ module_guix_gtk4_path_env, module_path_env, default_dir, NULL); ++ else if (module_guix_gtk4_path_env) ++ module_path = g_build_path (G_SEARCHPATH_SEPARATOR_S, ++ module_guix_gtk4_path_env, default_dir, NULL); ++ else if (module_path_env) + module_path = g_build_path (G_SEARCHPATH_SEPARATOR_S, + module_path_env, default_dir, NULL); + else +-- +2.31.1 + From patchwork Thu Sep 2 20:09:54 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Raghav Gururajan X-Patchwork-Id: 32520 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 484CD27BBE3; Thu, 2 Sep 2021 21:12:40 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,T_DKIM_INVALID, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id B51C127BBE1 for ; Thu, 2 Sep 2021 21:12:39 +0100 (BST) Received: from localhost ([::1]:43786 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mLt4g-0006z8-Qz for patchwork@mira.cbaines.net; Thu, 02 Sep 2021 16:12:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38818) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mLt38-0004Rv-Ib for guix-patches@gnu.org; Thu, 02 Sep 2021 16:11:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:58829) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mLt38-0001xM-AI for guix-patches@gnu.org; Thu, 02 Sep 2021 16:11:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mLt38-0004QT-1Y for guix-patches@gnu.org; Thu, 02 Sep 2021 16:11:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#48554] [PATCH wip-gnome v5 2/2] gnu: Update gtkmm to 4.2.0, add gtkmm@3, and adjust gtkmm@2. Resent-From: Raghav Gururajan Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 02 Sep 2021 20:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48554 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 48554@debbugs.gnu.org Cc: Raghav Gururajan Received: via spool by 48554-submit@debbugs.gnu.org id=B48554.163061340816943 (code B ref 48554); Thu, 02 Sep 2021 20:11:01 +0000 Received: (at 48554) by debbugs.gnu.org; 2 Sep 2021 20:10:08 +0000 Received: from localhost ([127.0.0.1]:42140 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mLt2G-0004P8-2h for submit@debbugs.gnu.org; Thu, 02 Sep 2021 16:10:08 -0400 Received: from out1.migadu.com ([91.121.223.63]:55675) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mLt2A-0004Oc-IH for 48554@debbugs.gnu.org; Thu, 02 Sep 2021 16:10:07 -0400 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raghavgururajan.name; s=key1; t=1630613400; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Kiy81K4gQSlIe0l3QKcCDtdGwq5x39uJqazcy/3VP6Y=; b=W2+IdkBZ96CsVJqTZ3ovyy8OKMbOf8XzXkKWq/c+qvrx64uzawBVdc1LYzpHulSJrgFnwk V5oWFudgEZNY2Bc/Svjete3EAAWS6+Z4zzpYockM0bAb9a5Vygr53XQXs4KlxGmUuL+i6t giib1ARnB8vvmQi95qC++s7oqSwUiJ+dd0PVcX+/WnUDhK3rrsNY0PhgCB/Y5jgCu3dSYG QYnFyIAVBdzvFyLTP3FvLsVITku9gC1Ku2avs03IwP+idGnnrXmGQj23+jcmBsjDQz1FkQ 5zY2Z5AgvqC0cIzlMsUMLflxUoEIoK4I2huYGurE6BfmCYA6IQK8DzC6WHigJQ== Date: Thu, 2 Sep 2021 16:09:54 -0400 Message-Id: <20210902200954.30924-2-rg@raghavgururajan.name> In-Reply-To: <20210902200954.30924-1-rg@raghavgururajan.name> References: <20210902200954.30924-1-rg@raghavgururajan.name> MIME-Version: 1.0 X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: rg@raghavgururajan.name X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: Raghav Gururajan X-ACL-Warn: , Raghav Gururajan via Guix-patches X-Patchwork-Original-From: Raghav Gururajan via Guix-patches via From: Raghav Gururajan X-getmail-retrieved-from-mailbox: Patches * gnu/packages/gtk.scm (gtkmm)[version]: Update to 4.2.0. [arguments](meson): New argument. [native-inputs]: Add glib:bin. [propagated-inputs]: Replace gtk+ with gtk. [synopsis]: Modify. [description]: Modify (gtkmm-3): New variable. (gtkmm-2)[arguments]: Strip certain inherited arguments. --- gnu/packages/gtk.scm | 48 +++++++++++++++++++++++++++++++------------- 1 file changed, 34 insertions(+), 14 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 97eda06d4b..e6bac6a230 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1747,7 +1747,7 @@ library.") (define-public gtkmm (package (name "gtkmm") - (version "3.24.4") + (version "4.2.0") (source (origin (method url-fetch) @@ -1756,11 +1756,12 @@ library.") (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv")))) + (base32 "12x9j82y37r4v0ngs22rzp4wmw7k2bbb9d3bymcczzz7y8w4q328")))) (build-system meson-build-system) (outputs '("out" "doc")) (arguments - `(#:configure-flags '("-Dbuild-documentation=true") + `(#:meson ,meson-0.55 ;project requires meson v0.54 or higher + #:configure-flags '("-Dbuild-documentation=true") #:phases (modify-phases %standard-phases (add-before 'check 'pre-check @@ -1783,6 +1784,7 @@ library.") (native-inputs `(("dot" ,graphviz) ("doxygen" ,doxygen) + ("glib:bin" ,glib "bin") ("m4" ,m4) ("mm-common" ,mm-common) ("perl" ,perl) @@ -1793,11 +1795,11 @@ library.") `(("atkmm" ,atkmm) ("cairomm" ,cairomm) ("glibmm" ,glibmm) - ("gtk+" ,gtk+) + ("gtk" ,gtk) ("pangomm" ,pangomm))) - (synopsis "C++ Interfaces for GTK+ and GNOME") + (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 +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 @@ -1810,6 +1812,30 @@ tutorial.") ;; Tools license:gpl2+)))) +(define-public gtkmm-3 + (package + (inherit gtkmm) + (name "gtkmm") + (version "3.24.4") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "0hv7pviln4cpjvpz7m7ga5krcsbibqzixdcn0dwzpz0cx71p3swv")))) + (arguments + (strip-keyword-arguments + '(#:meson) (package-arguments gtkmm))) + (propagated-inputs + `(("atkmm-2.28" ,atkmm-2.28) + ("cairomm-1.13" ,cairomm-1.13) + ("glibmm" ,glibmm) + ("gtk+" ,gtk+) + ("pangomm-2.42" ,pangomm-2.42))))) + (define-public gtkmm-2 (package (inherit gtkmm) @@ -1826,14 +1852,8 @@ tutorial.") (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"))))) + (strip-keyword-arguments + '(#:meson #:configure-flags) (package-arguments gtkmm))) (propagated-inputs `(("atkmm" ,atkmm-2.28) ("cairomm" ,cairomm-1.13)