Fixes <http://bugs.gnu.org/19779>.
Reported by Mark H Weaver <mhw@netris.org>.
* gnu/services/dmd.scm (dmd-configuration-file)[config]: Wrap
'primitive-load' calls in 'call-with-error-handling'.
* gnu/services/dmd.scm (%default-imported-modules, %default-modules):
New variables.
* gnu/services/dmd.scm (<dmd-service>)[modules, imported-modules]: New
field.
* gnu/services/dmd.scm (dmd-service-file-name, dmd-service-file): New
procedures.
(dmd-configuration-file)[modules]: Compute based on the
'imported-modules' field of SERVICES.
(dmd-configuration-file): Remove 'use-modules' form. Use
'dmd-service-file', and call 'primitive-load' on each file.
* doc/guix.texi (dmd Services): Document the new fields.
* gnu/packages/patches/dico-libtool-deterministic.patch: New file.
* gnu/packages/dico.scm (dico)[source]: Use it.
[arguments]: Add #:make-flags.
* gnu-system.am (dist_patch_DATA): Add the patch.
* gnu/services/dmd.scm (assert-no-duplicates): Rename to...
(assert-valid-graph): ... this.
[provisions]: New variable.
[assert-satisfied-requirements]: New procedure.
Use it.
* tests/guix-system.sh: Add test with unmet dmd requirements.
As measured with:
time sh -c 'for i in `seq 1 10` ; do guix package --search-paths ; done'
On my machine, when running:
strace -o ,,s guix package --search-paths
the number returned by:
grep -E '^(open|l?stat).*\.go' ,,s | wc -l
drops from 1610 to 837.
* guix/scripts/package.scm: Remove two unnecessary #:use-module forms.
Autoload (gnu packages ...) modules.
Fixes <http://bugs.gnu.org/21991>.
Reported by Jan Synáček <jan.synacek@gmail.com>.
* guix/scripts/download.scm (guix-download): Call 'leave' when OPTS does
not contain an 'argument' key.
* gnu/packages/firmware.scm (ath9k-htc-firmware)[source](file-name): New
field.
* gnu/packages/gnunet.scm (guile-gnunet)[source](file-name): New field.
* gnu/packages/guile.scm (guile-next)[source](file-name): New field.
(guile-minikanren)[source](file-name): New field
(guile-gdbm-ffi)[source](file-name): New field.
* gnu/packages/ssh.scm (guile-ssh)[source](file-name): New field.
* guix/ftp-client.scm (ftp-open): Change to use 'match' instead of
car/cdr, and fix off-by-one (was '(null? addresses)' instead of
'(null? (cdr addresses))'.)
Fixes <http://bugs.gnu.org/21958>.
* guix/scripts/environment.scm (status->exit-code): New procedure.
(exit/status, primitive-exit/status): Use it.
* tests/guix-environment-container.sh: Add test.
Fixes <http://bugs.gnu.org/21410>.
Reported by Alex Vong <alexvong1995@gmail.com>.
* tests/guix-environment-container.sh: Exit with 77 when
'((@@ (guix scripts environment) assert-container-features))' fails.
* gnu/packages/disk.scm (parted): Update to 3.2.
[inputs]: Add lvm2 and remove check. Replace readline-6.2 with its
latest version.
[native-inputs]: Add perl and python for the tests.
[arguments]: Use `modify-phases' and adapt to the new tests.
[home-page]: Use https.
* gnu/packages/animation.scm (synfig): New variable.
* gnu/packages/patches/synfig-build-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/maths.scm (slepc): Update to 3.6.2.
[arguments]: Append "/lib" to arpack configure flag. Use 'inputs'
rather than '%build-inputs' in 'configure phase.