GNU bug report logs - #74858
[PATCH] gnu: add guile-guix-graze

Previous Next

Package: guix-patches;

Reported by: bigbookofbug <at> proton.me

Date: Fri, 13 Dec 2024 20:20:02 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 74858 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#74858; Package guix-patches. (Fri, 13 Dec 2024 20:20:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to bigbookofbug <at> proton.me:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 13 Dec 2024 20:20:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: bigbookofbug <at> proton.me
To: guix-patches <at> gnu.org
Cc: emma thompson <bigbookofbug <at> proton.me>
Subject: [PATCH] gnu: add guile-guix-graze
Date: Fri, 13 Dec 2024 20:18:47 +0000
From: emma thompson <bigbookofbug <at> proton.me>

---
 gnu/packages/guile-xyz.scm | 63 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index bd5878d229..ef98fdbc54 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -2317,6 +2317,69 @@ (define-public guile2.2-ics
     (inputs (list guile-2.2))
     (propagated-inputs (list guile2.2-lib guile2.2-dsv guile2.2-smc))))
 
+(define-public guile-guix-graze
+  (let ((version "0.1"))
+    (package
+      (name "guix-graze")
+      (version version)
+      (source
+       (origin
+	 (method git-fetch)
+	 (uri (git-reference
+	       (url "https://gitlab.com/bigbookofbug/guix-graze")
+	       (commit version)))
+	 (file-name (git-file-name name version))
+	 (sha256
+	  (base32 "0fk8gfdnm41gwmhppjv7zwg5j7fb0n7ww27sdcdf8s9rjs9415fl"))))
+      (build-system gnu-build-system)
+      (arguments
+       (list
+	#:modules
+          `(((guix build guile-build-system)
+	     #:select
+	     (target-guile-effective-version))
+	    ,@%default-gnu-imported-modules)
+	  #:phases
+          (with-imported-modules
+            `((guix build guile-build-system)
+              ,@%default-gnu-imported-modules)
+            #~(modify-phases
+                    %standard-phases
+                    (add-after
+			'install
+			'graze-wrap-binaries
+		      (lambda* (#:key inputs #:allow-other-keys)
+			(let* ((version (target-guile-effective-version))
+			       (site-ccache
+				(string-append "/lib/guile/" version "/site-ccache"))
+			       (site (string-append "/share/guile/site/" version))
+			       (dep-path
+				(lambda (env path)
+				  (list env ":" 'prefix
+					(cons (string-append
+					       nil output
+					       path)
+					      (map (lambda (input)
+						     (string-append
+						      (assoc-ref inputs input)
+						      path))
+						   (list "guile-config"))))))
+			       (bin (string-append (ungexp output) "/bin/")))
+			  (wrap-program
+			      (string-append bin "graze")
+			    (dep-path "GUILE_LOAD_PATH" site)
+			    (dep-path "GUILE_LOAD_COMPILED_PATH" site-ccache)))))))))
+      (native-inputs
+       (list autoconf automake pkg-config guile-3.0))
+      (inputs (list bash-minimal guile-3.0))
+      (propagated-inputs (list guile-config))
+      (synopsis "A guix shell templating and automation system")
+      (description
+       "Graze is a command-line tool used for complex guix shell invocations, where a simple manifest does not suffice. Through the use of a shell.scm file, it allows for a declarative approach to Guix development environments, and a project templating system inspired by Nix's flake templates.")
+      (home-page
+   "https://gitlab.com/bigbookofbug/guix-graze")
+      (license license:gpl3+))))
+
 (define-public guile-imanifest
   (let ((commit "ccd5a2111b008d778106f5595a3a585954d95d0")
         (revision "0"))

base-commit: 0787a180b3ca64d3958438920ca1b58a2a27fba4
-- 
2.46.0






This bug report was last modified 185 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.