summaryrefslogtreecommitdiff
path: root/guix
Commit message (Collapse)AuthorAge
* records: Move 'make-syntactic-constructor' to the top level.Ludovic Courtès2015-01-19
| | | | | * guix/records.scm (make-syntactic-constructor): New procedure, formerly nested in 'define-record-type*'.
* records: Use keyword parameters for 'make-syntactic-constructor'.Ludovic Courtès2015-01-19
| | | | | | | * guix/records.scm (define-record-type*)[make-syntactic-constructor]: Turn THUNKED and DEFAULTS into keyword arguments. Adjust caller accordingly. Declare 'thunked' and 'defaults' local variables.
* nar: Read archive signatures as Latin-1 strings.Ludovic Courtès2015-01-18
| | | | | | | | Fixes <http://bugs.gnu.org/19610>. Reported by Mark H Weaver <mhw@netris.org>. * guix/nar.scm (restore-one-item): Use 'read-latin1-string' to read the signature.
* serialization: Read Latin-1 strings with 'get-bytevector-n'.Ludovic Courtès2015-01-18
| | | | | | * guix/serialization.scm (read-latin1-string): Use 'get-bytevector-n' instead of 'get-string-n'. Use 'list->string' etc. to convert the bytevector to a string.
* store: Change 'store-lower' to preserve the original procedure's documentation.Ludovic Courtès2015-01-18
| | | | | * guix/store.scm (preserve-documentation): New procedure. (store-lift, store-lower): Use it.
* doc: Document '%state-monad' and update '%store-monad' description.Ludovic Courtès2015-01-17
| | | | | | * doc/guix.texi (The Store Monad): Document '%state-monad' and related procedures. Describe '%store-monad' as an alias for '%state-monad'. * guix/monads.scm: Update commentary.
* store: Make '%store-monad' an alias for '%state-monad'.Ludovic Courtès2015-01-17
| | | | | | | | | | | | * guix/store.scm (define-alias): New macro. (%store-monad, store-return, store-bind): Define as aliases of the corresponding %STATE-MONAD part. (store-lift, text-file, interned-file): Return STORE as a second value. (run-with-store): Use 'run-with-state'. * guix/packages.scm (set-guile-for-build, package-file): Return STORE as a second value. * guix/monads.scm: Remove part of the module commentary.
* monads: Add the state monad.Ludovic Courtès2015-01-17
| | | | | | | | | | | * guix/monads.scm (state-return, state-bind, run-with-state, current-state, set-current-state, state-push, state-pop): New procedures. (%state-monad): New variable. * tests/monads.scm (%monads): Add %STATE-MONAD. (%monad-run): Add 'run-with-state'. (values->list): New macro. ("set-current-state", "state-push etc."): New tests.
* guix archive: Add -r/--recursive.Ludovic Courtès2015-01-17
| | | | | | | * guix/scripts/archive.scm (show-help, %options): Add -r/--recursive. (export-from-store): Pass #:recursive? to 'export-paths'. * doc/guix.texi (Invoking guix archive): Add -r in Emacs example. Add example with ~/.guix-profile. Document -r/--recursive.
* guix archive: Remove unused -r/--root option.Ludovic Courtès2015-01-17
| | | | * guix/scripts/archive.scm (%options): Remove -r/--root.
* store: Remove unused variable.Ludovic Courtès2015-01-17
| | | | * guix/store.scm (export-paths): Remove unused variable 's'.
* store: Add #:recursive? parameter to 'export-paths'.Ludovic Courtès2015-01-17
| | | | | | | * guix/store.scm (export-paths): Add #:recursive? parameter and honor it. * tests/store.scm ("export/import incomplete", "export/import recursive"): New tests.
* Merge branch 'core-updates'Ludovic Courtès2015-01-16
|\ | | | | | | | | Conflicts: gnu/packages/bootstrap.scm
| * Merge branch 'master' into core-updatesMark H Weaver2015-01-13
| |\
| * \ Merge branch 'master' into core-updatesMark H Weaver2015-01-11
| |\ \
| * | | build-system/gnu: Patch /usr/bin/file in all 'configure' files.Ludovic Courtès2015-01-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (patch-/usr/bin/file): New procedure. * guix/build/gnu-build-system.scm (patch-usr-bin-file): Rewrite using it. Patch all the files returned by 'find-files' that are executable. * gnu/packages/gawk.scm (gawk)[arguments]: Remove use of 'substitute*' for 'extension/configure'.
| * | | gnu: Add toolchain support for 'armhf-linux'.Mark H Weaver2015-01-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on preliminary work by John Darrington <john@darrington.wattle.id.au>. * gnu/packages/cross-base.scm (xgcc-armhf): New variable. * gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): Add armhf case. (gcc-4.7)[pre-configure]: Add gcc/config/*/linux-eabi.h to the list of files in which to patch GLIBC_DYNAMIC_LINKER. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add armhf case. * guix/utils.scm (gnu-triplet->nix-system, nix-system->gnu-triplet): Add armhf cases.
| * | | Move 'nix-system->gnu-triplet' to (guix utils) and export it.Mark H Weaver2015-01-07
| | | | | | | | | | | | | | | | | | | | * gnu/packages/commencement.scm (nix-system->gnu-triplet): Move to... * guix/utils.scm (nix-system->gnu-triplet): ... here. Fix docstring typo.
| * | | Merge branch 'master' into core-updatesMark H Weaver2015-01-06
| |\ \ \
| * | | | build-system/gnu: Use executables from the target inputs in 'patch-shebangs'.Ludovic Courtès2015-01-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/18895>. * guix/build/gnu-build-system.scm (patch-shebangs): Add #:inputs parameter. Remove 'bindirs'. Add 'bin-directories', 'output-bindirs', and 'input-bindirs'. Use them instead of (getenv "PATH") to as the argument to 'patch-shebang'.
| * | | | guix package: Follow symlinks for pattern search paths.Ludovic Courtès2015-01-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/package.scm (search-path-environment-variables): Add local 'files' variable. * tests/packages.scm ("--search-paths with pattern"): New test.
| * | | | Merge branch 'master' into core-updatesMark H Weaver2014-12-30
| |\ \ \ \
| * | | | | gnu: Revert use of '--strip-all'.Ludovic Courtès2014-12-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commits f05bdc9412135f34a1c417edc203c35cd005d0d5 and 856ae5e6c71a1283a414d33e638051f95d3cce35. This broke all sorts of things. See <http://hydra.gnu.org/eval/102058>, for example.
| * | | | | gnu: Don't use --strip-all in cases where this is problematic.Ludovic Courtès2014-12-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a followup to 856ae5e. See <http://hydra.gnu.org/build/180506> for an example of build failure. * guix/build/gnu-build-system.scm (strip): Add #:archive-strip-flags parameter. Use it when (ar-file? path). * guix/build-system/gnu.scm (gnu-build): Add #:archive-strip-flags parameter and pass it down. * gnu/packages/commencement.scm (gcc-boot0)[arguments]: Add #:strip-flags. * gnu/packages/base.scm (glibc)[arguments]: Likewise.
| * | | | | guix package: Use 'search-path-as-list' instead of custom code.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will handle the new 'file-type' and 'file-pattern' fields correctly. * guix/scripts/package.scm (search-path-environment-variables)[search-path-definition]: Rewrite in terms of 'search-path-as-list'.
| * | | | | utils: Export 'search-path-as-list'.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (search-path-as-list): Make public. * guix/scripts/environment.scm (for-each-search-path): Use it.
| * | | | | packages: Add 'file-pattern' field to 'search-path-specification'.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/packages.scm (<search-path-specification>)[file-pattern]: New field. (search-path-specification->sexp): Honor it.
| * | | | | build-support/gnu: Add support for file patterns in search paths.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (search-path-as-list): Add #:pattern parameter and honor it. (set-path-environment-variable): Likewise, and pass it to 'search-path-as-list'. * guix/packages.scm (search-path-specification->sexp): Add PATTERN slot. * guix/build/gnu-build-system.scm (set-paths): Adjust accordingly.
| * | | | | packages: Add 'file-type' field to 'search-path-specification'.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/18033>. * guix/packages.scm (<search-path-specification>): Rename 'directories' field to 'files'. Add 'file-type'. (search-path-specification->sexp): Honor 'file-type'. * gnu/packages/autotools.scm, gnu/packages/bootstrap.scm, gnu/packages/cross-base.scm, gnu/packages/games.scm, gnu/packages/gcc.scm, gnu/packages/glib.scm, gnu/packages/guile.scm, gnu/packages/man.scm, gnu/packages/perl.scm, gnu/packages/pkg-config.scm, gnu/packages/python.scm, gnu/packages/ruby.scm, gnu/packages/xfce.scm: Change 'directories' to 'files'. * tests/packages.scm ("search paths"): Change 'directories' field to 'files'. * guix/scripts/environment.scm (for-each-search-path): Likewise.
| * | | | | build-system/gnu: Strip with '--strip-all' instead of '--strip-debug'.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This saves 19% on the 'bin' directory of Coreutils, and certainly helpful for things like Git's 'libexec' directory. * guix/build-system/gnu.scm (gnu-build): Change default value for #:strip-flags to '("--strip-all"). * guix/build/gnu-build-system.scm (strip): Ditto. * gnu/packages/linux.scm (linux-libre)[arguments]: Add #:strip-flags.
| * | | | | build-system/gnu: Add support for non-directory search paths.Ludovic Courtès2014-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Partly fixes <http://bugs.gnu.org/18033>. * guix/build/utils.scm (search-path-as-list): Rename 'sub-directories' parameter to 'files'. Add #:type parameter and honor it. (set-path-environment-variable): Likewise. Pass #:type to 'search-path-as-list'. * guix/packages.scm (search-path-specification->sexp): Add 'directory as the last item of the tuple. * guix/build/gnu-build-system.scm (set-paths): Add 'type' to search-path pattern. Pass #:type to 'set-path-environment-variable'.
| * | | | | Merge branch 'master' into core-updatesLudovic Courtès2014-12-26
| |\ \ \ \ \
| * | | | | | packages: Apply patches with "patch --force".Ludovic Courtès2014-12-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/19402>. Reported by Mark H Weaver <mhw@netris.org>. * guix/packages.scm (patch-and-repack): Change "--batch" to "--force".
| * | | | | | Merge branch 'master' into 'core-updates'.Ludovic Courtès2014-12-14
| |\ \ \ \ \ \
| * | | | | | | utils: Change 'wrap-program' to preserve the original argv[0].Ludovic Courtès2014-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Mark H Weaver <mhw@netris.org> in <http://bugs.gnu.org/19138>. * guix/build/utils.scm (wrap-program): Change wrapper to use "exec -a PROG" instead of just "exec".
| * | | | | | | utils: Change 'patch-makefile-SHELL' to support ":=" assignments.Ludovic Courtès2014-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reported by Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>. * guix/build/utils.scm (patch-makefile-SHELL): Update regexp to match ":=" assignments.
| * | | | | | | utils: Use 'which' to find the shell in 'patch-makefile-SHELL'.Ludovic Courtès2014-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (patch-makefile-SHELL)[find-shell]: Use 'which'.
| * | | | | | | build-system/gnu: Add 'compress-documentation' phase.Ludovic Courtès2014-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (compress-documentation): New procedure. (%standard-phases): Add it.
| * | | | | | | utils: Add 'symbolic-link?'.Ludovic Courtès2014-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (symbolic-link?): New procedure.
| * | | | | | | build-system/gnu: Add 'validate-documentation-location' phase.Ludovic Courtès2014-12-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (validate-documentation-location): New procedure. (%standard-phases): Add it.
| * | | | | | | utils: Improve docstring of 'substitute*' & co.Taylan Ulrich Bayırlı/Kammer2014-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (substitute): Clarify first sentence of docstring and add warning to the docstring about using '$' to match an end of line. (substitute*): Add warning to the docstring about using '$' to match an end of line. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * | | | | | | build-system/gnu: Gracefully handle dangling symlinks in the 'strip' phase.Ludovic Courtès2014-11-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (strip): Check whether 'file-exists?' before calling 'elf-file?' and 'ar-file?'. This should fix build failures in the presence of dangling symlinks, as in <http://hydra.gnu.org/build/167521/nixlog/1/raw>.
| * | | | | | | utils: 'elf-file?' and 'ar-file?' return #f for directories.Ludovic Courtès2014-11-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids uncaught exceptions when the 'strip' phase would call these procedures on symlinks to directories, such as 'lib/terminfo' in ncurses (see <http://hydra.gnu.org/build/167310/nixlog/1/tail-reload>.) * guix/build/utils.scm (file-header-match): Catch 'system-error', and return #f upon EISDIR.
| * | | | | | | utils: Turn 'parallel-job-count' into a parameter.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (parallel-job-count): Turn into a SRFI-39 parameter.
| * | | | | | | build-system/gnu: Strip 'ar' archives as well.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (strip): Also strip when (ar-file? PATH) is true.
| * | | | | | | utils: Factorize magic bytes detection.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (file-header-match): New procedure. (%elf-magic-bytes): New variable. (elf-file?, ar-file?): Define using 'file-header-match'.
| * | | | | | | utils: Add 'ar-file?'.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (%ar-magic-bytes): New variable. (ar-file?): New procedure.
| * | | | | | | build-system/gnu: Strip only ELF files.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Mark H Weaver <mhw@netris.org> at <http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00395.html>. * guix/build/gnu-build-system.scm (strip)[strip-dir]: Strip only when (elf-file? PATH) is true.
| * | | | | | | utils: Add 'elf-file?'.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (elf-file?): New procedure.
| * | | | | | | utils: Export 'parallel-job-count'.Ludovic Courtès2014-11-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (parallel-job-count): New procedure. * guix/build/gnu-build-system.scm (%parallel-job-count): Remove. (build, check): Use 'parallel-job-count' instead.