aboutsummaryrefslogtreecommitdiffstats
path: root/mcgoron
diff options
context:
space:
mode:
authorGravatar Peter McGoron 2025-08-16 19:37:16 -0400
committerGravatar Peter McGoron 2025-08-16 19:37:16 -0400
commitb41b1a36b536038dcf887f69ef19a42d3771cff5 (patch)
tree27b37a4217d250154a9643c704a2771c060998d5 /mcgoron
parentgauche with path (diff)
Loko
Diffstat (limited to '')
-rw-r--r--mcgoron/guix/scheme-packages.scm31
1 files changed, 31 insertions, 0 deletions
diff --git a/mcgoron/guix/scheme-packages.scm b/mcgoron/guix/scheme-packages.scm
index d7ba866..f8dfed5 100644
--- a/mcgoron/guix/scheme-packages.scm
+++ b/mcgoron/guix/scheme-packages.scm
@@ -419,3 +419,34 @@
,(append-to "GAUCHE_DYNLOAD_PATH" "GUIX_GAUCHE_DYN_PATH")
impl)))))
+;;;;;;;;;;
+;;;; Loko
+;;;;;;;;;;
+
+(define-public loko-scheme-lib-dir "share/loko")
+
+(define-public loko-scheme-build-system
+ (default-copying-build-system 'loko
+ "Copy Scheme libraries into Loko directory"
+ loko-scheme-lib-dir))
+
+(define-public loko-scheme-with-path
+ (package/path loko-scheme
+ "loko-scheme"
+ "Loko Scheme with Guix paths"
+ "Wrapper for Loko that adds Guix-managed paths"
+ "/bin/loko"
+ "/bin/loko"
+ "GUIX_LOKO_PATH"
+ (list r6rs-search-path-specification r7rs-search-path-specification)
+ loko-scheme-lib-dir
+ `(lambda (sh impl)
+ (format #t
+ "#!~a
+
+ ~a
+ exec -a $0 \"~a\" \"$@\""
+ sh
+ ,(append-to "LOKO_LIBRARY_PATH" "GUIX_LOKO_PATH" "R6RS_LIBRARY_PATH" "R7RS_LIBRARY_PATH")
+ impl))))
+