guix-devel/guix
Ludovic Courtès 0bb9929eaa
gexp: Add 'with-imported-modules' macro.
* guix/gexp.scm (<gexp>)[modules]: New field.
(gexp-modules): New procedure.
(gexp->derivation): Use it and append the result to %MODULES.
Update docstring to mark #:modules as deprecated.
(current-imported-modules, with-imported-modules): New macros.
(gexp): Pass CURRENT-IMPORTED-MODULES as second argument to 'gexp'.
(gexp->script): Use and honor 'gexp-modules'; define '%modules'.
* tests/gexp.scm ("gexp->derivation & with-imported-modules")
("gexp->derivation & nested with-imported-modules")
("gexp-modules & ungexp", "gexp-modules & ungexp-splicing"):
New tests.
("program-file"): Use 'with-imported-modules'.  Remove #:modules
argument to 'program-file'.
* doc/guix.texi (G-Expressions): Document 'with-imported-modules'.
Mark #:modules of 'gexp->derivation' as deprecated.
* emacs/guix-devel.el: Add syntax for 'with-imported-modules'.
(guix-devel-keywords): Add it.
* .dir-locals.el: Likewise.
2016-07-12 22:47:08 +02:00
..
build guix: Support authentication when fetching from SVN. 2016-07-03 18:55:30 +02:00
build-system guix: python-build-system: Change pypi-uri to use https://pypi.io. 2016-06-25 20:49:59 +08:00
import import: cpan: Use our mirrors for 'https' URLs. 2016-07-03 23:58:29 +02:00
scripts substitute: Use ~/.cache when invoked by an unprivileged user. 2016-06-22 23:46:32 +02:00
base32.scm base32: Use a custom error condition instead of 'misc-error'. 2015-05-31 22:39:48 +02:00
base64.scm base64: Inline arithmetic operations. 2015-01-09 01:01:04 +01:00
build-system.scm build-system: Bags record their system and target. 2014-10-05 21:58:42 +02:00
combinators.scm utils: Move combinators to (guix combinators). 2016-05-04 23:35:55 +02:00
config.scm.in daemon: Rename 'NIX_CONF_DIR' to 'GUIX_CONFIGURATION_DIRECTORY'. 2016-06-26 23:11:07 +02:00
cpio.scm linux-initrd: Produce cpio archives with zeroed timestamps, etc. 2015-06-24 18:05:03 +02:00
cve.scm cve: Use a more compact format for the list of package/versions. 2016-05-28 01:07:12 +02:00
cvs-download.scm packages: Refer to the native tools when handling sources and downloads. 2015-04-15 10:19:47 +02:00
derivations.scm derivations: 'derivation' sorts items in the resulting object. 2016-05-21 01:35:14 +02:00
download.scm download: Update CPAN mirrors. 2016-07-02 16:24:35 +02:00
elf.scm elf: Add missing argument in 'elf-segment'. 2015-03-30 15:21:11 +02:00
ftp-client.scm ftp-client: Default port for 'ftp-open' is now "ftp". 2015-11-22 14:35:28 +01:00
gcrypt.scm Add (guix gcrypt). 2015-01-26 21:58:12 +01:00
gexp.scm gexp: Add 'with-imported-modules' macro. 2016-07-12 22:47:08 +02:00
git-download.scm download: Disable offloading for downloads. 2015-09-05 22:11:03 +02:00
gnu-maintenance.scm gnu-maintenance: Replace 'find-packages' with 'find-package' (singular). 2016-06-08 19:07:58 +02:00
gnupg.scm gnupg: Correctly parse current 'SIG_ID' lines. 2014-09-24 19:08:03 +02:00
grafts.scm grafts: Create only one grafted variant of each derivation. 2016-05-25 23:33:56 +02:00
graph.scm graph: Add 'node-reachable-count'. 2016-05-24 00:06:01 +02:00
hash.scm hash: Initialize libgcrypt before use. 2015-01-26 21:58:12 +01:00
hg-download.scm guix: Add downloader for Mercurial repositories. 2016-06-15 17:02:18 +02:00
http-client.scm http-client: No 'setvbuf' for non-file ports. 2016-03-16 11:27:37 +01:00
licenses.scm licenses: Add the nmap license. 2016-03-31 01:40:30 -04:00
monad-repl.scm monad-repl: Close connection when leaving the monad REPL. 2016-01-13 17:43:21 +01:00
monads.scm monads: Fix 'liftN' fallback case. 2015-09-04 18:31:06 +02:00
nar.scm utils: Move 'fcntl-flock' to (guix build syscalls). 2016-05-06 13:25:30 +02:00
packages.scm packages: Disambiguate 'modules' and 'imported-modules' in <origin>. 2016-06-16 14:31:52 +02:00
pk-crypto.scm pk-crypto: Improve documentation of 'key-type'. 2015-03-18 14:43:03 +01:00
pki.scm pki: Introduce 'write-acl', and fix wrong conversion in 'ensure-acl'. 2014-04-04 00:23:17 +02:00
profiles.scm profiles: Make sure hook derivations fail upon error. 2016-06-12 23:54:00 +02:00
records.scm records: Remove unnecessary 'begin'. 2015-06-11 23:33:32 +02:00
scripts.scm emacs: Add 'guix-devel-build-package-source'. 2015-10-12 10:59:31 +03:00
search-paths.scm utils: Have search-path-as-list pattern search for directories. 2015-10-29 17:30:18 -05:00
serialization.scm serialization: Add #:select? parameter to 'write-file'. 2016-06-12 23:55:22 +02:00
sets.scm Add (guix sets). 2015-01-11 23:50:01 +01:00
store.scm store: 'register-path' no longer swallows 'system-error' exceptions. 2016-06-20 00:52:53 +02:00
svn-download.scm guix: Support authentication when fetching from SVN. 2016-07-03 18:55:30 +02:00
tests.scm tests: Narinfos can specify an non-empty reference list. 2016-03-05 00:19:10 +01:00
ui.scm ui: 'string->duration' supports hours and seconds. 2016-06-09 23:34:56 +02:00
upstream.scm import: Gracefully report import failures. 2016-05-17 14:02:48 +02:00
utils.scm utils: 'cache-directory' always appends "/guix". 2016-06-25 01:13:23 +02:00