From patchwork Fri Jan 19 22:36:05 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vivien Kraus X-Patchwork-Id: 59729 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 EC57627BBE9; Sat, 3 Feb 2024 18:23:20 +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=-3.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_MSPIKE_H5,RCVD_IN_MSPIKE_WL, SPF_HELO_PASS,URIBL_BLOCKED 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 0671627BBEB for ; Sat, 3 Feb 2024 18:23:19 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rWKfI-0000rP-MC; Sat, 03 Feb 2024 13:22:56 -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 1rWKfF-0000oa-CL for guix-patches@gnu.org; Sat, 03 Feb 2024 13:22:53 -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 1rWKfF-00072i-4W for guix-patches@gnu.org; Sat, 03 Feb 2024 13:22:53 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rWKfQ-000213-IZ for guix-patches@gnu.org; Sat, 03 Feb 2024 13:23:04 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68556] [PATCH gnome-team v6 2/7] gnu: gnome-shell-extensions: Wrap the extensions. Resent-From: Vivien Kraus Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 03 Feb 2024 18:23:04 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68556 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68556@debbugs.gnu.org Cc: rg@raghavgururajan.name, vivien@planete-kraus.eu, liliana.prikler@gmail.com, maxim.cournoyer@gmail.com Received: via spool by 68556-submit@debbugs.gnu.org id=B68556.17069845577665 (code B ref 68556); Sat, 03 Feb 2024 18:23:04 +0000 Received: (at 68556) by debbugs.gnu.org; 3 Feb 2024 18:22:37 +0000 Received: from localhost ([127.0.0.1]:47049 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rWKez-0001zY-E8 for submit@debbugs.gnu.org; Sat, 03 Feb 2024 13:22:37 -0500 Received: from planete-kraus.eu ([89.234.140.182]:54968) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rWKex-0001z8-Ee for 68556@debbugs.gnu.org; Sat, 03 Feb 2024 13:22:36 -0500 Received: from planete-kraus.eu (localhost [127.0.0.1]) by planete-kraus.eu (OpenSMTPD) with ESMTP id 871b17a7; Sat, 3 Feb 2024 18:22:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=planete-kraus.eu; h= message-id:in-reply-to:references:from:date:subject:to:cc :mime-version; s=albinoniB; bh=hTI7NzEoz+cBTDzSPHygBi358eg=; b=P wzEKGIZgyqNguTRomjIecstfnh8vvfTeN676kK9mrjhL5CAjve1OucGS0TBOF9mC l2tiRRqVxpzFUyCV6uUFdIWlVGvXbUgB9ULQ/rdjKHO0m3ePDPBbyv582DHvqJ4C lxXki/9jxRw/W5iRC2ya/yQcyWseRR4iUzvaZFgCENY8eiUtg/tg85O6FoDYMcbo gdsAMFk+KQjX/7C/x1ov0tPitRyyo6uirRae4HpgxHC0FspqBGj9eoW5NXVZHR3a hovJZm0whsRP/YSVhghWwtm/Q3q9DhZYOy2mwAoFxZqzQK5L0xYc6Am8S1Bz50hK m6CtZBqndCXDzgr5XrJ7Q== Received: by planete-kraus.eu (OpenSMTPD) with ESMTPSA id dd284e2f (TLSv1.3:TLS_CHACHA20_POLY1305_SHA256:256:NO); Sat, 3 Feb 2024 18:22:17 +0000 (UTC) Message-ID: In-Reply-To: References: Date: Fri, 19 Jan 2024 23:36:05 +0100 MIME-Version: 1.0 User-Agent: Evolution 3.48.4 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: , Reply-to: Vivien Kraus X-ACL-Warn: , Vivien Kraus via Guix-patches X-Patchwork-Original-From: Vivien Kraus via Guix-patches via From: Vivien Kraus 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 The top-level modules that are wrapped are the /extension.js and /prefs.js of every extension sub-directory. The GI_TYPELIB_PATH used contains glib for every extension, and gnome-menus for Applications Menu. * gnu/packages/gnome.scm (gnome-shell-extensions) [#:phases]: Add 'wrap-extensions. [native-inputs]: Add gobject-introspection. [inputs]: Add gnome-menus and glib. [propagated-imputs]: Remove glib. Change-Id: I58b79ca92fbceebb9bbb150102fa428022e3eb63 --- gnu/packages/gnome.scm | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6919576eae..b92cea6b17 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -10726,13 +10726,39 @@ (define-public gnome-shell-extensions "1aq1n75m1svsv0ppg66n9qch26rhjxcv3q33a3skf7hsydr5wd4c")))) (build-system meson-build-system) (arguments - '(#:configure-flags '("-Dextension_set=all"))) + (list + #:configure-flags #~'("-Dextension_set=all") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'wrap-extensions + (lambda _ + (use-modules (ice-9 textual-ports) + (guix build utils)) + (for-each + (lambda (file-to-wrap) + (with-atomic-file-replacement file-to-wrap + (lambda (source wrapped) + (format wrapped "'~a'.split(':').forEach(" + (getenv "GI_TYPELIB_PATH")) + (display + (string-append "path => imports.gi.GIRepository.Repository" + ".prepend_search_path(path));\n") + wrapped) + (let ((input-size + (begin + (seek source 0 SEEK_END) + (ftell source)))) + (seek source 0 SEEK_SET) + (sendfile wrapped source input-size))))) + (find-files "extensions" "(extension|prefs)\\.js"))))))) (native-inputs (list `(,glib "bin") gettext-minimal + gobject-introspection ; to set GI_TYPELIB_PATH pkg-config)) - (propagated-inputs - (list glib)) + (inputs + (list glib + gnome-menus)) ; for Applications Menu (synopsis "Extensions for GNOME Shell") (description "GNOME Shell extensions modify and extend GNOME Shell functionality and behavior.")