From patchwork Tue Jan 2 05:29:53 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Paul A. Patience" X-Patchwork-Id: 58305 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 06C9227BBE9; Tue, 2 Jan 2024 05:31: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=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED 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 4E43427BBE2 for ; Tue, 2 Jan 2024 05:31:21 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rKXMm-0006xo-5z; Tue, 02 Jan 2024 00:31: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 1rKXMi-0006xB-Ro for guix-patches@gnu.org; Tue, 02 Jan 2024 00:31:00 -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 1rKXMi-0004jh-2S for guix-patches@gnu.org; Tue, 02 Jan 2024 00:31:00 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rKXMk-0001Zq-8d for guix-patches@gnu.org; Tue, 02 Jan 2024 00:31:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68201] [PATCH 1/2] gnu: fish: Update to 3.7.0. Resent-From: "Paul A. Patience" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 02 Jan 2024 05:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68201 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68201@debbugs.gnu.org Cc: "Paul A. Patience" Received: via spool by 68201-submit@debbugs.gnu.org id=B68201.17041734181200 (code B ref 68201); Tue, 02 Jan 2024 05:31:02 +0000 Received: (at 68201) by debbugs.gnu.org; 2 Jan 2024 05:30:18 +0000 Received: from localhost ([127.0.0.1]:49206 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rKXM1-0000IB-UI for submit@debbugs.gnu.org; Tue, 02 Jan 2024 00:30:18 -0500 Received: from mail-4018.proton.ch ([185.70.40.18]:58825) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rKXLz-0008Hy-Vq for 68201@debbugs.gnu.org; Tue, 02 Jan 2024 00:30:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apatience.com; s=protonmail2; t=1704173407; x=1704432607; bh=NZWtfP82DTNPi8jJ+UzJEqtB+opmXC9qeTeztc37KwA=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=aOlAvWnYZtiIAfIc+EeULMKSd+zLzCpzwTlNboeFLCxcFiTVq+Vn4d2uuz2FsE4K0 gJzTeA50+xqcVOdeBEa+SO70eek7H6Ckghq8LsVujUwDx4DZYaKwNeTfZDt/M31Znr yCwBm1SIjCDHo+4sFCVTUJPY+O7hLxe/h5ea9vWKcdpGRYeXzmi3C2o1g7A4xximTw LkrFEZueoCCN9JBUR0wb9iEpO06bkE0zYkSnDljOnxnLbP1dtWWymPnXOm3kw4k8Or VOE0KTr68B1QPICiXYay6vvAZIXi3EiN+dfsOrySDIExsH/lPW43+jiPBoMRnivt2W JAeCXCUF/TQEQ== Date: Tue, 02 Jan 2024 05:29:53 +0000 From: "Paul A. Patience" Message-ID: <875afacb4d9f86d9da32e7469f7e0b8125b153ce.1704173186.git.paul@apatience.com> In-Reply-To: References: Feedback-ID: 19227857:user:proton MIME-Version: 1.0 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/shells.scm (fish): Update to 3.7.0. Change-Id: I662d85f4f4af3d7ad4f3d8997678f4acfef6fee0 --- gnu/packages/shells.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 8d2aadc0aa..798dba1d7c 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -120,7 +120,7 @@ (define-public dash (define-public fish (package (name "fish") - (version "3.6.1") + (version "3.7.0") (source (origin (method url-fetch) @@ -128,7 +128,7 @@ (define-public fish "releases/download/" version "/" "fish-" version ".tar.xz")) (sha256 - (base32 "1cj91fyba259vhbxvq55w2yf2p2vj201gr15pa59swx6gjs2nh2m")))) + (base32 "1c9slg6azhc9jn1sb75wip4hl9zyibjy9nay505nkw0lnxw766yz")))) (build-system cmake-build-system) (inputs (list fish-foreign-env ncurses pcre2 From patchwork Tue Jan 2 05:30:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Paul A. Patience" X-Patchwork-Id: 58304 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 D35EB27BBEA; Tue, 2 Jan 2024 05:31:18 +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=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,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 1527C27BBE2 for ; Tue, 2 Jan 2024 05:31:17 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rKXMk-0006xS-4N; Tue, 02 Jan 2024 00:31:02 -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 1rKXMi-0006xC-S8 for guix-patches@gnu.org; Tue, 02 Jan 2024 00:31:00 -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 1rKXMi-0004ji-Gx for guix-patches@gnu.org; Tue, 02 Jan 2024 00:31:00 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rKXMk-0001ao-Mu for guix-patches@gnu.org; Tue, 02 Jan 2024 00:31:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68201] [PATCH 2/2] gnu: fish: Improve package style. Resent-From: "Paul A. Patience" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 02 Jan 2024 05:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 68201 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68201@debbugs.gnu.org Cc: "Paul A. Patience" Received: via spool by 68201-submit@debbugs.gnu.org id=B68201.17041734373521 (code B ref 68201); Tue, 02 Jan 2024 05:31:02 +0000 Received: (at 68201) by debbugs.gnu.org; 2 Jan 2024 05:30:37 +0000 Received: from localhost ([127.0.0.1]:49210 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rKXMK-0000t5-76 for submit@debbugs.gnu.org; Tue, 02 Jan 2024 00:30:37 -0500 Received: from mail-40136.proton.ch ([185.70.40.136]:56527) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rKXMH-0000dy-Fb for 68201@debbugs.gnu.org; Tue, 02 Jan 2024 00:30:34 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apatience.com; s=protonmail2; t=1704173424; x=1704432624; bh=pBgSJlR8YTedp5Gq8P0HeIorPu1uTRTKLiOEuHk8El0=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=KRbABwTQupv1s2WTDEBEUeMDc93K0pLAzCeaRA+kb5bo2hFmLc4dpmwCqRbf1214M JR1B2QE8YDLIoUlq4xUJc5GoUDX8BtEv40Kb6FqCWtl5Wnm+a4VwY1cWSeh+RfGr/O j8cBabsxw8eP4oD4hxhua4ZsRS7mU5bNxyqDaNsn5IUE8fYtsa6u901KqldmdqHqLs 0l6tUByN7h0gOgdQWOhbBzJLbVLv2zXXxSy7wvV8Xv5dX2+isVBPeVORtnGhwPbXEl /QdKz6U33ed7scdxKChbmF/Ax3OAHozM0C3+3/5KCs0k2Jjv16psuXDhG3wdo06+ip 4QnZQTjt+xN5A== Date: Tue, 02 Jan 2024 05:30:00 +0000 From: "Paul A. Patience" Message-ID: In-Reply-To: References: Feedback-ID: 19227857:user:proton MIME-Version: 1.0 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/shells.scm (fish)[arguments]: Use G-expressions. Drop trailing #t in phases. Move above native-inputs. [native-inputs]: Add bash and coreutils. Move above inputs. [home-page]: Move above synopsis. Change-Id: I964b15f47629fa01d649e586f81eb5ae8e7046e3 --- gnu/packages/shells.scm | 248 ++++++++++++++++++++-------------------- 1 file changed, 122 insertions(+), 126 deletions(-) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 798dba1d7c..bfa32ee0ee 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2022 Andrew Tropin ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2023 David Pflug +;;; Copyright © 2024 Paul A. Patience ;;; ;;; This file is part of GNU Guix. ;;; @@ -130,133 +131,129 @@ (define-public fish (sha256 (base32 "1c9slg6azhc9jn1sb75wip4hl9zyibjy9nay505nkw0lnxw766yz")))) (build-system cmake-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ + ;; some tests write to $HOME + (setenv "HOME" (getcwd)))) + (add-after 'unpack 'patch-tests + (lambda _ + (let ((coreutils #$(this-package-native-input "coreutils")) + (bash #$(this-package-native-input "bash"))) + ;; This test sporadically fails in the build container + ;; because of leftover zombie processes, which are not + ;; reaped automatically: + ;; "Found existing zombie processes. Clean up zombies before running this test." + ;; Disabling parallel tests does not reliably prevent it. + (delete-file "tests/checks/jobs.fish") + ;; This test fails. + (delete-file "tests/checks/pipeline-pgroup.fish") + ;; This one tries to open a terminal & can't simply be deleted. + (substitute* "cmake/Tests.cmake" + ((".* interactive\\.fish.*") "")) + ;; This one needs to chdir successfully. + (substitute* "tests/checks/vars_as_commands.fish" + (("/usr/bin") "/tmp")) + ;; These contain absolute path references. + (substitute* "src/fish_tests.cpp" + (("/bin/echo" echo) (string-append coreutils echo)) + (("/bin/ca" ca) (string-append coreutils ca)) + (("\"(/bin/c)\"" _ c) (string-append "\"" coreutils c "\"")) + (("/bin/ls_not_a_path" ls-not-a-path) + (string-append coreutils ls-not-a-path)) + (("/bin/ls" ls) (string-append coreutils ls)) + (("(/bin/)\"" _ bin) (string-append coreutils bin "\"")) + (("/bin -" bin) (string-append coreutils bin)) + (((string-append + "do_test\\(is_potential_path\\(" + "L\"/usr\", wds, vars, PATH_REQUIRE_DIR\\)\\);")) + "") + ;; Not all mentions of /usr... need to exist, but these do. + (("\"/usr(|/lib)\"" _ subdirectory) + (string-append "\"/tmp" subdirectory "\""))) + (substitute* + (append (find-files "tests" ".*\\.(in|out|err)$") + (find-files "tests/checks" ".*\\.fish")) + (("/bin/pwd" pwd) (string-append coreutils pwd)) + (("/bin/echo" echo) (string-append coreutils echo)) + (("/bin/sh" sh) (string-append bash sh)) + (("/bin/ls" ls) (string-append coreutils ls))) + (substitute* (find-files "tests" ".*\\.(in|out|err)$") + (("/usr/bin") (string-append coreutils "/bin")))))) + ;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish. + (add-after 'patch-tests 'patch-fish-config + (lambda _ + (let ((port (open-file "etc/config.fish" "a"))) + (display (string-append + "\n\n" + "# Patched by Guix.\n" + "# Source /etc/fish/config.fish.\n" + "if test -f /etc/fish/config.fish\n" + " source /etc/fish/config.fish\n" + "end\n") + port) + (close-port port)))) + ;; Embed absolute paths. + (add-before 'install 'embed-absolute-paths + (lambda _ + (substitute* "share/functions/__fish_print_help.fish" + (("nroff") (which "nroff"))))) + ;; Enable completions, functions and configurations in user's and + ;; system's guix profiles by adding them to __extra_* variables. + (add-before 'install 'patch-fish-extra-paths + (lambda _ + (let ((port (open-file "share/__fish_build_paths.fish" "a"))) + (display + (string-append + "\n\n" + "# Patched by Guix.\n" + "# Enable completions, functions and configurations in user's" + " and system's guix profiles by adding them to __extra_*" + " variables.\n" + "set -l __guix_profile_paths ~/.guix-profile" + " /run/current-system/profile\n" + "set __extra_completionsdir" + " $__guix_profile_paths\"/etc/fish/completions\"" + " $__guix_profile_paths\"/share/fish/vendor_completions.d\"" + " $__extra_completionsdir\n" + "set __extra_functionsdir" + " $__guix_profile_paths\"/etc/fish/functions\"" + " $__guix_profile_paths\"/share/fish/vendor_functions.d\"" + " $__extra_functionsdir\n" + "set __extra_confdir" + " $__guix_profile_paths\"/etc/fish/conf.d\"" + " $__guix_profile_paths\"/share/fish/vendor_conf.d\"" + " $__extra_confdir\n") + port) + (close-port port)))) + ;; Use fish-foreign-env to source /etc/profile. + (add-before 'install 'source-etc-profile + (lambda _ + (let ((port (open-file "share/__fish_build_paths.fish" "a"))) + (display + (string-append + "\n\n" + "# Patched by Guix.\n" + "# Use fish-foreign-env to source /etc/profile.\n" + "if status is-login\n" + " set fish_function_path " + #$(this-package-input "fish-foreign-env") "/share/fish/functions" + " $__fish_datadir/functions\n" + " fenv source /etc/profile\n" + " set -e fish_function_path\n" + "end\n") + port) + (close-port port))))))) + (native-inputs + (list doxygen groff ; for 'fish --help' + bash coreutils procps)) ; for the test suite (inputs (list fish-foreign-env ncurses pcre2 - python)) ; for fish_config and manpage completions - (native-inputs - (list doxygen groff ; for 'fish --help' - procps)) ; for the test suite - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'set-env - (lambda _ - ;; some tests write to $HOME - (setenv "HOME" (getcwd)) - #t)) - (add-after 'unpack 'patch-tests - (lambda* (#:key inputs #:allow-other-keys) - (let ((coreutils (assoc-ref inputs "coreutils")) - (bash (assoc-ref inputs "bash"))) - ;; This test sporadically fails in the build container - ;; because of leftover zombie processes, which are not - ;; reaped automatically: -;; "Found existing zombie processes. Clean up zombies before running this test." - ;; Disabling parallel tests does not reliably prevent it. - (delete-file "tests/checks/jobs.fish") - ;; This test fails. - (delete-file "tests/checks/pipeline-pgroup.fish") - ;; This one tries to open a terminal & can't simply be deleted. - (substitute* "cmake/Tests.cmake" - ((".* interactive\\.fish.*") "")) - ;; This one needs to chdir successfully. - (substitute* "tests/checks/vars_as_commands.fish" - (("/usr/bin") "/tmp")) - ;; These contain absolute path references. - (substitute* "src/fish_tests.cpp" - (("/bin/echo" echo) (string-append coreutils echo)) - (("/bin/ca" ca) (string-append coreutils ca)) - (("\"(/bin/c)\"" _ c) (string-append "\"" coreutils c "\"")) - (("/bin/ls_not_a_path" ls-not-a-path) - (string-append coreutils ls-not-a-path)) - (("/bin/ls" ls) (string-append coreutils ls)) - (("(/bin/)\"" _ bin) (string-append coreutils bin "\"")) - (("/bin -" bin) (string-append coreutils bin)) - (((string-append - "do_test\\(is_potential_path\\(" - "L\"/usr\", wds, vars, PATH_REQUIRE_DIR\\)\\);")) - "") - ;; Not all mentions of /usr... need to exist, but these do. - (("\"/usr(|/lib)\"" _ subdirectory) - (string-append "\"/tmp" subdirectory "\""))) - (substitute* - (append (find-files "tests" ".*\\.(in|out|err)$") - (find-files "tests/checks" ".*\\.fish")) - (("/bin/pwd" pwd) (string-append coreutils pwd)) - (("/bin/echo" echo) (string-append coreutils echo)) - (("/bin/sh" sh) (string-append bash sh)) - (("/bin/ls" ls) (string-append coreutils ls))) - (substitute* (find-files "tests" ".*\\.(in|out|err)$") - (("/usr/bin") (string-append coreutils "/bin"))) - #t))) - ;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish. - (add-after 'patch-tests 'patch-fish-config - (lambda _ - (let ((port (open-file "etc/config.fish" "a"))) - (display (string-append - "\n\n" - "# Patched by Guix.\n" - "# Source /etc/fish/config.fish.\n" - "if test -f /etc/fish/config.fish\n" - " source /etc/fish/config.fish\n" - "end\n") - port) - (close-port port)) - #t)) - ;; Embed absolute paths. - (add-before 'install 'embed-absolute-paths - (lambda _ - (substitute* "share/functions/__fish_print_help.fish" - (("nroff") (which "nroff"))) - #t)) - ;; Enable completions, functions and configurations in user's and - ;; system's guix profiles by adding them to __extra_* variables. - (add-before 'install 'patch-fish-extra-paths - (lambda _ - (let ((port (open-file "share/__fish_build_paths.fish" "a"))) - (display - (string-append - "\n\n" - "# Patched by Guix.\n" - "# Enable completions, functions and configurations in user's" - " and system's guix profiles by adding them to __extra_*" - " variables.\n" - "set -l __guix_profile_paths ~/.guix-profile" - " /run/current-system/profile\n" - "set __extra_completionsdir" - " $__guix_profile_paths\"/etc/fish/completions\"" - " $__guix_profile_paths\"/share/fish/vendor_completions.d\"" - " $__extra_completionsdir\n" - "set __extra_functionsdir" - " $__guix_profile_paths\"/etc/fish/functions\"" - " $__guix_profile_paths\"/share/fish/vendor_functions.d\"" - " $__extra_functionsdir\n" - "set __extra_confdir" - " $__guix_profile_paths\"/etc/fish/conf.d\"" - " $__guix_profile_paths\"/share/fish/vendor_conf.d\"" - " $__extra_confdir\n") - port) - (close-port port)) - #t)) - ;; Use fish-foreign-env to source /etc/profile. - (add-before 'install 'source-etc-profile - (lambda* (#:key inputs #:allow-other-keys) - (let ((port (open-file "share/__fish_build_paths.fish" "a"))) - (display - (string-append - "\n\n" - "# Patched by Guix.\n" - "# Use fish-foreign-env to source /etc/profile.\n" - "if status is-login\n" - " set fish_function_path " - (assoc-ref inputs "fish-foreign-env") "/share/fish/functions" - " $__fish_datadir/functions\n" - " fenv source /etc/profile\n" - " set -e fish_function_path\n" - "end\n") - port) - (close-port port)) - #t))))) + python)) ; for fish_config and manpage completions + (home-page "https://fishshell.com/") (synopsis "The friendly interactive shell") (description "Fish (friendly interactive shell) is a shell focused on interactive use, @@ -267,7 +264,6 @@ (define-public fish access to all the fish documentation in your web browser. Other features include smart terminal handling based on terminfo, an easy to search history, and syntax highlighting.") - (home-page "https://fishshell.com/") (license license:gpl2))) (define-public fish-foreign-env