summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2017-04-08monads: Improve mlet, mlet*, and mbegin documentation....* doc/guix.texi (The Store Monad) <mlet, mlet*, mbegin>: Clarify their intended usage. * guix/monads.scm (mbegin): Update docstring accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2017-04-08monads, doc: Improve mwhen and munless documentation....* doc/guix.texi (The Store Monad) <mwhen, munless>: Document them. * guix/monads.scm (mwhen, munless): Clarify their intended use. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2017-04-08monads: Use intent-revealing parameter names....* guix/monads.scm (mwhen, munless): Rename parameters from 'exp0' and 'exp' to 'mexp0' and 'mexp', respectively. This makes it more obvious that these expressions must be monadic expressions. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2017-04-07syscalls: Allow mount and umount use from static Guile....* guix/build/syscalls.scm (mount): Use Guile core mount if called from static Guile, otherwise use FFI based mount implementation. (umount): Ditto. This allows to use (guix build syscalls) from a module independently of calling context. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Mathieu Othacehe
2017-04-07profiles: Slightly improve the instructions in 'etc/profile'....* guix/build/profiles.scm (build-etc/profile): Fix typo in comment. Add backslash in the generated shell comment. Ludovic Courtès
2017-04-07pack: Add '--expression'....* guix/scripts/pack.scm (%options, show-help): Add '--expression'. (guix-pack)[maybe-package-argument]: New procedure. Use it, and remove variable 'specs'. * doc/guix.texi (Invoking guix pack): Document '--expression'. Ludovic Courtès
2017-04-07size: Avoid '_' as a pattern variable in 'match'....* guix/scripts/size.scm (display-profile, profile->page-map): Don't use '_' as a 'match' pattern variable. Ludovic Courtès
2017-04-06system: Support the --root option in 'guix system'....Fixes <https://bugs.gnu.org/26271>. * guix/scripts/system.scm (perform-action): Add #:gc-root parameter and honor it. (show-help): Document the --root option. (%options): Add 'root'. (process-action): Pass 'root' option to perform-action as #:gc-root. * doc/guix.texi (Invoking guix system): Document '--root'. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2017-04-06build: Add and export procedure 'register-root*'....* guix/scripts/build.scm (register-root*): Add and export it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2017-04-05environment: Deal with single-entry search paths....This is a followup to fcd75bdbfa99d14363b905afbf914eec20e69df8. * guix/scripts/environment.scm (create-environment): Check whether SEPARATOR is #f. Ludovic Courtès
2017-04-05profiles: Generate database file for man pages....The mandb database file (index.db) is used by the "apropos" (whatis) or "man -k" commands. This change introduces a profile hook to generate such database file. * guix/profiles.scm (manual-database): New procedure. (%default-profile-hooks): Add it. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer
2017-04-05build-system/python: 'package-with-explicit-python' uses 'package-mapping'....* guix/build-system/python.scm (package-with-explicit-python) [package-variant, cut?]: New procedures. [transform]: Remove 'mlambdaq' form and input tuple handling. Use 'package-mapping'. Ludovic Courtès
2017-04-05packages: Add 'package-mapping' and base 'package-input-rewriting' on it....* guix/packages.scm (package-mapping): New procedure. (package-input-rewriting): Rewrite in terms of 'package-mapping'. * tests/packages.scm ("package-mapping"): New test. * doc/guix.texi (Defining Packages): Document it. Ludovic Courtès
2017-04-05import cran: Distinguish Bioconductor data packages....* guix/import/cran.scm (bioconductor-package?): Exclude Bioconductor data packages. (bioconductor-data-package?): New procedure. Ricardo Wurmus
2017-04-05download: Update the GnuPG mirror list....* guix/download.scm (%mirrors) <gnupg>: Use HTTP for TU Wien mirror. Leo Famulari
2017-04-05build: Export register-root procedure....* guix/scripts/build.scm: Export register-root procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2017-04-03utils: Fix handling of shell arguments for xz compression....Fixes test failures related to xz compression in tests/utils.scm. This is a followup to commit 63102406f22412bb922de5549deb89d3594a38c0. * guix/utils.scm (decompressed-port, compressed-port, compressed-output-port): Split each shell argument into its own list element. Leo Famulari
2017-04-04packages: Catch invalid input errors for structs....Reported by Thomas Sigurdsen <thomas.sigurdsen@gmail.com> at <https://lists.gnu.org/archive/html/help-guix/2017-04/msg00007.html>. * guix/packages.scm (expand-input): Add 'guard' form around call to 'package-source-derivation'. * tests/packages.scm (dummy): New test. Ludovic Courtès
2017-04-04gexp: 'lower-object' raises an exception when passed an invalid object....* guix/gexp.scm (&gexp-error, &gexp-input-error): New error conditions. (lower-object): Raise &gexp-input-error when 'lookup-compiler' returns #f. * tests/gexp.scm ("lower-object & gexp-input-error?"): New test. * guix/ui.scm (call-with-error-handling): Add case for 'gexp-input-error?'. Ludovic Courtès
2017-04-03Merge branch 'core-updates'Ludovic Courtès
2017-04-02guix: Compress and decompress xz archives in parallel....* guix/scripts/pack.scm (%compressors): Add flag '-T0' when calling "xz". * guix/utils.scm (decompressed-port, compressed-port, compressed-output-port): Same. Efraim Flashner
2017-03-31substitute: Send ‘User-Agent’ header....* guix/scripts/substitute.scm (narinfo-request): Pass ‘User-Agent’ #:headers to ‘build-request’. Tobias Geerinckx-Rice
2017-03-30Merge branch 'master' into core-updates...Most conflicts are from 6fd52309b8f52c9bb59fccffac53e029ce94b698. Marius Bakke
2017-03-29packages: Remove "mips64el-linux" from '%hydra-supported-systems'....* guix/packages.scm (%hydra-supported-systems): Remove "mips64el-linux". Ludovic Courtès
2017-03-28Replace (compose not PROC) with simpler idioms....* gnu/packages/bioinformatics.scm (python-pysam)[arguments] <check>: Use (negate proc) instead of (compose not proc). * guix/import/cran.scm (recursive-import): Likewise. * guix/import/elpa.scm (filter-dependencies): Use 'remove' instead of '(filter (compose not proc) ...)'. Ludovic Courtès
2017-03-28import cran: Print package stream in the expected order....* guix/scripts/import/cran.scm (guix-import-cran): Reverse list of packages. Ricardo Wurmus
2017-03-28import cran: Automatically add gfortran and zlib when needed....* guix/import/cran.scm (needs-fortran?, needs-zlib?): New procedures. (description->package): Use them. Ricardo Wurmus
2017-03-28download: Properly parse ftp:// URLs that lack user info....Fixes a regression introduced in a4f542341511f33ece18d16b68118214da8143ec. Reported by Hartmut Goebel. * guix/build/download.scm (ftp-fetch): Account for the case where 'uri-userinfo' returns #f. Remove the case where it returns "" since that cannot happen. Ludovic Courtès
2017-03-28derivations: Do not fetch narinfos for non-substitutable items....This avoids connections to substitute servers for derivations that are not substitutable anyway, such as profiles. Reported by Andy Wingo. * guix/derivations.scm (substitution-oracle): Skip derivations that do not pass 'substitutable-derivation?'. * tests/derivations.scm ("substitution-oracle and #:substitute? #f"): New test. Ludovic Courtès
2017-03-27Merge branch 'master' into core-updatesLeo Famulari
2017-03-27ui: Support Texinfo markup in package synopses....* guix/ui.scm (package-field-string): New procedure. (package-description-string): Use it. (package-synopsis-string): New procedure. (package->recutils): Use it. * guix/scripts/lint.scm (check-synopsis-style)[check-texinfo-markup]: New procedure. Use it in checks. * tests/lint.scm: Test it. * gnu/packages/perl.scm (perl-try-tiny)[synopsis]: Adjust for the Texinfo markup. Alex Kost
2017-03-26profiles: Create fonts.dir/scale for all fonts directories....* guix/profiles.scm (fonts-dir-file): Create fonts.dir/scale files for all fonts directories. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Huang Ying
2017-03-26union: Add create-all-directories? parameter to 'union-build'....* guix/build/union.scm (union-build): Add create-all-directories? keyword parameter. * tests/union.scm ("union-build #:create-all-directories? #t"): New test. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Huang Ying
2017-03-23Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2017-03-22publish: Add '--nar-path'....* guix/scripts/publish.scm (show-help, %options): Add '--nar-path'. (%default-options): Add 'nar-path'. (guix-publish): Honor it. Ludovic Courtès
2017-03-22publish: Make the nar URL prefix a parameter....* guix/scripts/publish.scm (narinfo-string): Add #:nar-path and honor it. (render-narinfo): Likewise. (make-request-handler): Likewise. (run-publish-server): Likewise. * tests/publish.scm ("custom nar path"): New test. Ludovic Courtès
2017-03-22publish: Add '--public-key' and '--private-key'....* guix/scripts/publish.scm (show-help, %options): Add --public-key and --private-key. * doc/guix.texi (Invoking guix publish): Document it. Ludovic Courtès
2017-03-22publish: The public and private keys are now SRFI-39 parameters....* guix/scripts/publish.scm (%default-options): Add 'public-key-file' and 'private-key-file'. (lazy-read-file-sexp): Remove. (%private-key, %public-key): Turn into SRFI-39 parameters. (signed-string, render-narinfo): Adjust accordingly. (guix-publish): Honor 'public-key-file' and 'private-key-file' from OPTS. Use 'parameterize'. * guix/pk-crypto.scm (read-file-sexp): New procedure. * tests/publish.scm: Initialize '%public-key' and '%private-key'. Ludovic Courtès
2017-03-22Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2017-03-21download: Handle username and password properties for FTP URIs....* guix/build/download.scm (ftp-fetch): Process username and password from a URI. Roel Janssen
2017-03-21ftp-client: Allow custom username and password for FTP servers....* guix/ftp-client.scm (ftp-open): Add username and password arguments. Roel Janssen
2017-03-19download: Remove non-existent kernel mirror....* guix/download.scm (%mirrors) <kernel.org>: Remove www.all.kernel.org. Mark H Weaver
2017-03-19Merge branch 'master' into core-updatesMark H Weaver
2017-03-18http-client: Avoid name clash with 'open-connection-for-uri' in 2.2.0....* guix/build/download.scm (open-connection-for-uri): Add note about same-named binding in Guile 2.2.0. * guix/http-client.scm: Use 'guix:open-connection-for-uri' for the procedure coming from (guix build download). * guix/scripts/lint.scm: Likewise. * guix/scripts/substitute.scm: Likewise. Ludovic Courtès
2017-03-18build: Require Guile >= 2.0.9....* configure.ac: Bump requirement to 2.0.9. * doc/guix.texi (Requirements): Adjust accordingly. * README (Requirements): Likewise. * build-aux/download.scm: Remove workaround for <http://bugs.gnu.org/13095>. * guix/build/download.scm: Likewise. (http-fetch)[post-2.0.7?]: Remove. Remove conditional code for not POST-2.0.7?. * guix/http-client.scm: Remove workaround for <http://bugs.gnu.org/13095>. (http-fetch)[post-2.0.7?]: Remove. Remove conditional code for not POST-2.0.7?. * guix/serialization.scm (read-latin1-string): Remove mention of 2.0.9. * tests/nar.scm: Use (ice-9 control). (let/ec): Remove. Ludovic Courtès
2017-03-18pack: Add '--target'....* guix/scripts/pack.scm (self-contained-tarball): Add #:target. (docker-image): Add #:target. [build]: Pass it to 'build-docker-image'. (%options, show-help): Add '--target'. (guix-pack): Pass TARGET to 'profile-derivation' and to 'build-image'. * guix/docker.scm (build-docker-image): Add #:system parameter and honor it. * doc/guix.texi (Invoking guix pack): Document '--target'. (Additional Build Options): Refer to the Autoconf manual instead of the obsolete 'configure.info' for cross-compilation. Ludovic Courtès
2017-03-17profiles: Packages in a profile can be cross-compiled....* guix/profiles.scm (profile-derivation): Add #:target parameter; pass it to 'gexp->derivation'. * tests/profiles.scm ("profile-derivation, cross-compilation"): New test. Ludovic Courtès
2017-03-17pack: Move absolute file name to <compressor>....* guix/scripts/pack.scm (<compressor>)[package]: Remove. [command]: Document as being a gexp with an absolute file name. (%compressors): Adjust accordingly. (self-contained-tarball): Simplify PATH expression. Move 'string-join' for the compressor command on the build side. (docker-image): Simplify PATH expression. * tests/pack.scm (%gzip-compressor): Adjust accordingly. Ludovic Courtès
2017-03-17build/cargo-build-system: Make cargo-build-system install working packages....* guix/build/cargo-build-system.scm (configure): Remove proprietary dependencies. Add rust dependencies and configure Cargo to find them. (build): Also build libraries, not just applications. (file-sha256): New variable. (generate-checksums): New variable. Export it. (touch): New variable. (install): Generate checksums so Cargo accepts the package. Danny Milosavljevic
2017-03-17build-system/cargo (cargo-build): Add cargo-build-flags, remove configure-flags....* guix/build-system/cargo.scm (cargo-build): Add cargo-build-flags, remove configure-flags. Danny Milosavljevic