|
|
@@ -30,10 +30,12 @@ |
|
|
|
|
|
|
|
(define config-lookup |
|
|
|
(let ((config '(("prefix" . "@prefix@") |
|
|
|
("exec_prefix" . "@exec_prefix@") |
|
|
|
("datarootdir" . "@datarootdir@") |
|
|
|
("guilemoduledir" . "@guilemoduledir@") |
|
|
|
("guileobjectdir" . "@guileobjectdir@") |
|
|
|
("localedir" . "@localedir@"))) |
|
|
|
(var-ref-regexp (make-regexp "\\$\\{([a-z]+)\\}"))) |
|
|
|
(var-ref-regexp (make-regexp "\\$\\{([a-z_]+)\\}"))) |
|
|
|
(define (expand-var-ref match) |
|
|
|
(lookup (match:substring match 1))) |
|
|
|
(define (expand str) |
|
|
@@ -45,14 +47,17 @@ |
|
|
|
|
|
|
|
(define (maybe-augment-load-paths!) |
|
|
|
(unless (getenv "GUIX_UNINSTALLED") |
|
|
|
(let ((module-dir (config-lookup "guilemoduledir"))) |
|
|
|
(let ((module-dir (config-lookup "guilemoduledir")) |
|
|
|
(object-dir (config-lookup "guileobjectdir"))) |
|
|
|
(push! module-dir %load-path) |
|
|
|
(push! module-dir %load-compiled-path)) |
|
|
|
(push! object-dir %load-compiled-path)) |
|
|
|
(let ((updates-dir (and=> (or (getenv "XDG_CONFIG_HOME") |
|
|
|
(and=> (getenv "HOME") |
|
|
|
(cut string-append <> "/.config"))) |
|
|
|
(cut string-append <> "/guix/latest")))) |
|
|
|
(when (and updates-dir (file-exists? updates-dir)) |
|
|
|
;; XXX: Currently 'guix pull' puts both .scm and .go files in |
|
|
|
;; UPDATES-DIR. |
|
|
|
(push! updates-dir %load-path) |
|
|
|
(push! updates-dir %load-compiled-path))))) |
|
|
|
|
|
|
|