From patchwork Sun Feb 16 23:52:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "pelzflorian (Florian Pelz)" X-Patchwork-Id: 38757 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 E0A9A27BBEA; Sun, 16 Feb 2025 23:53:15 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 9252527BBE2 for ; Sun, 16 Feb 2025 23:53:15 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tjoRe-0002K1-3r; Sun, 16 Feb 2025 18:53:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tjoRb-0002Jc-SU for guix-patches@gnu.org; Sun, 16 Feb 2025 18:53:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tjoRb-000121-Iq for guix-patches@gnu.org; Sun, 16 Feb 2025 18:53:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:From:To:In-Reply-To:References:Subject; bh=MPZS3Y3zZQLy0udEiOAhUYNu1N6ga7nAbDqkfL/MnM0=; b=aWiIrN/LXTVN6xYRV1BAXMO9Fa+DzhjXkG49FIQA/HkbAqJS5T24MqPhEQBhAW0T7A03uSUdpfHwMpVv9i4Um2GfCBZuEEXBGAh3RlDUX7bjVznKhDHbt0c+6OGcZs9MjpuhHk3lTcYGjxdIackHK5TA4J3fNToyYQlMHIuUBP4m3OsmrzvhGPGagEp884AqxpIoMr8gZZpV27c+bixq9T0nAPaZkVl+o7PGgRwQu51oyuZG2Rus5P2C/4TUUrV3kkI6hF12ET2snk4VIw2tX9NWDHq7H+WtwNGFQAECTVlHnin2/8XJWHTpT44WAxbnYujbMrvWHogIBgCoxagt+A==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tjoRa-0008KH-Mm; Sun, 16 Feb 2025 18:53:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#76246] [PATCH 1/5] gnu: guile-cairo: Remove expat from inputs. References: In-Reply-To: Resent-From: Florian Pelz Original-Sender: "Debbugs-submit" Resent-CC: liliana.prikler@gmail.com, maxim.cournoyer@gmail.com, vivien@planete-kraus.eu, guix-patches@gnu.org Resent-Date: Sun, 16 Feb 2025 23:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 76246 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76246@debbugs.gnu.org Cc: Florian Pelz , Liliana Marie Prikler , Maxim Cournoyer , Vivien Kraus X-Debbugs-Original-Xcc: Liliana Marie Prikler , Maxim Cournoyer , Vivien Kraus Received: via spool by 76246-submit@debbugs.gnu.org id=B76246.173974995031892 (code B ref 76246); Sun, 16 Feb 2025 23:53:02 +0000 Received: (at 76246) by debbugs.gnu.org; 16 Feb 2025 23:52:30 +0000 Received: from localhost ([127.0.0.1]:39129 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tjoR3-0008II-HQ for submit@debbugs.gnu.org; Sun, 16 Feb 2025 18:52:29 -0500 Received: from relay.yourmailgateway.de ([188.68.61.107]:40315) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tjoR1-0008I2-Sl for 76246@debbugs.gnu.org; Sun, 16 Feb 2025 18:52:28 -0500 Received: from mors-relay-8405.netcup.net (localhost [127.0.0.1]) by mors-relay-8405.netcup.net (Postfix) with ESMTPS id 4Yx2dk2YdPz6y7N for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:52:26 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pelzflorian.de; s=key2; t=1739749946; bh=7e0ceX5HhnAiROHDtbRTdFZiPzPyFEmHaBSQ/t2qjxU=; h=From:To:Cc:Subject:Date:From; b=JUM/QpN1gBeTjaBSXCDvHfMxIm5IB2yZPjDPphpfn6r7Iq50R0cvcNlfJl37u1X+T +Me7z7NzlKxSVyPDFgnzRTag5EyurTfMm77ii0fDAM62xSnF7xjiWZo/aD4xQ2jHdY y+2tHUgTOZ5Wg80KsR9wSn/n8LBl+gu7llPXg0vhsHoosy5AXRlzCBl7Ctx1g5WVXL xPOlO4kPHmfulScxRVdsoMIYjYCDnPTkg3ZOtCt6u8M7kdPPYklryGeVGQlGT7jaW8 YKB3GLcrxOLEYrPGKzHDngvZ3H7HaW4o6QDutKMVXg4MxctFS8kroopzHV5ZwZz0HT Urh7esx0aN+EA== Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8405.netcup.net (Postfix) with ESMTPS id 4Yx2dk1dt2z6y6q for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:52:26 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net Received: from mxe217.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4Yx2dj6CVmz8tXP for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:52:25 +0100 (CET) Received: from florianhp.fritz.box (ipb21a5dbf.dynamic.kabel-deutschland.de [178.26.93.191]) by mxe217.netcup.net (Postfix) with ESMTPSA id B09FB84613; Mon, 17 Feb 2025 00:52:20 +0100 (CET) From: Florian Pelz Date: Mon, 17 Feb 2025 00:52:10 +0100 Message-ID: X-Mailer: git-send-email 2.48.1 MIME-Version: 1.0 X-Rspamd-Queue-Id: B09FB84613 X-Rspamd-Server: rspamd-worker-8404 X-NC-CID: NU3UXy/KIdibPVZlcSkhXOiCRKp/PReK+qoumFoAQhfxugeR9/mSatrB 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches expat is not needed by guile-cairo nor guile2.2-cairo. * gnu/packages/gtk.scm (guile-cairo)[inputs]: Remove expat. Change-Id: Ie8f2c35c52725326cc8f103c45125e4378d29793 --- gnu/packages/gtk.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) base-commit: 5e3e1b782b87d5bfe903f978490955cc20a70e5a diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 011a1db687..8e893d66c3 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1454,7 +1454,7 @@ (define-public guile-cairo (find-files module-dir "\\.scm$")) #t)))))) (inputs - (list guile-lib expat guile-3.0)) + (list guile-lib guile-3.0)) (propagated-inputs ;; The .pc file refers to 'cairo'. (list cairo)) From patchwork Sun Feb 16 23:52:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "pelzflorian (Florian Pelz)" X-Patchwork-Id: 38759 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 45EAF27BBEA; Sun, 16 Feb 2025 23:54:23 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id B5EC427BBE2 for ; Sun, 16 Feb 2025 23:54:22 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tjoSc-0002XS-P4; Sun, 16 Feb 2025 18:54:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tjoSY-0002W4-Oh for guix-patches@gnu.org; Sun, 16 Feb 2025 18:54:02 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tjoSY-00014R-GL for guix-patches@gnu.org; Sun, 16 Feb 2025 18:54:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=Y+h+4jzGZgVYOlykBkctakoqh0stdk3tPsDzxbXkePg=; b=IVxrhVj3PnY1c1QmJuXaJSQmJBLtt6JhQm/Zm3DjBC1oYJvojkZMZosaZ75uZbnWGaPFTVVmhTfZAXT4PKaw2jdvyggTofhLn1eOcyrYjiuzYV6DK2thcTfSQ4iejdSodjWYbZuQAIaYXa9SlJrUkAIY1DBm7KsjW2MShV/SrYJRV0UU17v0uLlp0MGcl48q8uIchRhSAsrEmQ6w5xbnNEWsi1rUNucERLIPjEIwlf2dDQNrLFrQWRTGXug0EGxwfwaq0u/2IPZQkmHT0JjRBvUIqNVlOpD2iAtapvL+QbBT5A42+kcj4nDTtPxvmHpoSDjMpHti+cyI97ekY4h08A==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tjoSY-0008OB-9D; Sun, 16 Feb 2025 18:54:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#76246] [PATCH 2/5] gnu: Add guile-cairo-next. Resent-From: Florian Pelz Original-Sender: "Debbugs-submit" Resent-CC: liliana.prikler@gmail.com, maxim.cournoyer@gmail.com, vivien@planete-kraus.eu, guix-patches@gnu.org Resent-Date: Sun, 16 Feb 2025 23:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 76246 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76246@debbugs.gnu.org Cc: Florian Pelz , Liliana Marie Prikler , Maxim Cournoyer , Vivien Kraus X-Debbugs-Original-Xcc: Liliana Marie Prikler , Maxim Cournoyer , Vivien Kraus Received: via spool by 76246-submit@debbugs.gnu.org id=B76246.173975000232096 (code B ref 76246); Sun, 16 Feb 2025 23:54:02 +0000 Received: (at 76246) by debbugs.gnu.org; 16 Feb 2025 23:53:22 +0000 Received: from localhost ([127.0.0.1]:39144 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tjoRu-0008LZ-1H for submit@debbugs.gnu.org; Sun, 16 Feb 2025 18:53:22 -0500 Received: from relay.yourmailgateway.de ([188.68.63.162]:42547) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tjoRr-0008LN-DM for 76246@debbugs.gnu.org; Sun, 16 Feb 2025 18:53:20 -0500 Received: from mors-relay-8201.netcup.net (localhost [127.0.0.1]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4Yx2fV0knNz3s1F for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:53:06 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pelzflorian.de; s=key2; t=1739749986; bh=745hQHYPjYdLd+8ah+Deen3X0424BLLCK/IgU0iCT3M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=DlpOI/muCnBoR4dTAjhiUVDBAT37qrZIAmN+NhWs2+6mqd5D8QPqjnob59yMccfz9 eo6vyYuTmo1bJeSh2FSNcLfryQ5NAd8pWkTAq8PtIcnNbS2nw0jAKxUfPLaVl53cXb zWKcXyjvPOTRFu83CJ/UVpvZ1cS0vt0aFrgzBpgzwJhP9UpOjyJbmuLALmjN11tRTh OBxxGgz8HTUJJZLs8xBZgrxmkAr+95Pszp/I+dncW+1mULtruG2mZW4S6zifoEQhas IDTmplsqgRtiwn3dkc26kag3Qn9BurkfeKfnMVMeEToHzFxz6VFo20KmfSa4MWAY0E 3towmMrIkPQkQ== Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8201.netcup.net (Postfix) with ESMTPS id 4Yx2fV01C4z3rw4 for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:53:05 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net Received: from mxe217.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4Yx2fR4zv7z8t4M for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:53:03 +0100 (CET) Received: from florianhp.fritz.box (ipb21a5dbf.dynamic.kabel-deutschland.de [178.26.93.191]) by mxe217.netcup.net (Postfix) with ESMTPSA id 7CA4284609; Mon, 17 Feb 2025 00:52:58 +0100 (CET) From: Florian Pelz Date: Mon, 17 Feb 2025 00:52:49 +0100 Message-ID: <565889c10a90c95361aa0b4a58751b710bda207b.1739749706.git.pelzflorian@pelzflorian.de> X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Rspamd-Queue-Id: 7CA4284609 X-Rspamd-Server: rspamd-worker-8404 X-NC-CID: mKBZNTC2GO0FLT70Plj/GHkmRXe00Hnbvsfse05WVBewIzudRovgldmN 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/gtk.scm (guile-cairo-next): New variable. Change-Id: I328afe58d46e60243e075edead12afc0d1c4a98a --- gnu/packages/gtk.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 8e893d66c3..2698fdb1c7 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -37,6 +37,7 @@ ;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2023 Janneke Nieuwenhuizen ;;; Copyright © 2024 John Kehayias +;;; Copyright © 2025 Florian Pelz ;;; ;;; This file is part of GNU Guix. ;;; @@ -1481,6 +1482,45 @@ (define-public guile2.2-cairo ,@(fold alist-delete (package-inputs guile-cairo) '("guile" "guile-lib")))))) +(define-public guile-cairo-next + ;; A commit with cairo-pointer->context, missing from guile-cairo@1.11.2 + ;; and needed by animated-paintable from g-golf-gtk-4-examples. + (let ((commit "30da459d7a4380174ff243b1560d5512a4bca86e") + (revision "0")) + (package + (inherit guile-cairo) + (name "guile-cairo-next") + (version (git-version "1.11.2" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.savannah.nongnu.org/guile-cairo.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0dslfldzgxis8g0g3xaffcqnd1njzz23fjy0v3lc0r2694ra4ny4")))) + ;; To allow running the check phase before install, use a libtool path + ;; similar to David Pirotte's suggested patch + ;; . + (arguments + (substitute-keyword-arguments (package-arguments guile-cairo) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'build 'fix-dynamic-link-path + (lambda _ + ;; Make libguile-cairo foreign extension usable in tests. + (substitute* "cairo/config.scm" + (("\\(define \\*cairo-lib-path\\* .*") + "\(define *cairo-lib-path* \"libguile-cairo\")\n")))) + (add-before 'check 'set-libtool-path + (lambda _ + (setenv "LTDL_LIBRARY_PATH" "../../guile-cairo/.libs"))))))) + (inputs + (list gettext-minimal guile-3.0 guile-lib)) + (native-inputs + (list autoconf automake libtool pkg-config texinfo))))) + (define-public guile-rsvg ;; Use a recent snapshot that supports Guile 2.2 and beyond. (let ((commit "05c6a2fd67e4fea1a7c3ff776729dc931bae6678") From patchwork Sun Feb 16 23:53:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "pelzflorian (Florian Pelz)" X-Patchwork-Id: 38758 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 F100527BBE9; Sun, 16 Feb 2025 23:54:13 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 3258C27BBE2 for ; Sun, 16 Feb 2025 23:54:12 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tjoSa-0002WS-Cm; Sun, 16 Feb 2025 18:54:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tjoSZ-0002WE-7j for guix-patches@gnu.org; Sun, 16 Feb 2025 18:54:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tjoSY-00014X-Vc for guix-patches@gnu.org; Sun, 16 Feb 2025 18:54:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=6VO68nRf2x6zwAVh1VDZrRSVwVC7ztZ4PIvpu9AvuzE=; b=d3XjkFhG6NOmIrJPyRBlvrSFAbVqQFD1r6EfLldF+zv+BySm7cq2V+mS3wvWpw20d1IlLXP3Kl1oI1MtQWEvZ3A7s2oykV4OBrNunuWTQ68zSmjHloGCYk8y1fnEmp1KQEmI6a9c3fd0Z8uNEnhnEiS1Sn41ZC6ydH9qkRZTHG+dR0G0HgW2ROKOrIv0PJ1ePTNCjwZABDkENJq1umn+iySMT/CoZawEvOvdt89dPkYnDVVwk1xn6kDmIXCzCTIJIMAecMwY1H3CvIbPQJUtHgtZlkySIAS7xqWosgRRkucF9gkwkRHixmbcBJvYDIsnVjaSuWQCJUfpB/NCySkcrA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tjoSY-0008OM-R5 for guix-patches@gnu.org; Sun, 16 Feb 2025 18:54:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#76246] [PATCH 3/5] gnu: guile-g-golf: Document --no-grafts requirement. Resent-From: Florian Pelz Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 16 Feb 2025 23:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 76246 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76246@debbugs.gnu.org Cc: Florian Pelz Received: via spool by 76246-submit@debbugs.gnu.org id=B76246.173975003032193 (code B ref 76246); Sun, 16 Feb 2025 23:54:02 +0000 Received: (at 76246) by debbugs.gnu.org; 16 Feb 2025 23:53:50 +0000 Received: from localhost ([127.0.0.1]:39152 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tjoSL-0008NB-Lu for submit@debbugs.gnu.org; Sun, 16 Feb 2025 18:53:49 -0500 Received: from relay.yourmailgateway.de ([188.68.63.166]:46567) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tjoSJ-0008Mx-BE for 76246@debbugs.gnu.org; Sun, 16 Feb 2025 18:53:48 -0500 Received: from mors-relay-8202.netcup.net (localhost [127.0.0.1]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4Yx1ty2wXZz3xng for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:18:50 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pelzflorian.de; s=key2; t=1739747930; bh=NUmG3z9SQQzNHgvK0ZXBVqYDC6CH/RZx1zKuirZJHQk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PfZat/JcB1s9q9X/rbNO1n8PUS963w2AyRMtiI+6k+GpO9CT2iTB7P1GunzqUfLMZ h0ct1oxGmjwbcjz6PgrkRHhC3H5VzxPsTu5dUld5yhvg84WJMrsJJ4E22xxEWIG4nB deWKL08khNPYnJPhuDPY8PrDilHDGJ2+liiWNzy9IUj/c+aiqrpZlsslrvz8gafkod D/x18lBa7Nq6cnJ04AcoG6auYZT/BjxtTJNY4+mPc17/6MGnR5spAKbQRMYFRXyEn3 AKvPAPAu/CNNcxZyHakPeH0jrhUmE1kg3vrGBxT53iAf3GAtx6ypJY4ufWs7cwAKLN h1WbaBkSsWOGQ== Received: from policy01-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8202.netcup.net (Postfix) with ESMTPS id 4Yx1ty2CT2z3xmD for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:18:50 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at policy01-mors.netcup.net Received: from mxe217.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy01-mors.netcup.net (Postfix) with ESMTPS id 4Yx2gF4fHfz8t4M for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:53:45 +0100 (CET) Received: from florianhp.fritz.box (ipb21a5dbf.dynamic.kabel-deutschland.de [178.26.93.191]) by mxe217.netcup.net (Postfix) with ESMTPSA id 7B81F8462D; Mon, 17 Feb 2025 00:53:40 +0100 (CET) From: Florian Pelz Date: Mon, 17 Feb 2025 00:53:24 +0100 Message-ID: X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Rspamd-Queue-Id: 7B81F8462D X-Rspamd-Server: rspamd-worker-8404 X-NC-CID: DJFr1f7TQz967sRlp8iv37KbHIjicoesxE8UWuVvVT2yp59bZsFzeLxR 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches Note that packages are unaffected. * gnu/packages/guile-xyz.scm: Tell about grafts bug. Change-Id: Ic0b2c63daa07c693171965d90410aef5a2e41d49 --- gnu/packages/guile-xyz.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 921d8b46d6..9877e01748 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -2603,7 +2603,12 @@ (define-public guile-g-golf modern applications in Guile Scheme. It comprises a direct binding to the GObject Introspection API and higher-level functionality for importing Gnome libraries and making GObject classes (and methods) available in Guile's -object-oriented programming system, GOOPS.") +object-oriented programming system, GOOPS. + +Note: Currently, when developing with G-Golf in @code{guix shell}, there is a +@uref{https://bugs.gnu.org/75157, grafts bug in Guix}. To avoid it, use Guix' +@code{--no-grafts} option. Guix packages that use @code{wrap-program} are +unaffected.") (license license:lgpl3+))) (define-public g-golf From patchwork Sun Feb 16 23:54:08 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "pelzflorian (Florian Pelz)" X-Patchwork-Id: 38760 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 69C5727BBEA; Sun, 16 Feb 2025 23:55:09 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 924B227BBE9 for ; Sun, 16 Feb 2025 23:55:08 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tjoTZ-0002mz-Vm; Sun, 16 Feb 2025 18:55:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tjoTX-0002mc-1z for guix-patches@gnu.org; Sun, 16 Feb 2025 18:55:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tjoTW-00017Y-OW for guix-patches@gnu.org; Sun, 16 Feb 2025 18:55:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=wzVrOE4uxn9sXyavFt6BnWSdrNOcxlGE+EJuO3JGjh8=; b=mFBzCHqGNG73MbRMgMoPD6/27+4vJwym8g2BmZ0oamstEeJJOA7YTvQp+iw4SmyjY1CfD0JLDEoMsJQgpta/FrC4E7XixKjxjADzFWzdQyUw7GOvrZ+pIXqzyvLnELetwtgqNWuP4dVlAe29PwVXFGEtqFdxrke5OovDLsxn/RGPgWKufHOhJp8fh5kwH8bgCDSp0mfEubjNLFlLdXnPNTOy2wcQIg+PreFm5L09gF/+MqoM3Cpt8DbhB+fSE+DZYxkLs52Wx9z50um52UVqID8LGW96H+VA98J92ERLcdIzYPnwWLbDqZeslDhNsUeMwF/NHio68dGe8dJd/ZHJnw==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tjoTW-0008Rm-Hp for guix-patches@gnu.org; Sun, 16 Feb 2025 18:55:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#76246] [PATCH 4/5] gnu: Add G-Golf's GTK-4 examples. Resent-From: Florian Pelz Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 16 Feb 2025 23:55:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 76246 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76246@debbugs.gnu.org Cc: Florian Pelz Received: via spool by 76246-submit@debbugs.gnu.org id=B76246.173975010132457 (code B ref 76246); Sun, 16 Feb 2025 23:55:02 +0000 Received: (at 76246) by debbugs.gnu.org; 16 Feb 2025 23:55:01 +0000 Received: from localhost ([127.0.0.1]:39163 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tjoTR-0008RO-7P for submit@debbugs.gnu.org; Sun, 16 Feb 2025 18:55:01 -0500 Received: from relay.yourmailgateway.de ([188.68.63.102]:51039) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tjoTM-0008R9-IN for 76246@debbugs.gnu.org; Sun, 16 Feb 2025 18:54:56 -0500 Received: from mors-relay-2502.netcup.net (localhost [127.0.0.1]) by mors-relay-2502.netcup.net (Postfix) with ESMTPS id 4Yx2hW3Lygz64gM for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:54:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pelzflorian.de; s=key2; t=1739750091; bh=GA7Nq6qGV0NMsaIpEOGEHBGqvkhQtbvxW44lvSJLsVs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lJKcMq9wWvDLF0d92RDsA/jp5DOf6TIxxEbGa4eVMFV4GtKUD8JetRn474cav3It5 0hZaq5EFjNcQUu6BBjBy4gU+wM4jgsKH0bKJMaggA6Y0EAm01e4+NfBG/hNxhzpQPh zft1finHqTfxjRdKE5fR4opTaW0yPjf+OvXRti+6XtUC9ylPXGrfPyE1qTgwAj0pze j667xtvJU7DRVjE2yRbedlhZuYLZgEVGKBqYqnZP/k+YfvG+g88AcV5f8HXqg1FEpJ bgqBTLxKANR0cEYUmExM0irH2VIuuzpHQ6DC3pXdZwK1G/wpzQ+55ojETWIsTNFHHe yGUZYMsjYOfQg== Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-2502.netcup.net (Postfix) with ESMTPS id 4Yx2hW2fjJz4wg1 for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:54:51 +0100 (CET) Received: from mxe217.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4Yx2hW0wbkz8sbH for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:54:51 +0100 (CET) Received: from florianhp.fritz.box (ipb21a5dbf.dynamic.kabel-deutschland.de [178.26.93.191]) by mxe217.netcup.net (Postfix) with ESMTPSA id C41AA845BC; Mon, 17 Feb 2025 00:54:45 +0100 (CET) From: Florian Pelz Date: Mon, 17 Feb 2025 00:54:08 +0100 Message-ID: <9b62b633066ceb34b6ceed7534fa6527171dc50c.1739749706.git.pelzflorian@pelzflorian.de> X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Rspamd-Queue-Id: C41AA845BC X-Rspamd-Server: rspamd-worker-8404 X-NC-CID: M9Oyo6HPCyQc0e4HSfeQcjU7hWwI8VkRx4jDAlmUjOdf1T5TlLsO4v4B 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/guile-xyz.scm (g-golf-gtk-4-examples): New variable. Change-Id: I19b182eb71095ca2deacdb4011c8f50dfcfc8476 --- gnu/packages/guile-xyz.scm | 182 ++++++++++++++++++++++++++++++++++++- 1 file changed, 181 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 9877e01748..7ca6a1bd75 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -1,4 +1,4 @@ -;;; GNU Guix --- Functional package management for GNU +;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012-2024 Ludovic Courtès ;;; Copyright © 2014, 2015, 2018 Mark H Weaver ;;; Copyright © 2015, 2017, 2022 Christine Lemmer-Webber @@ -53,6 +53,7 @@ ;;; Copyright © 2024 Alec Barreto ;;; Copyright © 2024 Josep Bigorra ;;; Copyright © 2024 Ashish SHUKLA +;;; Copyright © 2025 Florian Pelz ;;; ;;; This file is part of GNU Guix. ;;; @@ -2623,6 +2624,185 @@ (define-public guile2.2-g-golf (replace "guile" guile-2.2) (replace "guile-lib" guile2.2-lib))))) +(define-public g-golf-gtk-4-examples + (package + (inherit guile-g-golf) + (name "g-golf-gtk-4-examples") + (arguments + (list + #:modules `(((guix build guile-build-system) + #:select + (target-guile-effective-version)) + (srfi srfi-26) + ,@%default-gnu-modules) + #:phases + (with-imported-modules `((guix build guile-build-system) + ,@%default-gnu-imported-modules) + #~(modify-phases %standard-phases + (add-after 'unpack 'prepare-examples + (lambda _ + (chdir "examples/gtk-4") + ;; Re-use the existing Makefile for its wildcard syntax. + (rename-file "Makefile.am" "Makefile") + ;; Add a rule to install the examples. This also + ;; installs UI, CSS and Scheme files to /bin, but + ;; better keep how G-Golf packages them. + (let ((port (open-file "Makefile" "al"))) + (format port " +prefix = ~a +bindir = $(prefix)/bin +.PHONY: install +install: + mkdir -p $(bindir)/css + mkdir -p $(bindir)/demos + mkdir -p $(bindir)/images + mkdir -p $(bindir)/ui + for f in $(EXTRA_DIST); do \\ + cp $$f $(bindir)/$$f; \\ + done + install demos/libfpt.so $(bindir)/demos +" #$output) + (close-port port)))) + (delete 'configure) + (replace 'build + (lambda _ + ;; The layout-manager-2 example calls `make', GCC at run-time. + ;; But since it would compile to the read-only /gnu/store, we + ;; deviate by compiling in advance in the build phase, + ;; ignoring failing `make' calls. We do not propagate `make'. + (with-directory-excursion "demos" + (when #$(%current-target-system) + (substitute* "Makefile" + (("^CC = gcc$") + (string-append "CC = " #$(cc-for-target) "\n")))) + (system* "make")))) + ;; There are no tests for examples, but we do an installcheck phase, + ;; which respects when #:tests? is turned off. So delete 'check. + (delete 'check) + (add-before 'install 'patch-scm-files + (lambda* (#:key inputs #:allow-other-keys) + ;; `current-filename' calls in examples are broken. + (map (lambda (binary) + (let ((installed-binary (string-append + #$output "/bin/" binary))) + (substitute* binary + (("\\(current-filename\\)") + (string-append "\"" installed-binary "\"")) + (("\\(getcwd\\)") + (string-append "\"" #$output "/bin\"")) + (("^exec guile ") + (string-append + "exec " (search-input-file inputs "/bin/guile") + " "))))) + (map (cut string-drop <> 2) ;strip ./ prefix + (find-files "." (lambda (file stat) + ;executables or .scm modules + (or (= (stat:perms stat) #o755) + (string-suffix? ".scm" + file)))))))) + (add-after 'install 'wrap-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let* ((version (target-guile-effective-version)) + (g-golf (assoc-ref inputs "guile-g-golf")) + (gcairo (assoc-ref inputs "guile-cairo-next")) + (adwaita-icons (assoc-ref inputs "adwaita-icon-theme")) + (scm (string-append "/share/guile/site/" version)) + (go (string-append "/lib/guile/" + version "/site-ccache")) + (binaries + (find-files "." (lambda (file stat) ;executables + (= (stat:perms stat) #o755))))) + (map (lambda (binary) + (let ((installed-binary (string-append + #$output "/bin/" binary))) + (wrap-program installed-binary + `("GUILE_LOAD_PATH" prefix + (,(string-append g-golf scm) + ,(string-append gcairo scm))) + `("GUILE_LOAD_COMPILED_PATH" prefix + (,(string-append g-golf go) + ,(string-append gcairo go))) + `("GI_TYPELIB_PATH" prefix + (,(getenv "GI_TYPELIB_PATH"))) + ;; Library path for libraries loaded by binaries. + `("LD_LIBRARY_PATH" prefix + (,(string-append gcairo "/lib"))) + `("XDG_DATA_DIRS" suffix + (,(string-append adwaita-icons "/share")))))) + binaries)))) + ;; Add installcheck to ensure nothing breaks. + (add-after 'strip 'installcheck + (lambda* (#:key inputs tests? #:allow-other-keys) + (cond + ((not tests?) + (display "test suite not run\n")) + (#$(%current-target-system) + (display "cross-compiling; reftest skipped\n")) + (else + ;; Start an X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + (let* ((g-golf-drawing (string-append + #$output "/bin/drawing-widget")) + (pid (spawn g-golf-drawing `(,g-golf-drawing) + #:search-path? #f))) + (sleep 10) ;2s is enough on my machine + (display "Taking a screenshot with G-Golf.\n") + (system* "import" "-window" "root" + "drawing-widget.out.png") + (sleep 5) ;1s is enough on my machine + (kill pid SIGINT) + (waitpid pid)) + (let* ((python (search-input-file inputs "/bin/python3")) + (pygobject-drawing #$(this-package-native-input + "drawing-widget.py")) + (pid (spawn python `(,python ,pygobject-drawing) + #:search-path? #f))) + (sleep 5) ;1s is enough on my machine + (display "Taking a screenshot with Pygobject.\n") + (system* "import" "-window" "root" + "drawing-widget.ref.png") + (sleep 5) + (kill pid SIGINT) + (waitpid pid)) + (if (= (pk (system* "compare" "-metric" "AE" "-fuzz" "1%" + "drawing-widget.out.png" + "drawing-widget.ref.png" + "drawing-widget.dif.png")) 0) + (display "All good; they look the same.\n") + (error "Reftest failed; screenshots differ.")))))))))) + (inputs + (list adwaita-icon-theme + bash-minimal + gtk + guile-3.0 + guile-cairo-next + guile-g-golf)) + (native-inputs + (list pkg-config + which + ;; For installcheck: + imagemagick + python-minimal + python-pygobject + xorg-server-for-tests + ;; Python version of drawing-widget from + ;; https://lists.gnu.org/archive/html/guile-user/2024-05/msg00032.html + (origin + (method url-fetch) + (uri "\ +https://lists.gnu.org/archive/html/guile-user/2024-05/txtT_80XuINsX.txt") + (sha256 + (base32 + "07j2v159a3bb99i8kwbqrcgslcmhhnqa5ah53q2b9bdk8042grsx")) + (file-name "drawing-widget.py")))) + (propagated-inputs (list)) + (synopsis "Example GTK 4 apps written in Guile with G-Golf") + (description + "G-Golf port of (a subset of) the upstream @code{gtk4-demo} examples in +the @code{gtk:bin} Guix package output. They also show how to wrap G-Golf +applications in a Guix package."))) + (define-public g-wrap (package (name "g-wrap") From patchwork Sun Feb 16 23:55:37 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "pelzflorian (Florian Pelz)" X-Patchwork-Id: 38761 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 11EAF27BBEA; Sun, 16 Feb 2025 23:57:10 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 665F527BBE2 for ; Sun, 16 Feb 2025 23:57:09 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tjoVT-00037I-KB; Sun, 16 Feb 2025 18:57:03 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tjoVS-000375-Q2 for guix-patches@gnu.org; Sun, 16 Feb 2025 18:57:02 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tjoVS-0001OV-Gz for guix-patches@gnu.org; Sun, 16 Feb 2025 18:57:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=8VTQIxsCRMBSAYn+9Tk7SyPCWTtYsLv9attXEqOwEcY=; b=QBztSgicYTC+2c9nr2JA2lDlz99Y5QhCkFSFmREhwSX48mXz040tvvEA59yBUqz64/7JRvXbzZIYS2Edv2JLfpIqHqHqJR+mXpFfCQfoOtyLaEs+BxBxrQRDfv9dl7Rql5lFXkBL9hPAOu9dZjLLQkLMc4tqz25AfJ0CqV1tp8cGriYWynRnoZ74rPIZ0IqyALXXdU25LxPeHSWlDvTKNCEvfO2UTwDBfOof+X4RCTSWncjfI5pKtHZzh/DZxanYFCfcIQjjkzcsOECDjzL8tSjhv1RQkQw07MCFeCPdVQsUcfP/zrk5QOWEeHuLah1ocuAWpu326llOWSkFAiNheQ==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tjoVS-0000DK-Cc for guix-patches@gnu.org; Sun, 16 Feb 2025 18:57:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#76246] [PATCH v2 5/5] gnu: Add G-Golf's Adw-1 examples. Resent-From: Florian Pelz Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 16 Feb 2025 23:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 76246 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76246@debbugs.gnu.org Cc: Florian Pelz Received: via spool by 76246-submit@debbugs.gnu.org id=B76246.1739750168641 (code B ref 76246); Sun, 16 Feb 2025 23:57:02 +0000 Received: (at 76246) by debbugs.gnu.org; 16 Feb 2025 23:56:08 +0000 Received: from localhost ([127.0.0.1]:39180 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tjoUZ-0000AF-Kt for submit@debbugs.gnu.org; Sun, 16 Feb 2025 18:56:08 -0500 Received: from relay.yourmailgateway.de ([188.68.61.103]:60819) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tjoUT-00009a-MN for 76246@debbugs.gnu.org; Sun, 16 Feb 2025 18:56:06 -0500 Received: from mors-relay-8403.netcup.net (localhost [127.0.0.1]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4Yx2jr3Ztpz84hh for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:56:00 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=pelzflorian.de; s=key2; t=1739750160; bh=/KjU1r08ItcT/Zg+ybm42XlcoGy5ZckHGIHRlanLee0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dfXF82x38V5S9845QfNqCR4tyxKMMnupYQGCJ5hSMXDAsBMqPTn5zKyZFiA3hgT0h ZFk/acnzfgTSi33nkl9QRR8U46Z1oqSK9OKWmekR5peuFeHdRR8jjfSc4U+RgcKe9Y zidInoGCY5UWp08wCZskkD9aQySav+gucqeRkwYRPmdpoMlBVQ9w7x82O2LDrNm87b bzPsM9YhFyFIkFmGL5e4LgnQ+jw9Fi77J7hAUeDvYoh8yS/2/7jrsfukTn89+lFrqe jejLSsi6IGhhJt+s15yD7lEyd2EiGU7AraBRMH5g9PrchAHM5hZllFHRuGJ1Cb2jDs 3/F31asAlSGaw== Received: from policy02-mors.netcup.net (unknown [46.38.225.35]) by mors-relay-8403.netcup.net (Postfix) with ESMTPS id 4Yx2jr3CBBz84hb for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:56:00 +0100 (CET) Received: from mxe217.netcup.net (unknown [10.243.12.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by policy02-mors.netcup.net (Postfix) with ESMTPS id 4Yx2jr1pq9z8sbH for <76246@debbugs.gnu.org>; Mon, 17 Feb 2025 00:56:00 +0100 (CET) Received: from florianhp.fritz.box (ipb21a5dbf.dynamic.kabel-deutschland.de [178.26.93.191]) by mxe217.netcup.net (Postfix) with ESMTPSA id 099D984613; Mon, 17 Feb 2025 00:55:55 +0100 (CET) From: Florian Pelz Date: Mon, 17 Feb 2025 00:55:37 +0100 Message-ID: X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-Rspamd-Queue-Id: 099D984613 X-Rspamd-Server: rspamd-worker-8404 X-NC-CID: BjptgIttwWxwYiwP7hbTJCQLvAjQy8+hz8sLZb9n9XY2Ne14ntMrImEI 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/guile-xyz.scm (g-golf-adw-1-examples): New variable. Change-Id: I160e58ceaeb4867f9b21a0a32f198113e36b5c88 --- gnu/packages/guile-xyz.scm | 125 +++++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 7ca6a1bd75..1ceb25be7d 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -2803,6 +2803,131 @@ (define-public g-golf-gtk-4-examples the @code{gtk:bin} Guix package output. They also show how to wrap G-Golf applications in a Guix package."))) +(define-public g-golf-adw-1-examples + (package + (inherit guile-g-golf) + (name "g-golf-adw-1-examples") + (build-system glib-or-gtk-build-system) + (arguments + (list + #:tests? #f ;there are no tests for examples + #:modules `(((guix build guile-build-system) + #:select + (target-guile-effective-version)) + (guix build glib-or-gtk-build-system) + (srfi srfi-26) + ,@%default-gnu-modules) + #:phases + (with-imported-modules `((guix build guile-build-system) + ,@%default-gnu-imported-modules) + #~(modify-phases %standard-phases + (add-after 'unpack 'prepare-examples + (lambda _ + (chdir "examples/adw-1") + ;; Re-use the existing Makefile for its wildcard syntax. + (rename-file "Makefile.am" "Makefile") + (substitute* "Makefile" + ;; Fix syntax error. + (("hello-world") + "hello-world \\")) + ;; Add a rule to install the examples. This also + ;; installs UI, CSS and Scheme files to /bin, but + ;; better keep how G-Golf packages them. + (let ((port (open-file "Makefile" "al"))) + (format port " +prefix = ~a +bindir = $(prefix)/bin +.PHONY: install +install: + mkdir -p $(bindir)/demo/icons + mkdir -p $(bindir)/demo/pages + for f in $(EXTRA_DIST); do \\ + cp -r $$f $(bindir)/$$f; \\ + done + cp demo/g-resources $(bindir)/demo/g-resources +" #$output) + (close-port port)))) + (delete 'configure) + (replace 'build + (lambda _ + ;; Create files for adwaita-1-demo needed in install phase. + (with-directory-excursion "demo" + (system* "make") + (system* "glib-compile-resources" + "--target" "g-resources" + "g-resources.xml")))) + (add-before 'install 'patch-scm-files + (lambda* (#:key inputs #:allow-other-keys) + ;; `current-filename' calls in examples are broken. + (map (lambda (binary) + (let ((installed-binary (string-append + #$output "/bin/" binary))) + (substitute* binary + (("\\(current-filename\\)") + (string-append "\"" installed-binary "\"")) + (("^exec guile ") + (string-append + "exec " (search-input-file inputs "/bin/guile") + " "))))) + (map (cut string-drop <> 2) ;strip ./ prefix + (find-files "." (lambda (file stat) + ;executables or .scm modules + (or (= (stat:perms stat) #o755) + (string-suffix? ".scm" + file)))))))) + (add-after 'install 'wrap-binaries + (lambda* (#:key inputs #:allow-other-keys) + (let* ((version (target-guile-effective-version)) + (g-golf (assoc-ref inputs "guile-g-golf")) + (adwaita-icons (assoc-ref inputs "adwaita-icon-theme")) + (libadwaita-icons (assoc-ref inputs "libadwaita")) + (scm (string-append "/share/guile/site/" version)) + (go (string-append "/lib/guile/" + version "/site-ccache")) + (binaries + (find-files "." (lambda (file stat) ;executables + (= (stat:perms stat) #o755))))) + (map (lambda (binary) + (let ((installed-binary (string-append + #$output "/bin/" binary))) + (wrap-program installed-binary + `("GUILE_LOAD_PATH" prefix + (,(string-append g-golf scm))) + `("GUILE_LOAD_COMPILED_PATH" prefix + (,(string-append g-golf go))) + `("GI_TYPELIB_PATH" prefix + (,(getenv "GI_TYPELIB_PATH"))) + `("GUIX_GDK_PIXBUF_MODULE_FILES" suffix + (,(getenv "GUIX_GDK_PIXBUF_MODULE_FILES"))) + `("XDG_DATA_DIRS" suffix + (,(string-append #$output "/bin/demo") + ,(string-append adwaita-icons "/share") + ,(string-append libadwaita-icons "/share")))))) + binaries)))) + (add-after 'wrap-binaries 'move-binaries + (lambda _ + ;; Move the adwaita-1-demo wrapper to place it directly in /bin. + (rename-file (string-append + #$output "/bin/demo/adwaita-1-demo") + (string-append + #$output "/bin/adwaita-1-demo")))))))) + (inputs + (list adwaita-icon-theme + bash-minimal + libadwaita + (librsvg-for-system) + gtk + guile-3.0 + guile-g-golf)) + (native-inputs (list `(,glib "bin") ;for glib-compile-resources + guile-3.0)) + (propagated-inputs (list)) + (synopsis "Example Adwaita 1 apps written in Guile with G-Golf") + (description + "G-Golf port of (a subset of) the upstream @code{adwaita-1-demo} examples +in the @code{libadwaita} Guix package. They also show how to wrap G-Golf +applications in a Guix package."))) + (define-public g-wrap (package (name "g-wrap")