summaryrefslogtreecommitdiff
path: root/guix
Commit message (Collapse)AuthorAge
* Merge branch 'master' into core-updatesMark H Weaver2018-03-20
|\
| * git-download: Fix recursive checkouts.Eric Bavier2018-03-18
| | | | | | | | | | * guix/git-download.scm (git-fetch)<build>: Fix match on INPUTS, which may contain package outputs.
| * glob: Add an extra glob pattern compilation stage.Ludovic Courtès2018-03-18
| | | | | | | | | | | | | | | | | | | | | | | | | | * guix/glob.scm (compile-glob-pattern): Rename to... (string->sglob): ... this. (compile-sglob, string->compiled-sglob): New procedures. (glob-match?): Replace '?, 'range, and 'set with a single clause. * tests/glob.scm (test-compile-glob-pattern): Rename to... (test-string->sglob): ... this. Adjust accordingly. (test-glob-match): Use 'string->compiled-sglob' instead of 'compile-glob-pattern'. * gnu/build/linux-modules.scm (read-module-aliases): Use 'string->compiled-sglob' instead of 'compile-glob-pattern'.
| * glob: Support square brackets in patterns.Ludovic Courtès2018-03-18
| | | | | | | | | | | | | | | | | | | | | | * guix/glob.scm (wildcard-indices): Remove. (parse-bracket): New procedure. (compile-glob-pattern): Rewrite. Support square brackets for sets and ranges. (glob-match?): Support sets and ranges. * tests/glob.scm (test-compile-glob-pattern) (test-glob-match): New macros. Use them to rewrite the existing tests, and add new tests.
| * import: elpa: Return 'license:gpl3+ for ELPA only.Ludovic Courtès2018-03-18
| | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/30836>. Reported by Konrad Hinsen <konrad.hinsen@fastmail.net>. * guix/import/elpa.scm (elpa-package->sexp): Add LICENSE parameter and honor it. (elpa->guix-package): Pass 'license:gpl3+ only when REPO is 'gnu.
| * git: 'switch-to-ref' accepts short commit IDs.Ludovic Courtès2018-03-18
| | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/30716>. Reported by Björn Höfling <bjoern.hoefling@bjoernhoefling.de>. * guix/git.scm (switch-to-ref): When REF is a commit, check the length of COMMIT and use 'object-lookup-prefix' if available.
| * import: elpa: Fix typos in documentation stringsKonrad Hinsen2018-03-18
| | | | | | | | | | | | * guix/import/elpa.scm: Fix typos in docstrings. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * import: elpa: use https in download URLsKonrad Hinsen2018-03-18
| | | | | | | | | | | | * guix/import/elpa.scm (elpa-url): Use HTTPS. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * download: Remove TU Wien mirror.Mark H Weaver2018-03-17
| | | | | | | | | | * guix/download.scm (%mirrors): Remove gd.tuwien.ac.at, which no longer seems to exist.
* | build-system/python: Fix deletion of .egg-info dirs created by tests.Mark H Weaver2018-03-18
| | | | | | | | | | * guix/build/python-build-system.scm (check): Use 'string=?' to compare strings, not 'eqv?'.
* | build-system/python: Return #t from all phases.Mark H Weaver2018-03-18
| | | | | | | | | | * guix/build/python-build-system.scm (build, install, wrap): Return #t. (check): Return #t and remove vestigial plumbing.
* | Merge branch 'master' into core-updatesMark H Weaver2018-03-17
|\|
| * guix system: Add '--skip-checks'.Ludovic Courtès2018-03-15
| | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/30760>. Reported by Tomáš Čech <sleep_walker@gnu.org>. * guix/scripts/system.scm (perform-action): Add #:skip-safety-checks? and honor it. (show-help, %options): Add --skip-checks. (process-action): Pass #:skip-safety-checks? to 'perform-action'. * doc/guix.texi (Invoking guix system): Document --skip-checks.
* | build-system/gnu: Tolerate errors during the 'strip' phase.Mark H Weaver2018-03-16
| | | | | | | | | | | | | | | | This is a followup to commit 9a87649c863e1ff8b073b356875eb05eecedbcf7. * guix/build/gnu-build-system.scm (strip)[strip-dir]: If an invoke error occurs, issue a warning and continue to the next file. This restores the tolerance of stripping errors prior to commit 9a87649.
* | utils: invoke: Raise exceptions using SRFI-34 and SRFI-35.Mark H Weaver2018-03-16
| | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (&invoke-error): New condition type. (invoke-error?, invoke-error-program, invoke-error-arguments) (invoke-error-exit-status, invoke-error-term-signal) (invoke-error-stop-signal): New exported procedures. (invoke): Raise exceptions using SRFI-34 and SRFI-35. * guix/ui.scm (call-with-error-handling): Add a guard clause for &invoke-error conditions.
* | gnu-build: Issue a warning unless every phase returns #t.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/build/gnu-build-system.scm (gnu-build): Issue a warning if a phase returns a value other than #t.
* | packages: Issue a warning unless the snippet returns #t.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/packages.scm (patch-and-repack): Issue a warning if the snippet returns a value other than #t.
* | build-system/gnu: Return a boolean from all phase procedures.Mark H Weaver2018-03-16
| | | | | | | | | | | | * guix/build/gnu-build-system.scm (patch-source-shebangs) (patch-generated-file-shebangs, strip): Return #t. (validate-runpath): Raise an exception if validation fails. Never return #f.
* | packages: Update copyright notice.Mark H Weaver2018-03-16
| | | | | | | | | | | | This is a followup to commit 5003aeaf2560d6ddebcf980a94785fba77e00f34. * guix/packages.scm: Update copyright notice for Mark H Weaver.
* | packages: patch-and-repack: Fix snippet handling.Mark H Weaver2018-03-16
| | | | | | | | | | | | | | | | This is a followup to commit 5003aeaf2560d6ddebcf980a94785fba77e00f34. * guix/packages.scm (patch-and-repack): For the snippet, generate a single boolean expression for 'unless', instead of the list of expressions which had previously been spliced into an 'and' form (prior to commit 5003aea).
* | build: emacs-utils: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/build/emacs-utils.scm (emacs-batch-eval) (emacs-batch-edit-file): Use invoke.
* | hg-download: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/hg.scm (hg-fetch): Use invoke and remove vestigial plumbing.
* | svn-download: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/svn.scm (svn-fetch): Use invoke and remove vestigial plumbing.
* | cvs-download: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/cvs.scm (cvs-fetch): Use invoke and remove vestigial plumbing.
* | download: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/download.scm (url-fetch/tarbomb, url-fetch/zipbomb): Use invoke.
* | build-system/scons: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/scons-build-system.scm (build, check, install): Use invoke.
* | build-system/texlive: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/texlive-build-system.scm (compile-with-latex): Use invoke.
* | build-system/python: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/python-build-system.scm (call-setuppy): Use invoke.
* | build-system/perl: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/build/perl-build-system.scm (configure, build, check, install): Use invoke.
* | build-system/cmake: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | * guix/build/cmake-build-system.scm (configure): Use invoke.
* | build-system/glib-or-gtk: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/build/glib-or-gtk-build-system.scm (compile-glib-schemas): Use invoke and remove vestigial plumbing.
* | build-system/gnu: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/build/gnu-build-system.scm (unpack, configure, build, check, install) (strip, compress-documentation): Use invoke and remove vestigial plumbing.
* | gnu-dist: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/build/gnu-dist.scm (autoreconf, build): Use invoke and remove vestigial plumbing.
* | packages: patch-and-repack: Use invoke instead of system*.Mark H Weaver2018-03-16
| | | | | | | | | | * guix/packages.scm (patch-and-repack): Use invoke and remove vestigial plumbing.
* | guix: python-build-system: Make bytecode compilation deterministic.Ricardo Wurmus2018-03-15
| | | | | | | | | | | | * guix/build/python-build-system.scm (enable-bytecode-determinism): New procedure. (%standard-phases): Add "enable-bytecode-determinism" phase.
* | Merge branch 'master' into core-updatesRicardo Wurmus2018-03-14
|\|
| * build-system: minify: Do not import (ice-9 popen) in the build environment.Ricardo Wurmus2018-03-12
| | | | | | | | | | | | | | | | The (ice-9 popen) module should not be added to the imported-modules here, because that depends on the Guile that is used on the host side. * guix/build-system/minify.scm (%minify-build-system-modules): Remove import of (ice-9 popen).
| * hash: Add 'sha1'.Ludovic Courtès2018-03-08
| | | | | | | | | | | | | | | | * guix/hash.scm (GCRY_MD_SHA1): New macro. (bytevector-hash): New procedure. (sha256): Express in terms of 'bytevector-hash'. (sha1): New procedure. * tests/hash.scm ("sha1, empty", "sha1, hello"): New tests.
| * ui: 'display-hint' preserves Texinfo formatting.Ludovic Courtès2018-03-07
| | | | | | | | | | | | | | | | The previous method would mess up with @example formatting, for instance. * guix/ui.scm (display-hint): Parameterize '%text-width' instead of using 'fill-paragraph'.
| * ui: Display fix hints in the case where we have location info.Ludovic Courtès2018-03-07
| | | | | | | | | | * guix/ui.scm (call-with-error-handling): Display fix-hints in the error + message case.
| * linux-initrd: Factorize 'check-device-initrd-modules'.Ludovic Courtès2018-03-07
| | | | | | | | | | | | | | | | | | * gnu/system/mapped-devices.scm (check-device-initrd-modules): Move to... * gnu/system/linux-initrd.scm (check-device-initrd-modules): ... here. New procedure. * po/guix/POTFILES.in: Add it. * guix/scripts/system.scm (check-initrd-modules)[check-device]: Remove. Use 'check-device-initrd-modules' instead.
| * ui: 'load*' no longer fails on Guile 2.2.3 upon EACCES or similar.Ludovic Courtès2018-03-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, if ~/.cache was not write-accessible, 'guix' would exit with code 1 without printing any message. That was because the 'make-stack' call would fail since the exception (a 'system-error) came from 'compile-file', which was called at a point where TAG wasn't installed yet. Secondly, to mimick auto-compilation behavior, we just swallow 'system-error raised by 'compile-file'. Reported by Clément Lassieur. * guix/ui.scm (load*): Move 'compile-file' call in the dynamic extent of TAG. Catch 'system-error around it and ignore it.
| * ui: Better workaround for lack of '%fresh-auto-compile' on 2.2.3.Ludovic Courtès2018-03-05
| | | | | | | | | | | | Fixes <https://bugs.gnu.org/29226> for the most part. * guix/ui.scm (load*): Add call to 'compile-file' on 2.2.3.
| * git-download: Fetch only the required commit, if possible.Danny Milosavljevic2018-03-04
| | | | | | | | * guix/build/git.scm (git-fetch): Fetch only the required commit, if possible.
| * services: messaging: Prosody config supports file-like objects.Clément Lassieur2018-03-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/guix.texi (Messaging Services): Update accordingly. * gnu/services/configuration.scm (serialize-configuration, serialize-maybe-stem, serialize-package): Return strings or string-valued gexps (these procedures were only used for their side-effects). * gnu/services/messaging.scm (serialize-field, serialize-field-list, enclose-quotes, serialize-raw-content, serialize-ssl-configuration, serialize-virtualhost-configuration-list, serialize-int-component-configuration-list, serialize-ext-component-configuration-list, serialize-virtualhost-configuration, serialize-int-component-configuration, serialize-ext-component-configuration, serialize-prosody-configuration): Return strings or string-valued gexps and stop printing. (prosody-activation): Use SERIALIZE-PROSODY-CONFIGURATION's return value with MIXED-TEXT-FILE instead of using its output with PLAIN-FILE. (serialize-non-negative-integer, serialize-non-negative-integer-list): Convert numbers to strings. (file-object?, serialize-file-object, file-object-list?, serialize-file-object-list): New procedures. (ssl-configuration)[capath, cafile], (prosody-configuration)[plugin-paths, groups-file]: Replace FILE-NAME with FILE-OBJECT. * guix/gexp.scm (file-like?): New exported procedure.
| * guix system: Check for the lack of modules in the initrd.Ludovic Courtès2018-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | * guix/scripts/system.scm (check-mapped-devices): Take an OS instead of a list of <mapped-device>. Pass #:needed-for-boot? and #:initrd-modules to CHECK. (check-initrd-modules): New procedure. (perform-action): Move 'check-mapped-devices' call first. Add call to 'check-initrd-modules'. * gnu/system/mapped-devices.scm (check-device-initrd-modules): New procedure. (check-luks-device): Add #:initrd-modules and #:needed-for-boot?. Use them to call 'check-device-initrd-modules'.
| * Add (guix glob).Ludovic Courtès2018-03-02
| | | | | | | | | | | | * guix/glob.scm, tests/glob.scm: New files. * Makefile.am (MODULES): Add guix/glob.scm. (SCM_TESTS): Add tests/glob.scm.
| * environment: Add --user.Mike Gerwitz2018-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change allows overriding the home directory of all filesystem mappings to help hide the identity of the calling user in a container. * doc/guix.texi (Invoking guix environment)[--container]: Mention --user. [--user]: Add item. * guix/scripts/environment.scm (show-help): Add --user. (%options): Add --user. (launch-environment/container) Add 'user' parameter. Update doc. Override 'user-mappings' using 'override-user-mappings'. Consider override for chdir. (mock-passwd, user-override-home, overrid-euser-dir): New procedures. (guix-environment): Disallow --user without --container. Provide user to 'launch-environment/container'. * tests/guix-environment.sh: Add user test. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * environment: Add --link-profile.Mike Gerwitz2018-03-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change is motivated by attempts to run programs (like GNU IceCat) within containers. The 'fontconfig' program, for example, is configured explicitly to check ~/.guix-profile for additional fonts. There were no existing container tests in 'tests/guix-environment.sh', but I added one anyway for this change. * doc/guix.texi (Invoking guix environment): Add '--link-profile'. * guix/scripts/environment.scm (show-help): Add '--link-profile'. (%options): Add 'link-profile' as '#\P', assigned to 'link-profile?'. (link-environment): New procedure. (launch-environment/container): Use it when 'link-profile?'. [link-profile?]: New parameter. (guix-environment): Leave when '--link-prof' but not '--container'. Add '#:link-profile?' argument to 'launch-environment/container' application. * tests/guix-environment-container.sh: New '--link-profile' test. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * import: cpan: Drop "v" prefix from version strings.Ludovic Courtès2018-03-01
| | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/30641>. Reported by Oleg Pykhalov <go.wigust@gmail.com>. * guix/import/cpan.scm (cpan-version): Drop the "v" prefix when it is there.