From patchwork Wed Jun 18 13:48:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Christopher Baines X-Patchwork-Id: 43114 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 3F4A827BC4A; Wed, 18 Jun 2025 14:49:30 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, 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 3FEA127BC49 for ; Wed, 18 Jun 2025 14:49:29 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uRtAD-00056P-QN; Wed, 18 Jun 2025 09:49:17 -0400 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 1uRt9z-00055E-OV for guix-patches@gnu.org; Wed, 18 Jun 2025 09:49:04 -0400 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 1uRt9z-0007ym-BL for guix-patches@gnu.org; Wed, 18 Jun 2025 09:49:03 -0400 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:Subject; bh=5CPgucmWav31rb4mdN+af0Jzq7uwKGTYHHy6zpEPIec=; b=NaZKUC/wUGRnDAIEgstpRhHWBWeftvrVt+X6Ab49id1Ll234NUKRRnNuITDoYYCGaFUORtZuyRZf14H3Khj2AP7a44clcXSNrd6lugplGsxtgPdaMHPllgC6yiZc2JCAmvA8WvOtGMXY7ZU/7bjx+4D7uOdq37dPlqSMEb0lKfRd+pEXKDU3iQLFBzFBB3s6kETenb7qVRUNYKZvOAiC1v1e2j2Kj63XdJNUNlTCeuJxmvMhs3RfO9YVD3gu7UUqVp+N7McH+0O5zaDRxIMf6nOtXqRsz+SyjvaPYLo86DK4Edk4WKtS2YJeDGqXIKkvffjyMF0YcfpqHbAOI7jMWw==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1uRt9y-00022Z-Oq for guix-patches@gnu.org; Wed, 18 Jun 2025 09:49:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#78825] [PATCH] gnu: Add guile-documenta. Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 18 Jun 2025 13:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 78825 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 78825@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.17502545277734 (code B ref -1); Wed, 18 Jun 2025 13:49:02 +0000 Received: (at submit) by debbugs.gnu.org; 18 Jun 2025 13:48:47 +0000 Received: from localhost ([127.0.0.1]:49564 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1uRt9e-000209-28 for submit@debbugs.gnu.org; Wed, 18 Jun 2025 09:48:46 -0400 Received: from lists.gnu.org ([2001:470:142::17]:52446) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1uRt9X-0001zF-Fm for submit@debbugs.gnu.org; Wed, 18 Jun 2025 09:48:38 -0400 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 1uRt9R-0004v6-Ec for guix-patches@gnu.org; Wed, 18 Jun 2025 09:48:29 -0400 Received: from mira.cbaines.net ([2a01:7e00:e000:2f8:fd4d:b5c7:13fb:3d27]) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uRt9L-0007ar-Cr for guix-patches@gnu.org; Wed, 18 Jun 2025 09:48:29 -0400 Received: from localhost (unknown [IPv6:2a02:6b67:e390:8b00::1ce5]) by mira.cbaines.net (Postfix) with ESMTPSA id 8F84927BC49 for ; Wed, 18 Jun 2025 14:48:18 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id caf45491 for ; Wed, 18 Jun 2025 13:48:17 +0000 (UTC) From: Christopher Baines Date: Wed, 18 Jun 2025 14:48:14 +0100 Message-ID: X-Mailer: git-send-email 2.49.0 MIME-Version: 1.0 Received-SPF: pass client-ip=2a01:7e00:e000:2f8:fd4d:b5c7:13fb:3d27; envelope-from=mail@cbaines.net; helo=mira.cbaines.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, T_SPF_TEMPERROR=0.01, UNPARSEABLE_RELAY=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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 (guile-documenta): New variable. Change-Id: I86cc729ecb4d367c066fb5bd2278c62cc255b738 --- gnu/packages/guile-xyz.scm | 76 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) base-commit: d276296a6f8d09cc8fcbe927abb67dca52a71667 diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index fabe887bfe..ec48c814f7 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -81,6 +81,7 @@ (define-module (gnu packages guile-xyz) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) + #:use-module (gnu packages check) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -788,6 +789,81 @@ (define-public guile-daemon you send to a FIFO file.") (license license:gpl3+))) +(define-public guile-documenta + (package + (name "guile-documenta") + (version "0.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://codeberg.org/luis-felipe/guile-documenta") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1jv8nd7hlrsg2v2p5wacs8x3rzmhxwcg83pjsrnwks346jvsfxnv")))) + (build-system guile-build-system) + (inputs + (list bash-minimal + guile-3.0)) + (native-inputs + (list texinfo + guile-proba)) + (propagated-inputs + (list guile-config + guile-lib)) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'set-paths 'add-output-to-guile-load-paths + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (guile-version (target-guile-effective-version)) + (scm-path (string-append out + "/share/guile/site/" + guile-version)) + (go-path (string-append out + "/lib/guile/" + guile-version + "/site-ccache"))) + (setenv "GUILE_LOAD_PATH" + (string-append scm-path ":" + (getenv "GUILE_LOAD_PATH"))) + (setenv "GUILE_LOAD_COMPILED_PATH" + (string-append + go-path ":" + (getenv "GUILE_LOAD_COMPILED_PATH")))))) + (add-after 'build 'build-manual + (lambda _ + (invoke "bash" "build-manual.sh"))) + (add-after 'build 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "proba" "run" "tests")))) + (add-after 'check 'install-wrapped-script + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin-dir (string-append out "/bin")) + (script (string-append bin-dir "/documenta"))) + (mkdir-p bin-dir) + (copy-file "documenta.scm" script) + (chmod script #o555) + (wrap-program script + `("GUILE_LOAD_PATH" prefix (,(getenv "GUILE_LOAD_PATH"))) + `("GUILE_LOAD_COMPILED_PATH" prefix + (,(getenv "GUILE_LOAD_COMPILED_PATH")))))))) + #:scheme-file-regexp + #~(begin + (use-modules (ice-9 regex)) + (lambda (file stat) (string-match "/documenta/.*\\.scm$" file))))) + (home-page "https://luis-felipe.gitlab.io/guile-documenta/") + (synopsis "Ggenerate API documentation for Guile projects") + (description + "Guile Documentá is a command-line program and accompanying library to +generate API documentation for GNU Guile projects.") + (license license:public-domain))) + (define-public guile-dsv (package (name "guile-dsv")