Age | Commit message (Expand) | Author |
2015-01-13 | build/glib-or-gtk-build-system: Fix 'generate-icon-cache'....Reported by Mark H Weaver <mhw@netris.org>
* guix/build/glib-or-gtk-build-system.scm (generate-icon-cache): Add check for
existence of icons directory.
| Federico Beffa |
2015-01-12 | monads: Remove 'derivation-expression'....* guix/monads.scm (lower-inputs, derivation-expression): Remove.
* tests/monads.scm (derivation-expression, "mlet* +
derivation-expression"): Remove.
| Ludovic Courtès |
2015-01-12 | monads: Rewrite 'text-file*' using gexps....* guix/monads.scm (text-file*): Move to...
* guix/gexp.scm (text-file*): ... here. Rewrite using gexps.
* tests/monads.scm ("text-file*"): Move to...
* tests/gexp.scm ("text-file*"): ... here.
| Ludovic Courtès |
2015-01-12 | guix: build/glib-or-gtk-build-system: Add support for GIO and XDG theming....* guix/build/glib-or-gtk-build-system.scm (data-directories): Rename
'schemas-directories' to 'data-directories' and add support for XDG theming
data.
* guix/build/glib-or-gtk-build-system.scm (gio-module-directories): New
function.
* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Update names to
reflect that we are dealing with more types of data and not only with
schemas. Add handling of GIO modules.
* guix/build-system/glib-or-gtk.scm (lower): Import the 'bin' output of GLib
instead of 'out'. This was an error since we need the program
'glib-compile-schemas'. Update the description.
| Federico Beffa |
2015-01-11 | derivations: Use a set for 'substitution-oracle'....* guix/derivations.scm (substitution-oracle): Use sets instead of lists.
| Ludovic Courtès |
2015-01-11 | derivations: Use sets for 'derivations-prerequisites'....This yields a 46% improvement in 'derivation-prerequisites' invocations
on the Emacs derivation.
* guix/derivations.scm (derivation-prerequisites): Add 'input-set'
variable, and use it in iterations.
| Ludovic Courtès |
2015-01-11 | Add (guix sets)....* guix/sets.scm, tests/sets.scm: New files.sets
* Makefile.am (MODULES, SCM_TESTS): Add them.
| Ludovic Courtès |
2015-01-10 | derivations: Add 'substitution-oracle' and use it....This makes 'guix environment PACKAGE' significantly faster when
substitutes are enabled. Before that, it would lead to many invocations
of 'guix substitute-binary', one per 'derivation-prerequisites-to-build'
call. Now, all these are replaced by a single invocation.
* guix/derivations.scm (derivation-output-paths, substitution-oracle):
New procedures.
(derivation-prerequisites-to-build): Replace #:use-substitutes? with
#:substitutable?. Remove the local 'derivation-output-paths' and
'substitutable?'.
* guix/ui.scm (show-what-to-build): Add 'substitutable?'. Pass it to
'derivation-prerequisites-to-build'.
[built-or-substitutable?]: Use it instead of 'has-substitutes?'.
* tests/derivations.scm ("derivation-prerequisites-to-build and
substitutes"): Use #:substitutable? instead of #:use-substitutes?.
| Ludovic Courtès |
2015-01-09 | derivations: Add 'derivation-output-names'....* guix/derivations.scm (derivation-output-names): New procedure.
(derivation-prerequisites-to-build): Use it for #:outputs.
(map-derivation): Likewise.
* tests/derivations.scm ("derivation-output-names"): New test.
| Ludovic Courtès |
2015-01-09 | import: Add CPAN importer....* guix/import/cpan.scm, guix/scripts/import/cpan.scm, tests/cpan.scm:
New files.
* Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add them.
* guix/scripts/import.scm (importers): Add cpan.
* doc/guix.texi (Requirements): Mention `guix import cpan` as a user
of guile-json.
(Invoking guix import): Document new `guix import cpan` command.
| Eric Bavier |
2015-01-09 | tests: import: Factorize utility function....* tests/pypi.scm (mock): Move this...
* guix/tests.scm: to here.
| Eric Bavier |
2015-01-09 | import: Factorize utility functions....* guix/import/pypi.scm (hash-table->alist, flatten, assoc-ref*,
url-fetch, json-fetch): Pull procedures from here into...
* guix/import/utils.scm: Here and...
* guix/import/json.scm: Here. New file.
* Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add it.
* guix/import/gnu.scm (file-sha256): Move from here to...
* guix/hash.scm: Here.
* tests/pypi.scm (pypi->guix-package): Update mock module reference.
| Eric Bavier |
2015-01-09 | import: gnu: Propagate the key-download argument....* guix/import/gnu.scm (gnu->guix-package): Pass the key-download
argument on to gnu-package->sexp.
| Eric Bavier |
2015-01-09 | substitute-binary: Micro-optimize 'narinfo-sha256'....* guix/scripts/substitute-binary.scm (narinfo-signature->canonical-sexp):
Change "~a" to "~s" in error message.
(%signature-line-rx): Remove.
(narinfo-sha256): Use 'string-contains' instead of 'regexp-exec', and
'string-take' instead of 'match:substring'.
| Ludovic Courtès |
2015-01-09 | records: Optimize 'recutils->alist' by avoiding regexps....* guix/records.scm (%recutils-field-rx, %recutils-comment-rx,
%recutils-plus-rx): Remove.
(%recutils-field-charset): New variable.
(recutils->alist): Adjust to use tests (string-ref line 0) instead of
regexps.
| Ludovic Courtès |
2015-01-09 | base64: Inline arithmetic operations....* guix/base64.scm (define-alias): New macro.
(fxbit-field, fxarithmetic-shift, fxarithmetic-shift-left, fxand,
fxior, fxxor): New aliases.
| Ludovic Courtès |
2015-01-05 | linux-boot: Make /etc/mtab a symlink to /proc/self/mounts....Fixes <http://bugs.gnu.org/19491>.
* gnu/build/linux-boot.scm (mount-root-file-system): Make /root/etc/mtab
a symlink to /proc/self/mounts.
* gnu/build/file-systems.scm (mount-file-system): Don't update /etc/mtab.
* guix/build/syscalls.scm (mount, umount): Have #:update-mtab? default to
#f.
| 宋文武 |
2015-01-04 | pk-crypto: Improve docstring of signature-related procedures....* guix/pk-crypto.scm (bytevector->hash-data, sign): Augment docstring.
| Ludovic Courtès |
2014-12-29 | download: Export 'maybe-expand-mirrors'....* guix/build/download.scm (uri-vicinity, maybe-expand-mirrors): New
procedures.
(url-fetch): Remove them from here.
| Ludovic Courtès |
2014-12-29 | tests: Factorize the 'dummy-package' macro....* guix/tests.scm (dummy-package): New macro.
* tests/lint.scm (dummy-package): Remove.
* tests/packages.scm (dummy-package): Remove.
| Ludovic Courtès |
2014-12-29 | lint: Add tests for the 'home-page' checker....Suggested by Cyril Roelandt <tipecaml@gmail.com>.
* tests/lint.scm (%http-server-port, %http-server-socket, %local-url,
stub-http-server): New variables.
(http-write, call-with-http-server): New procedures.
(with-http-server): New macro.
("home-page: wrong home-page", "home-page: invalid URI", "home-page:
host not found", "home-page: Connection refused", "home-page: 200",
"home-page: 404"): New tests.
* guix/scripts/lint.scm (check-home-page): Export.
| Ludovic Courtès |
2014-12-28 | lint: Report on the package being checked....* guix/scripts/lint.scm (run-checkers): Check
whether (current-error-port) is a tty, and print the package being
checked and the checker currently running when it is.
| Ludovic Courtès |
2014-12-28 | lint: Add 'home-page' checker....* guix/build/download.scm (open-connection-for-uri): Export.
* guix/scripts/lint.scm (probe-uri, check-home-page): New procedures.
(%checkers): Add 'home-page' checker.
| Ludovic Courtès |
2014-12-23 | build-system/python: Fix 'package-with-explicit-python'....Reported by Federico Beffa <beffa@ieee.org>
and Eric Bavier <ericbavier@gmail.com>.
* guix/build-system/python.scm (package-with-explicit-python): Do
nothing when P's build system is not PYTHON-BUILD-SYSTEM.
| Ludovic Courtès |
2014-12-21 | Optimize package-transitive-supported-systems....* guix/packages.scm (first-value): Remove.
(define-memoized/v): New macro.
(package-transitive-supported-systems): Rewrite.
| Mark H Weaver |
2014-12-19 | syscalls: Add more procedures for network interfaces....* guix/build/syscalls.scm (sizeof*, type-size, write-type, write-types,
read-type, read-types, define-c-struct): New macros.
(SIOCSIFFLAGS, SIOCGIFADDR, SIOCSIFADDR): New variables.
(sockaddr-in, sockaddr-in6): New C structs.
(write-socket-address!, read-socket-address,
set-network-interface-flags, set-network-interface-address,
network-interface-address, configure-network-interface): New
procedures.
| Ludovic Courtès |
2014-12-18 | build/python-build-system: Fix easy-install.pth collisions....* guix/build/python-build-system.scm (rename-pth-file): New rename-pth-file
phase and corresponding function.
| Federico Beffa |
2014-12-15 | profiles: Fix removal of the next-to-last item in a profile....Fixes a bug whereby removing the next-to-last item in a profile would
lead to an obscure error, as shown at
<http://lists.gnu.org/archive/html/guix-devel/2014-12/msg00292.html>.
Reported by Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>.
* guix/profiles.scm (profile-derivation)[inputs]: Use (list info-dir
"out") instead of just INFO-DIR.
| Ludovic Courtès |
2014-12-09 | build-system/glib-or-gtk: Fix default value of #:glib-or-gtk-wrap-excluded-ou......Fixes <http://bugs.gnu.org/19321>.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Change default
value of #:glib-or-gtk-wrap-excluded-outputs to ''().
| Ludovic Courtès |
2014-12-09 | gnu: licenses: Add NCSA license....* guix/licenses.scm (ncsa): New variable.
| Eric Bavier |
2014-12-09 | substitute-binary: Add missing newline in download progress report....Fixes <http://bugs.gnu.org/19313>.
Reported by rekado <rekado@elephly.net>.
* guix/scripts/substitute-binary.scm (guix-substitute-binary)
<--substitute>: Add 'newline' call.
| Ludovic Courtès |
2014-12-09 | system: Don't make /boot/grub/grub.cfg a symlink to the store....This would not work when /boot is a separate partition, as reported by
Nikita Karetnikov <nikita@karetnikov.org> in <http://bugs.gnu.org/19220>.
This fixes a regression introduced in 39d1f82.
* gnu/build/install.scm (install-grub): Copy GRUB.CFG instead of
symlinking it, as was the case before 39d1f82.
* gnu/build/vm.scm (register-grub.cfg-root): Add 'grub.cfg' parameter.
Make it a permanent GC root instead of an indirect GC root.
(initialize-hard-disk): Adjust accordingly.
* guix/scripts/system.scm (install-grub*): Replace use of
'add-indirect-root' by the addition of a permanent GC root in
%GC-ROOTS-DIRECTORY.
| Ludovic Courtès |
2014-12-08 | build-system/python: Add handling of 'propagated-inputs' in...'package-with-explicit-python'.
* guix/build-system/python.scm (package-with-explicit-python): Add mapping for
'propagated-inputs'.
| Federico Beffa |
2014-12-07 | guix system: Fix typo affecting 'guix system init'....Fixes <http://bugs.gnu.org/19279>.
Fixes a regression introduced in cc7fa59.
Reported by Tomas Cech <tcech@suse.cz>.
* guix/scripts/system.scm (install): Fix order of arguments to 'lift'
and 'lift2'.
| Ludovic Courtès |
2014-12-06 | guix: scripts: Parse $GUIX_BUILD_OPTIONS separately....Appending to "raw" args broke optional parameters in 'guix package -I'
and 'guix package -A', and possibly other places. Therefore, switch to
parsing each set of options on its own and append resulting alists
together afterwards.
* guix/scripts/archive.scm (parse-options-from): Rename from
(parse-options) and add explicit argument. New form of (parse-options)
using its old algorithm via -from function.
* guix/scripts/build.scm: Ditto.
* guix/scripts/environment.scm: Ditto.
* guix/scripts/package.scm: Ditto.
* guix/scripts/system.scm: Ditto.
* tests/guix-package.sh: Add test.
* doc/guix.texi (Invoking guix build): Make it clear that the options
are parsed independently.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| nebuli |
2014-12-04 | system: Make /boot/grub/grub.cfg an indirect GC root....Fixes <http://bugs.gnu.org/19160>.
* guix/scripts/system.scm (install-grub*): Make /boot/grub/grub.cfg an
indirect GC root.
* gnu/build/install.scm (install-grub): Make TARGET a symlink.
* gnu/build/vm.scm (register-grub.cfg-root): New procedure.
(initialize-hard-disk): Use it.
| Ludovic Courtès |
2014-12-04 | guix system: Factorize 'grub-install' error handling, and use more 'mbegin'....* guix/scripts/system.scm (install-grub*): New procedure.
(install): Use it, and use 'mwhen?'.
(perform-action) <reconfigure>: Likewise.
| Ludovic Courtès |
2014-12-02 | build: emacs-utils: Add 'emacs-generate-autoloads'....* guix/build/emacs-utils.scm (emacs-generate-autoloads): New procedure.
| Alex Kost |
2014-12-02 | packages: Use the target's system Guile when downloading patches....* guix/packages.scm (patch-and-repack)[patch-inputs]: Pass SYSTEM in
'package-source-derivation' call.
| Ludovic Courtès |
2014-12-02 | derivations: Export 'derivation-builder'....* guix/derivations.scm: Export 'derivation-builder'.
| Ludovic Courtès |
2014-12-02 | monads: Add 'lift0'....* guix/monads.scm (lift0): New variable.
| Ludovic Courtès |
2014-12-02 | monads: Add 'mwhen' and 'munless'....* guix/monads.scm (mbegin): Add special '%current-monad' syntactic
keyword.
(mwhen, munless): New macros.
| Ludovic Courtès |
2014-12-02 | guix system: Use 'mbegin' for 'install'....* guix/scripts/system.scm (install): Use 'mbegin'. Lift FORMAT and
POPULATE-ROOT-FILE-SYSTEM, and use the result.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Allow specific outputs to be excluded from wrapping....* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Add
#:glib-or-gtk-wrap-excluded-outputs parameter and honor it.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Add
#:glib-or-gtk-wrap-excluded-outputs parameter and pass it in BUILDER.
* doc/guix.texi (Build Systems): Mention it.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Correctly handle multiple-output packages....* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Move body
to 'handle-output' inner procedure, and parametrize it by output name
and directory. Call it for each element of OUTPUTS.
(compile-glib-schemas): Likewise.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Use 'for-each' and 'cut' as appropriate....* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Use
'for-each' instead of 'map' in for-effect contexts. Use 'cut' instead
of 'lambda' when appropriate.
| Ludovic Courtès |
2014-12-01 | build-system/glib-or-gtk: Clean up whitespace....* guix/build/glib-or-gtk-build-system.scm: M-x whitespace-cleanup.
| Ludovic Courtès |
2014-11-30 | guix: scripts: Add GUIX_BUILD_OPTIONS environment handling....* doc/guix.texi (Invoking guix build): Mention 'GUIX_BUILD_OPTIONS'.
* guix/scripts/archive.scm: (append args (environment-build-options)).
* guix/scripts/build.scm: Ditto.
* guix/scripts/environment.scm: Ditto.
* guix/scripts/package.scm: Ditto.
* guix/scripts/system.scm: Ditto.
* guix/ui.scm (environment-build-options): New function.
* guix/utils.scm (arguments-from-environment-variable): New function.
* tests/guix-build.sh: Add tests.
* test-env.in: Unset GUIX_BUILD_OPTIONS.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| nebuli |
2014-11-29 | gnu-maintenance: Support .zip files....Reported by Andreas Enge <andreas@enge.fr>.
* guix/gnu-maintenance.scm (sans-extension): Add case for ".zip".
(%tarball-rx): Extend to handle .zip extension.
| Ludovic Courtès |
2014-11-28 | Add (guix elf)....* guix/elf.scm: New file. Taken from Guile 'master', commit 3f826e3.
* Makefile.am (MODULES): Add it.
* THANKS: Thank Andy, who wrote this module.
| Ludovic Courtès |