summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2015-06-24tests: Move 'file=?' to (guix tests).•••* tests/nar.scm (file-tree-equal?)[file=?]: Move to... * guix/tests.scm (file=?): ... here. New procedure. Ludovic Courtès
2015-06-23licenses: Add the SGI Free Software License B, version 2.0.•••* guix/licenses.scm (sgifreeb2.0): New variable. Mark H Weaver
2015-06-21size: Add '--map-file' option.•••* guix/scripts/size.scm (profile->page-map): New procedures. (show-help, %options): Add --map-file. (guix-size): Honor it. * doc/guix.texi (Invoking guix size): Document it. * doc/images/coreutils-size-map.png: New file. * doc.am (dist_infoimage_DATA): Add it. Ludovic Courtès
2015-06-21size: Remove unused variables.•••* guix/scripts/size.scm (ensure-store-item): Remove #:dry-run? parameter. (%options): Remove 'dry-run?' variable. Ludovic Courtès
2015-06-21Merge branch 'master' into core-updatesMark H Weaver
2015-06-19gexp: 'local-file' canonicalizes its file argument.•••Reported by Alex Kost <alezost@gmail.com> at <http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00235.html>. * guix/gexp.scm (local-file): Add call to 'canonicalize-path'. * tests/gexp.scm ("one local file, symlink"): New test. Ludovic Courtès
2015-06-19store: Memoize 'add-to-store' based on the result of 'lstat', not 'stat'.•••* guix/store.scm (add-to-store): Change 'stat' call to 'lstat'. Clarify docstring. Ludovic Courtès
2015-06-19gexp: 'local-file' now defaults to non-recursive.•••Reported by Alex Kost <alezost@gmail.com> at <http://lists.gnu.org/archive/html/guix-devel/2015-06/msg00235.html>. * guix/gexp.scm (local-file): Change #:recursive? to default to #f. * tests/gexp.scm ("one local file", "gexp->derivation, local-file"): Adjust calls to 'add-to-store' and 'interned-file' accordingly. Ludovic Courtès
2015-06-18Merge branch 'master' into core-updatesMark H Weaver
2015-06-18Add 'guix size'.•••* guix/scripts/size.scm: New file. * Makefile.am (MODULES): Add it. (SCM_TESTS): Add tests/size.scm. * doc.am (SUBCOMMANDS): Add 'size'. * po/guix/POTFILES.in: Add guix/scripts/size.scm. * tests/size.scm: New file. * doc/guix.texi (Packages with Multiple Outputs): Add xref to "Invoking guix size". (Invoking guix size): New node. (Invoking guix gc): Add index for "closure" and xref to the above. * doc/contributing.texi (Submitting Patches): Use @enumerate for the check list. Add item about 'guix size'. Ludovic Courtès
2015-06-18Add 'guix edit'.•••* guix/scripts/edit.scm: New file. * Makefile.am (MODULES): Add it. * doc.am (SUBCOMMANDS): Add 'edit'. * doc/guix.texi (Defining Packages): Add xref to "Invoking guix edit". (Invoking guix edit): New node. * po/guix/POTFILES.in: Add it. Ludovic Courtès
2015-06-18Move 'specification->package+output' to (gnu packages).•••* guix/scripts/package.scm (specification->package+output): Move to... * gnu/packages.scm (specification->package+output): ... here * guix/scripts/archive.scm (guix): Adjust accordingly. Ludovic Courtès
2015-06-17offload: Fix sorting bug in 'choose-build-machine'.•••* guix/scripts/offload.scm (choose-build-machine)[undecorate]: Return the boolean result of pred instead of the best machine+slot. Mark H Weaver
2015-06-16gnu-maintenance: Use 'home-page' as an additional hint of "GNUness".•••Reported by Rastus_Vernon on IRC. Fixes 'gnu-package?' for GNUcash. * guix/gnu-maintenance.scm (gnu-package?)[gnu-home-page?]: New procedure. Use it to determine whether PACKAGE is GNU. Ludovic Courtès
2015-06-14Merge branch 'master' into core-updates•••Conflicts: gnu/packages/commencement.scm gnu/packages/xml.scm Mark H Weaver
2015-06-11build-system/haskell: install config for any package that creates it.•••A Cabal package is allowed to declare an "empty" library, in an otherwise executable-only package, for the purpose of allowing Cabal to use it as a dependency for other packages. See e.g. hspec-discover. * guix/build/haskell-build-system.scm (register): Unconditionally call setup script with "register", and install any config file generated. Eric Bavier
2015-06-11profiles: Process ghc conf files only once.•••A package may be listed in the manifest inputs multiple times. Avoid copying ghc *.conf files twice by deleting duplicates. * guix/profiles.scm (ghc-package-cache-file)[conf-files]: Delete duplicate manifest inputs before copying conf files. Eric Bavier
2015-06-11profiles: Search for ghc conf files only if package db exists.•••This avoids having 'find-files' report warnings about searching in non-existent directories. * guix/profiles.scm (ghc-package-cache-file)[conf-files]: Only search for *.conf files if the search directory exists. Eric Bavier
2015-06-11records: Remove unnecessary 'begin'.•••* guix/records.scm (define-record-type*): Remove unnecessary 'begin'. Ludovic Courtès
2015-06-11tests: Write the random seed to the error port.•••* guix/tests.scm (random-seed): New procedure. (%seed): Use it, and write the random seed to the error port. Ludovic Courtès
2015-06-11packages: Make 'location' field innate.•••* guix/packages.scm (<package>)[location]: Add 'innate' property. * guix/build-system/gnu.scm (static-package): Remove 'loc' parameter and 'location' field. * gnu/packages/autotools.scm (autoconf-wrapper): Remove 'location' field. * gnu/packages/commencement.scm (gnu-make-boot0, diffutils-boot0, gcc-final): Likewise. * gnu/packages/cross-base.scm (cross): Likewise. * gnu/packages/emacs.scm (emacs-no-x, emacs-no-x-toolkit): Likewise. * gnu/packages/make-bootstrap.scm (tarball-package): Likewise. * gnu/packages/maths.scm (petsc-complex): Likewise. Ludovic Courtès
2015-06-11records: Add support for 'innate' fields.•••* guix/records.scm (make-syntactic-constructor): Add #:innate parameter. [record-inheritance]: Honor it. [innate-field?]: New procedure. (define-record-type*)[innate-field?]: New procedure. Pass #:innate to 'make-syntactic-constructor'. * tests/records.scm ("define-record-type* & inherit & innate", "define-record-type* & thunked & innate"): New tests. Ludovic Courtès
2015-06-11records: "options" → "properties".•••* guix/records.scm (define-record-type*): Change "options" to "properties". Ludovic Courtès
2015-06-11records: Factorize field property predicates.•••* guix/records.scm (define-field-property-predicate): New macro. (define-record-type*)[thunked-field?, delayed-field?]: Use it. Ludovic Courtès
2015-06-11records: Separate default-value handling.•••* guix/records.scm (make-syntactic-constructor)[default-values]: New variable. [field-default-value]: New procedure. Use them. Ludovic Courtès
2015-06-11records: Replace 'eval-when' with a proper 'define-syntax'.•••* guix/records.scm (make-syntactic-constructor): Remove enclosing 'eval-when'. Turn into a 'syntax-rules' macro. Ludovic Courtès
2015-06-11guix build: Allow directories to be passed to --with-source.•••* guix/scripts/build.scm (package-with-source)[tarball-base-name]: Gracefully handle file names that lack an extension. Pass #:recursive? #t to 'download-to-store'. * guix/download.scm (download-to-store): Add #:recursive? parameter and pass it to 'add-to-store'. * doc/guix.texi (Invoking guix build): Add an example of --with-source with a directory. Ludovic Courtès
2015-06-11environment: Connect to the store after the command line has been parsed.•••* guix/scripts/environment.scm (guix-environment): Call 'parse-command-line' outside of 'with-store'. This allows things like --help to run even if the daemon is not running. Ludovic Courtès
2015-06-10Merge branch 'master' into core-updatesMark H Weaver
2015-06-10guix system: init: Overwrite the items in the target store.•••Fixes <http://bugs.gnu.org/20722>. Reported by Eric Bavier <ericbavier@openmailbox.org>. * guix/scripts/system.scm (copy-item): Check whether DEST exists and remove it if it does. Ludovic Courtès
2015-06-10ui: Replace the global 'symlink' binding.•••* guix/ui.scm (symlink): Set! the global symlink. Ludovic Courtès
2015-06-09import: hackage: Refactor parsing code and add new options.•••* guix/import/cabal.scm: New file. * guix/import/hackage.scm: Update to use the new Cabal parsing module. * tests/hackage.scm: Update tests. * guix/scripts/import/hackage.scm: Add new '--cabal-environment' and '--stdin' options. * doc/guix.texi: ... and document them. * Makefile.am (MODULES): Add 'guix/import/cabal.scm', 'guix/import/hackage.scm' and 'guix/scripts/import/hackage.scm'. (SCM_TESTS): Add 'tests/hackage.scm'. Federico Beffa
2015-06-08monads: Allow n-ary '>>=' expressions.•••Suggested by Federico Beffa <beffa@fbengineering.ch>. * guix/monads.scm (bind-syntax): New macro. (with-monad): Use it instead of 'identifier-syntax'. * tests/monads.scm (">>= with more than two arguments"): New test. * doc/guix.texi (The Store Monad): Explain that there can be several MPROC. Add an example. Ludovic Courtès
2015-06-08guix: Clean up --help messages.•••* guix/scripts/import.scm (show-help): Add newline before a list of importers. * guix/scripts/lint.scm (show-help): Split a long description line. * guix/scripts/package.scm (show-help): Improve docstrings for --install and --remove options. * guix/scripts/system.scm (show-help): Format actions the same way as guix commands and importers are formatted. Alex Kost
2015-06-06guix gc: Add '--verify'.•••* guix/scripts/gc.scm (show-help, %options): Add --verify. (guix-gc): Handle it. * doc/guix.texi (Invoking guix gc): Document --verify, and move --optimize description right below it. Ludovic Courtès
2015-06-06store: Add 'verify-store' RPC.•••* guix/store.scm (operation-id): Add 'verify-store'. (verify-store): New procedure. (set-build-options): Adjust comment. * tests/store.scm ("verify-store", "verify-store + check-contents"): New tests. Ludovic Courtès
2015-06-06guix package: Fix typo in --help message.•••* guix/scripts/package.scm (show-help): Align '--show' option properly. Alex Kost
2015-06-05licenses: Add the Open Publication License 1.0.•••* guix/licenses.scm (opl1.0+): New variable. Mark H Weaver
2015-06-03gexp: Add 'plain-file'.•••* guix/gexp.scm (<plain-file>): New type. (plain-file, plain-file-compiler): New procedures. * tests/gexp.scm ("one plain file"): New test. * doc/guix.texi (G-Expressions): Document 'plain-file'. Ludovic Courtès
2015-06-03gexp: Export <local-file> accessors.•••* guix/gexp.scm (local-file-file, local-file-name, local-file-recursive?): Export. Ludovic Courtès
2015-06-02gnu-maintenance: latest-release: Honor releases that are not in subdirs.•••Reported by Mark H Weaver. * guix/gnu-maintenance.scm (latest-release): Add 'result' parameter to 'loop'. When entering a sub-directory, use the current directory's latest release as 'result'. This fixes the code for 'gnu-pw-mgr' and 'sharutils'. Ludovic Courtès
2015-05-31lint: source: Warn only when all the URIs are unreachable.•••* guix/scripts/lint.scm (call-with-accumulated-warnings): New procedure. (with-accumulated-warnings): New macro. (check-source): Add 'try-uris' and use it. Emit warnings only upon failure. Ludovic Courtès
2015-05-31lint: 'validate-uri' really returns #f on failure.•••* guix/scripts/lint.scm (validate-uri): Always return #f on failure. Ludovic Courtès
2015-05-31base32: Use a custom error condition instead of 'misc-error'.•••Suggested by Christopher Allan Webber <cwebber@dustycloud.org>. * guix/base32.scm (&invalid-base32-character): New error condition. (make-base32-string->bytevector): Use it instead of 'error'. * tests/base32.scm ("&invalid-base32-character"): New test. Ludovic Courtès
2015-05-31ui: Do not call 'display-error' for SRFI-34 exceptions.•••* guix/ui.scm (report-load-error, warn-about-load-error, read/eval): Add clause for SRFI-34 exceptions. Ludovic Courtès
2015-05-29emacs: Report about "search paths" after operation.•••* guix/scripts/package.scm: Export 'display-search-paths'. * emacs/guix-main.scm (process-package-actions): Use it. Alex Kost
2015-05-28guix environment: Add --ad-hoc option.•••* guix/scripts/environment.scm (%options): Add "ad-hoc" option. (show-help): Display help for "--ad-hoc". (packages+propagated-inputs): New procedure. (guix-environment): Create ad hoc environment when asked. * doc/guix.texi ("invoking guix environment"): Document it. David Thompson
2015-05-28profiles: Deal with non-directory items in share/icons.•••Reported by Mark H Weaver <mhw@netris.org>. * guix/profiles.scm (gtk-icon-themes)[build]: Check whether DIR is a directory before calling 'ensure-writable-directory'. Ludovic Courtès
2015-05-27profiles: Export 'ensure-writable-directory' and use it.•••* guix/build/profiles.scm (ensure-writable-directory): Export. * guix/profiles.scm (gtk-icon-themes)[build]: Remove '@@' form and use (guix build profiles). Ludovic Courtès
2015-05-27profiles: Don't assume all the inputs are of a package are packages.•••Reported by Ricardo Wurmus. * guix/profiles.scm (gtk-icon-themes)[entry-lookup-gtk+](find-among-packages): Rename to... (find-among-inputs): ... this. Check whether INPUT is a package before calling 'package-name'. Fixes a regression introduced in b04af0e. Ludovic Courtès