summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2016-11-06system: Optionally limit the entries returned by profile-grub-entries....* guix/scripts/system.scm (profile-grub-entries): Add an optional parameter which allows the caller to limit the number of returned grub entries. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2016-11-06system: Rename previous-grub-entries to profile-grub-entries....* guix/scripts/system.scm (previous-grub-entries, profile-grub-entries): Rename previous-grub-entries to profile-grub-entries to indicate that it is stateful and returns the entries for all profile generations, not just the previous ones. Update all callers. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2016-11-06profiles: Extract a procedure for getting relative generation numbers....* guix/profiles.scm (relative-generation-spec->number): New procedure. * guix/scripts/package.scm (switch-generation-action): Use it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2016-11-03import: cran: Fix off-by-one error....* guix/import/cran.scm (package->upstream-name): Do not include leading slash in upstream name URL. Ricardo Wurmus
2016-11-01guix: Update hackage mirror....* guix/download.scm (%mirrors)[hackage]: Don't use https. Efraim Flashner
2016-11-01licenses: Export fdl1.2+....This is a follow-up to 59b2034787909cf7efa4e8d672a815b466d7d09d. * guix/licenses.scm (define-module): Export fdl1.2+. Marius Bakke
2016-10-31download: Add Hackage mirrors....* guix/download.scm [%mirrors]: Add Hackage mirrors. Federico Beffa
2016-10-30system: Record store file system info in each generation....* gnu/system.scm (<boot-parameters>)[store-device, store-mount-point]: New fields. (read-boot-parameters): Initialize them. (operating-system-grub.cfg): Likewise. Remove STORE-FS argument from call to 'grub-configuration-file'. (operating-system-parameters-file): Add 'store' element in 'boot-parameters'. * gnu/system/grub.scm (strip-mount-point): Replace 'store-fs' parameter by 'mount-point'; adjust accordingly. Adjust callers. (<menu-entry>)[device, device-mount-point]: New fields. (eye-candy): Replace 'root-fs' parameter by 'store-device'; add 'store-mount-point'. Use keyword arguments for 'system' and 'port'. (grub-root-search): Remove 'root-fs' by 'device' and adjust accordingly. (grub-configuration-file): Remove 'store-fs' parameter. Adjust accordingly. * guix/scripts/system.scm (previous-grub-entries): Initialize 'device' and 'device-mount-point' fields from PARAMS. * doc/guix.texi (GRUB Configuration): Document 'device' and 'device-mount-point'. Explain that 'linux' can be prefixed by a GRUB device name. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Chris Marusich
2016-10-30profiles: manifest-lookup-package: Cosmetic changes....* guix/profiles.scm (manifest-lookup-package): Rename variables; use "string=?" instead of "equal?". Ricardo Wurmus
2016-10-28guix hash: Interpret '-' as standard input....* guix/scripts/hash.scm (guix-hash)[file-hash]: Special-case "-". * tests/guix-hash.sh: Add test. * doc/guix.texi (Invoking guix hash): Document it. Ludovic Courtès
2016-10-26guix package: Display generation diffs....* guix/ui.scm (display-profile-content-diff): New variable. * guix/scripts/package.scm (process-query): Use display-profile-content-diff. In collaboration with Benz Schenk. Roel Janssen
2016-10-26import cran: Use URL for Bioconductor 3.4....* guix/import/cran.scm (%bioconductor-svn-url): Update to release URL for version 3.4. Ricardo Wurmus
2016-10-23import: pypi: All inputs are propagated-inputs by default....* guix/import/pypi.scm (maybe-inputs): Return inputs as "propagated-inputs". Hartmut Goebel
2016-10-19Use (ice-9 binary-ports) instead of (rnrs io ports)....This reduces the closure of (guix ui) from 123 to 106 modules. * guix/derivations.scm: Use (ice-9 binary-ports) instead of (rnrs io ports). (map-derivation)[substitute-file]: Use 'read-string' instead of 'get-string-all'. * guix/ftp-client.scm: Likewise. * guix/hash.scm: Likewise. * guix/http-client.scm: Likewise. * guix/pki.scm (ensure-acl, current-acl): Likewise. * guix/scripts/archive.scm (authorize-key)[read-key]: Likewise. * guix/scripts/authenticate.scm (read-canonical-sexp) (read-hash-data): Likewise. * guix/scripts/download.scm: Likewise. * guix/scripts/offload.scm (register-gc-root, remove-gc-roots) (send-files): Likewise. * guix/scripts/publish.scm (lazy-read-file-sexp): Likewise. * guix/scripts/refresh.scm: Likewise. * guix/scripts/substitute.scm (check-acl-initialized): Likewise. * guix/serialization.scm (read-maybe-utf8-string): Likewise. * guix/scripts/hash.scm (guix-hash): Use 'force-output' instead of 'flush-output-port'. * guix/store.scm (process-stderr): Likewise. * guix/tests.scm: Likewise. * guix/utils.scm: Use (ice-9 binary-ports) and autoload (rnrs io ports) for 'make-custom-binary-input-port'. Ludovic Courtès
2016-10-19lint: Suggest @code instead of quotes....* guix/scripts/lint.scm (%quoted-identifier-rx): New variable. (check-description-style)[check-quotes]: New procedure. Use it. * tests/lint.scm ("description: suggest ornament instead of quotes"): New test. Ludovic Courtès
2016-10-17grafts: Remove unnecessary 'umask' call....This is a followup to d72267863382041b84a9712eea354882be72ef55. * guix/build/graft.scm (rewrite-directory): Remove 'umask' call. Ludovic Courtès
2016-10-17grafts: Apply the right grafts in the presence of multiple outputs....Fixes <http://bugs.gnu.org/24712>. * guix/grafts.scm (cumulative-grafts): Add grafts for all the outputs of DRV. * tests/grafts.scm ("graft-derivation, replaced derivation has multiple outputs"): New test. Ludovic Courtès
2016-10-17guix build: Add '--with-graft'....* guix/scripts/build.scm (transform-package-inputs/graft): New procedure. (%transformations): Add 'with-graft'. (%transformation-options): Likewise. (show-transformation-options-help): Document it. * tests/scripts-build.scm ("options->transformation, with-graft"): New test. * doc/guix.texi (Package Transformation Options): Document it. Ludovic Courtès
2016-10-17guix build: Factorize transformation option parsing....* guix/scripts/build.scm (%transformation-options): Introduce 'parser' procedure and use it. Ludovic Courtès
2016-10-17guix build: Extract '--with-input' replacement spec parsing....* guix/scripts/build.scm (evaluate-replacement-specs): New procedure. (transform-package-inputs)[not-equal]: Remove. [replacements]: Define in terms of 'evaluate-replacement-specs'. Ludovic Courtès
2016-10-16import: utils: Remove dependency on (json) module....This fixes a regression introduced by commit fbe9c1012820ab72f022a6ec958c35b431ae7a74. * guix/import/utils.scm: Remove unused (json) module. Alex Kost
2016-10-15graph: Add '%referrer-node-type'....* guix/scripts/graph.scm (ensure-store-items): New procedure. (%reference-node-type)[convert]: Use it. (non-derivation-referrers): New procedure. (%referrer-node-type): New variable. (%node-types): Add it. * tests/graph.scm ("referrer DAG"): New test. * doc/guix.texi (Invoking guix graph): Document it. Ludovic Courtès
2016-10-15grafts: Remove unused variables and confusing monad use....* guix/grafts.scm (cumulative-grafts)[return/cache]: Use %STATE-MONAD, not %STORE-MONAD. Remove unused 'origins' variable and unnecessary inner 'cache' variable. Ludovic Courtès
2016-10-14grafts: 'graft-derivation' does now introduce grafts that shadow other grafts....Partly fixes <http://bugs.gnu.org/24418>. * guix/grafts.scm (cumulative-grafts)[graft-origin?]: New procedure. [dependency-grafts]: Use it in new 'if' around recursive call. * tests/grafts.scm ("graft-derivation, grafts are not shadowed"): New test. Ludovic Courtès
2016-10-14packages: 'package-grafts' applies grafts on replacement....Partly fixes <http://bugs.gnu.org/24418>. * guix/packages.scm (input-graft): Compute 'new' with #:graft? #t. (input-cross-graft): Likewise. * tests/packages.scm ("package-grafts, indirect grafts, cross"): Comment out. ("replacement also grafted"): New test. Ludovic Courtès
2016-10-13Revert "guix: python-build-system: Fix an outdated comment."...This reverts commit 635a7af45d6e2105ad65d1a9531126cc232a2a50. Mark H Weaver
2016-10-13guix: python-build-system: Fix an outdated comment....The python-build-system uses phases the build and install, but not configure. So the old comment was plain wrong since Sept. 2013, when the build phase has been added. Hartmut Goebel
2016-10-10grafts: Always make directories #o755....Fixes <http://bugs.gnu.org/22954>. Reported by Albin <albin@fripost.org> and Jeffrey Serio <serio.jeffrey@gmail.com>. * guix/build/graft.scm (mkdir-p*): New procedure. (rewrite-directory): Use it instead of 'mkdir-p'. Ludovic Courtès
2016-10-10bournish: Add 'reboot' command....Suggested by Ricardo Wurmus. * guix/build/bournish.scm (reboot-command): New procedure. (%commands): Add it. Ludovic Courtès
2016-10-10substitute: Make download messages more concise....'guix substitute' now displays 2 lines per download instead of 4. Suggested by Ricardo Wurmus. * guix/scripts/substitute.scm (assert-valid-narinfo): Have #:verbose? default to #f. Remove leading newline in message. (process-substitution): Display the URI rather than the store file name. Display two newlines after the substitution. Ludovic Courtès
2016-10-10import: github: Add .love extension....* guix/import/github.scm (find-extension): Add '.love' extension to the list of extensions checked. Efraim Flashner
2016-10-09license: Add freebsd-doc....* guix/licenses.scm (freebsd-doc): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> ng0
2016-10-08build-system: Add asdf-build-system....* guix/build-system/asdf.scm: New file. * guix/build/asdf-build-system.scm: New file. * guix/build/lisp-utils.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'asdf-build-system'. Signed-off-by: 宋文武 <iyzsong@gmail.com> Andy Patterson
2016-10-07utils: Support defaults in substitute-keyword-arguments....* guix/utils.scm (collect-default-args, expand-default-args): New syntax. (substitute-keyword-arguments): Allow default value declarations. * tests/utils.scm (substitute-keyword-arguments): New test. Eric Bavier
2016-10-07utils: Fix default-keyword-arguments....* guix/utils.scm (default-keyword-arguments): Properly test for present keywords. * tests/utils.scm (default-keyword-arguments): New test. Eric Bavier
2016-10-06guix system: Return two values when failing to talk to shepherd....Before that, when 'guix system reconfigure' failed to talk to shepherd and a 'system-error' was raised, we would get a "too few values returned to continuation" error, which would prevent GRUB from being installed. Reported by fps on #guix. * guix/scripts/system.scm (warn-on-system-error): Remove. (with-shepherd-error-handling): Inline former 'warn-on-system-error'. Return two values when 'system-error' is raised. Ludovic Courtès
2016-10-03lint: 'cve' checker reports the replacement's vulnerabilities....Before, 'guix lint -c cve' would report the vulnerabilities of the original package while pretending they are the vulnerabilities of the replacement. * guix/scripts/lint.scm (check-vulnerabilities): Consider the package replacement before calling 'package-vulnerabilities'. * tests/lint.scm ("cve: vulnerability fixed in replacement version"): New test. Ludovic Courtès
2016-10-03grafts: Allow the replacement to have a different name....* guix/build/graft.scm (replace-store-references): REPLACEMENT is now the full string, not just the hash. (rewrite-directory)[hash-mapping](valid-suffix?): Remove. (hash+suffix): Rename to... (hash+rest): ... this. Change to return the whole string as the second element of the list. Adjust 'match-lambda' expression accordingly; check whether the string length of the origin and replacement match. * tests/grafts.scm ("graft-derivation, grafted item uses a different name"): New test. * doc/guix.texi (Security Updates): Update sentence on the name/version restriction. Ludovic Courtès
2016-09-29build: Improve Guile 2.2 compatibility....* build-aux/compile-all.scm (compile-file*): Ensure loading of compilation related modules before going parallel. * guix/build/pull.scm (build-guix): Ditto. Taylan Ulrich Bayırlı/Kammer
2016-09-28import: utils: Refactor license->symbol....* guix/import/utils.scm (license->symbol): Work for all licenses. * tests/import-utils.scm (license->symbol): Add test. David Craven
2016-09-28import: utils: Add spdx-string->license....* guix/import/utils.scm (spdx-string->license): New variable. * guix/licenses.scm (agpl1, fdl1.2+): New variables. David Craven
2016-09-28import: Move string->license to importers....* guix/import/gem.scm (string->license): Move from (guix import utils). * guix/import/pypi.scm (string->license): Move from (guix import utils). David Craven
2016-09-28import: Reorder imports in (guix import utils)....* guix/import/utils.scm (define-module): Reorder imports alphabetically. David Craven
2016-09-27guix build: Gracefully handle packages without source for '-S'....Fixes <http://bugs.gnu.org/22836>. Reported by Ricardo Wurmus <rekado@elephly.net>. * guix/scripts/build.scm (options->derivations): Gracefully handle (package-source p) = #f. Ludovic Courtès
2016-09-27Add missing exports....Reported by Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> at <https://lists.gnu.org/archive/html/guix-devel/2016-09/msg01686.html>. * gnu/system/file-systems.scm (%tty-gid): Export. * guix/build-system/python.scm (default-python, default-python2): Export. Ludovic Courtès
2016-09-26profiles: Build GTK+ input module cache....* guix/profiles.scm (gtk-im-modules): New procedure. (%default-profile-hooks): Add it. Ricardo Wurmus
2016-09-26profiles: manifest-lookup-package: Optionally match version prefix....* guix/profiles.scm (manifest-lookup-package): Optionally filter store item matches by version prefix. Ricardo Wurmus
2016-09-24system: grub.cfg uses correct file names when store is not in root partition....Fixes <http://bugs.gnu.org/24346>. Reported by csanchezdll@gmail.com (Carlos Sánchez de La Lama). * guix/scripts/system.scm (previous-grub-entries): Get the initrd file name from PARAMS. * gnu/system.scm (operating-system-grub.cfg): Use 'operating-system-initrd-file' to retrieve the initrd file name. * gnu/system/grub.scm (strip-mount-point): New procedure. (grub-configuration-file)[entry->gexp]: Call 'strip-mount-point' for LINUX and INITRD. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Carlos Sánchez de La Lama
2016-09-20ui: Do not shadow '_' where it's used as a literal syntax match....Fixes compilation with Guile 2.1. Reported by Mu Lei. * guix/ui.scm (report-load-error) (warn-about-load-error, read/eval-package-expression): Use 'rest' instead of '_' as the pattern variable name. * gnu/packages.scm (%find-package): Likewise. * guix/scripts/build.scm (transform-package-inputs): Likewise. * guix/scripts/hash.scm (guix-hash): Likewise. * guix/scripts/import/gnu.scm (%options, guix-import-gnu): Likewise. * guix/scripts/import/nix.scm (guix-import-nix): Likewise. * guix/scripts/offload.scm (build-machines): Likewise. * guix/scripts/refresh.scm (%options): Likewise. * guix/scripts/substitute.scm (narinfo-signature->canonical-sexp): Likewise. Ludovic Courtès
2016-09-10gexp: Store compilers in a hash table for O(1) lookup....* guix/gexp.scm (<gexp-compiler>)[predicate]: Remove. [type]: New field. (%gexp-compilers): Turn into a hash table. (register-compiler!, lookup-compiler, lookup-expander): Adjust accordingly. (define-gexp-compiler): Replace 'predicate' by 'record-type'. (derivation-compiler, local-file-compiler, plain-file-compiler) (computed-file-compiler, program-file-compiler, scheme-file-compiler) (file-append-compiler): Adjust accordingly. * guix/packages.scm (package-compiler, origin-compiler): Likewise. Ludovic Courtès