Age | Commit message (Expand) | Author |
2017-05-10 | scripts: Fix singular/plural message mismatch....* guix/scripts.scm (warn-about-old-distro): Swap singular and plural
forms in 'N_' call.
| Ludovic Courtès |
2017-05-10 | build-system: Add package-with-ocaml4.01....* guix/build-system/ocaml.scm (default-ocaml4.01, default-ocaml4.01-findlib,
package-with-explicit-ocaml, package-with-ocaml4.01,
strip-ocaml4.01-variant): New variables.
| Ben Woodcroft |
2017-05-10 | scripts: Warn about old distro....Fixes <http://bugs.gnu.org/25852>.
Suggested by Mark H Weaver <mhw@netris.org>.
* guix/scripts.scm (%distro-age-warning): New variable.
(warn-about-old-distro): New procedure.
* guix/scripts/package.scm (process-actions): Call
'warn-about-old-distro'.
* guix/scripts/system.scm (process-action): Likewise.
| Ludovic Courtès |
2017-05-10 | ui: 'string->duration' correctly handles hours....* guix/ui.scm (string->duration): Add missing '=>' for hours.
* tests/ui.scm ("duration, 2 hours"): New test.
| Ludovic Courtès |
2017-05-10 | guix: Add java-utils....* guix/build/java-utils.scm: New file.
* guix/build-system/ant.scm: Use it.
* Makefile.am (MODULES): Add it.
Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
| Hartmut Goebel |
2017-05-10 | ant-build-system: Add default "check" target....* guix/build-system/ant.scm (ant-build): Change default test target to
"check"; add "test-dir" argument.
* guix/build/ant-build-system.scm (default-build.xml): Add "test-dir"
argument; add ant targets "compile-tests" and "check".
(configure): Add "test-dir" argument; pass it to "default-build.xml".
| Ricardo Wurmus |
2017-05-10 | ant-build-system: Allow specifying source directory....* guix/build-system/ant.scm (ant-build),
guix/build/ant-build-system.scm (default-build.xml): Add parameter
source-dir.
* guix/build/ant-build-system.scm (configure): Pass source-dir on to
default-build.xml.
* doc/guix.texi (Build Systems): Document it.
Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
| Hartmut Goebel |
2017-05-09 | pull: Build package modules without optimizations on Guile 2.2....* guix/build/pull.scm (%default-optimizations)
(%lightweight-optimizations): New variables.
(optimization-options): New procedure. Taken from
build-aux/compile-all.scm.
(build-guix): Pass it to 'compile-file'.
| Ludovic Courtès |
2017-05-09 | pull: Build with the matching Guile major version....Previously, 'guix pull' would always build with Guile 2.0.
Now it builds with the Guile that matches (effective-version).
* build-aux/build-self.scm (false-if-wrong-guile)
(package-for-current-guile): New procedures.
(guile-json, guile-ssh): Use it.
(guile-for-build): New procedure.
(build): Use (effective-version) instead of the hard-coded "/2.0".
Add (guix modules) closure to #:modules argument. Pass
\#:guile-for-build argument to 'gexp->derivation'.
* guix/build/pull.scm (depends-on-guile-ssh?, all-scheme-files): New
procedures.
(build-guix): Show the output of (version). Use the above procedures.
Filter out files that match 'depends-on-guile-ssh?' when (ssh session)
is missing.
| Ludovic Courtès |
2017-05-09 | pull: Use 'with-store'....* guix/scripts/pull.scm (guix-pull): Remove call to 'open-connection'.
Use 'with-store' instead.
| Ludovic Courtès |
2017-05-09 | pull: Honor the standard build options....Reported by Niall Dooley <dooleyn@gmail.com>
in <https://lists.gnu.org/archive/html/help-guix/2017-05/msg00038.html>.
* guix/scripts/pull.scm (%options): Add --dry-run and all of
%STANDARD-BUILD-OPTIONS.
(show-help): Add call to 'show-build-options-help'.
(%default-options): Add 'system', 'substitutes?', 'graft?',
'max-silent-time', and 'verbosity'.
(guix-pull)[parse-options]: Remove.
Use 'parse-command-line' instead. Honor --dry-run.
| Ludovic Courtès |
2017-05-07 | git-download: Fix 'git-predicate' file membership....Previously, it the predicate would return #t for "m4/ChangeLog" if
"ChangeLog" (in the top-level directory) was in FILES. This commit
fixes the ambiguity.
* guix/git-download.scm (git-predicate): Add 'inodes' variable. Use it
to determine file membership.
| Ludovic Courtès |
2017-05-07 | store: Use 'TCP_NODELAY' when connecting to a daemon over PF_INET....* guix/store.scm (open-inet-socket): Add 'cond-expand' form to define
'TCP_NODELAY' when needed. Add call to 'setsockopt' after 'connect'.
| Ludovic Courtès |
2017-05-05 | Revert "guix: git: Add new module."...This reverts commit a70b784708fb5e1b78430aa793d89ca04bc641a8.
Commit a70b784708f caused `guix pull` to fail:
ERROR: In procedure scm-error:
ERROR: no code for module (git)
| Leo Famulari |
2017-05-05 | guix: git: Add new module....* guix/git.scm: New file.
* configure.ac: Check for (guile git).
* Makefile.am: Build guix/git.scm if (guile git) is available.
| Mathieu Othacehe |
2017-05-05 | scripts: Remove profile-grub-entries....* guix/scripts/system.scm (profile-grub-entries): Delete variable.
| Danny Milosavljevic |
2017-05-05 | system: grub: Use boot-parameters instead of menu-entry where possible....* gnu/system/grub.scm (boot-parameters->menu-entry): New variable.
(grub-configuration-file): Use boot-parameters
instead of menu-entry where possible.
* guix/scripts/system.scm (profile-boot-parameters): Update docstring.
(reinstall-grub): Use profile-boot-parameters.
(perform-action): Use profile-boot-parameters.
| Danny Milosavljevic |
2017-05-05 | scripts: Make boot-parameters label include generation number and time....* guix/scripts/system.scm (system->boot-parameters): Make label include
generation number and time.
| Danny Milosavljevic |
2017-05-05 | system: Introduce read-boot-parameters-file....* gnu/system.scm (read-boot-parameters): Remove export.
(read-boot-parameters-file): New variable. Export it.
* guix/scripts/system.scm (profile-boot-parameters): Use
read-boot-parameters-file.
(profile-grub-entries): Use read-boot-parameters-file.
(reinstall-grub): Use read-boot-parameters-file.
(display-system-generation): Use read-boot-parameters-file.
| Danny Milosavljevic |
2017-05-04 | store: Use 'write-bytevector' instead of hand-coded equivalent....* guix/store.scm (process-stderr): Use 'write-bytevector' in the
%STDERR-READ case.
| Ludovic Courtès |
2017-05-04 | store: Add store path computation procedures....* guix/derivations.scm (compressed-hash, store-path)
(output-path, fixed-output-path): Move to...
* guix/store.scm: ... here.
| Ludovic Courtès |
2017-05-04 | environment: Correct typo....* guix/scripts/environment.scm (create-environment): Fix typo.
| Tobias Geerinckx-Rice |
2017-05-03 | refresh: Use (guix discovery)....* guix/scripts/refresh.scm (maybe-updater, list-updaters): Remove.
(importer-modules): New procedure.
(%updaters): Define using 'fold-module-public-variables'. Turn into a
promise and adjust users.
| Ludovic Courtès |
2017-05-03 | Add (guix discovery)....* guix/discovery.scm, tests/discovery.scm: New files.
* gnu/packages.scm (scheme-files, file-name->module-name)
(scheme-modules, all-package-modules): Remove.
(fold-packages): Rewrite in terms of 'fold-module-public-variables'.
* gnu/tests.scm: Use (guix discovery).
* Makefile.am (MODULES): Add guix/discovery.scm.
(SCM_TESTS): Add tests/discovery.scm.
| Ludovic Courtès |
2017-05-03 | ui: Rename '_' to 'G_'....This avoids collisions with '_' when the latter is used as a 'match'
pattern for instance. See
<https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00464.html>.
* guix/ui.scm: Rename '_' to 'G_'.
* po/guix/Makevars (XGETTEXT_OPTIONS): Adjust accordingly.
* build-aux/compile-all.scm (warnings): Remove 'format'.
* gnu/packages.scm,
gnu/services.scm,
gnu/services/shepherd.scm,
gnu/system.scm,
gnu/system/shadow.scm,
guix/gnupg.scm,
guix/http-client.scm,
guix/import/cpan.scm,
guix/import/elpa.scm,
guix/import/pypi.scm,
guix/nar.scm,
guix/scripts.scm,
guix/scripts/archive.scm,
guix/scripts/authenticate.scm,
guix/scripts/build.scm,
guix/scripts/challenge.scm,
guix/scripts/container.scm,
guix/scripts/container/exec.scm,
guix/scripts/copy.scm,
guix/scripts/download.scm,
guix/scripts/edit.scm,
guix/scripts/environment.scm,
guix/scripts/gc.scm,
guix/scripts/graph.scm,
guix/scripts/hash.scm,
guix/scripts/import.scm,
guix/scripts/import/cpan.scm,
guix/scripts/import/cran.scm,
guix/scripts/import/crate.scm,
guix/scripts/import/elpa.scm,
guix/scripts/import/gem.scm,
guix/scripts/import/gnu.scm,
guix/scripts/import/hackage.scm,
guix/scripts/import/nix.scm,
guix/scripts/import/pypi.scm,
guix/scripts/import/stackage.scm,
guix/scripts/lint.scm,
guix/scripts/offload.scm,
guix/scripts/pack.scm,
guix/scripts/package.scm,
guix/scripts/perform-download.scm,
guix/scripts/publish.scm,
guix/scripts/pull.scm,
guix/scripts/refresh.scm,
guix/scripts/size.scm,
guix/scripts/substitute.scm,
guix/scripts/system.scm,
guix/ssh.scm,
guix/upstream.scm: Use 'G_' instead of '_'. Most of this change was
obtained by running: "sed -i -e's/(_ "/(G_ "/g' `find -name \*.scm`".
| Ludovic Courtès |
2017-05-02 | gnu: Avoid circular dependencies by Perl license....* guix/licenses.scm (perl-license): New variable.
* gnu/packages/bioinformatics.scm: Change (package-license perl) to perl-license.
* gnu/packages/compression.scm: Same.
* gnu/packages/databases.scm: Same.
* gnu/packages/gd.scm: Same.
* gnu/packages/language.scm: Same.
* gnu/packages/libevent.scm: Same.
* gnu/packages/mail.scm: Same.
* gnu/packages/messaging.scm: Same.
* gnu/packages/ncurses.scm: Same.
* gnu/packages/networking.scm: Same.
* gnu/packages/photo.scm: Same.
* gnu/packages/tcl.scm: Same.
* gnu/packages/tex.scm: Same.
* gnu/packages/tls.scm: Same.
* gnu/packages/web.scm: Same.
* gnu/packages/wm.scm: Same.
* gnu/packages/xml.scm: Same.
* gnu/packages/xorg.scm: Same.
* gnu/packages/zip.scm: Same.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Petter |
2017-05-02 | monads: Add a template and specialization mechanism for monadic procedures....* guix/monads.scm (%templates, %template-instances): New variables.
(register-template!, register-template-instance!): New procedures.
(template-directory, define-template): New macro.
(foldm, sequence, anym): Define using 'define-template'. Avoid replace
ellipses with dots.
(mapm): Likewise, but do not use 'foldm'.
* guix/store.scm: Add 'template-directory' invocation.
| Ludovic Courtès |
2017-05-02 | download: Continue handshake upon TLS warning alerts....This allows us to download from site such as
<https://fusionforge.int-evry.fr> where the server does not recognize
the server name passed via the 'server_name' extension.
* guix/build/download.scm (tls-wrap): Catch 'gnutls-error' around
'handshake'. Upon ERROR/WARNING-ALERT-RECEIVED, print a message and
call 'handshake'.
| Ludovic Courtès |
2017-05-02 | licenses: Add CeCILL and CeCILL-B....* guix/licenses.scm (cecill, cecill-b): New variables.
| Ludovic Courtès |
2017-05-02 | substitute: Validate substitute URLs....Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>
at <https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00548.html>.
* guix/scripts/substitute.scm (validate-uri): New procedure.
(guix-substitute): Use it.
| Ludovic Courtès |
2017-05-02 | publish: Use a larger zlib buffer for compression with '--cache'....* guix/scripts/publish.scm (bake-narinfo+nar): Pass #:buffer-size to
'call-with-gzip-output-port'.
| Ludovic Courtès |
2017-05-02 | Add package/inherit....* guix/packages.scm (package/inherit): New public macro.
| Mark H Weaver |
2017-05-01 | licenses: Add new meta-license fsdg-compatible....* guix/licenses.scm (fsdg-compatible): New record with constructor.
| Clément Lassieur |
2017-05-01 | publish: Produce a "FileSize" narinfo field when possible....* guix/scripts/publish.scm (narinfo-string): Add #:file-size parameter.
Produce a "FileSize" field when COMPRESSION is eq? to '%no-compression'
or when FILE-SIZE is true.
(bake-narinfo+nar): Pass #:file-size.
* tests/publish.scm ("/*.narinfo")
("/*.narinfo with properly encoded '+' sign")
("with cache"): Check for "FileSize".
| Ludovic Courtès |
2017-05-01 | refresh: Report packages using the "@" syntax....* guix/scripts/refresh.scm (list-dependents)[full-name]: New procedure.
Use 'full-name' instead of 'package-full-name'.
* doc/guix.texi (Invoking guix refresh): Adjust example accordingly.
| Ludovic Courtès |
2017-04-28 | import: Update Bioconductor release to 3.5....* guix/import/cran.scm: Change Bioconductor release to 3.5.
| Roel Janssen |
2017-04-22 | cache: Work around 'time-monotonic' bug in Guile 2.2.2....* guix/cache.scm (time-monotonic) [guile-2.2]: New variable.
* tests/cache.scm (time-monotonic) [guile-2.2]: Likewise.
* guix/build/download.scm (time-monotonic) [guile-2.2]: Adjust comment:
it's a 2.2.2 bug.
| Ludovic Courtès |
2017-04-22 | download: Work around Guile 2.2 bug with 'time-monotonic' objects....* guix/build/download.scm (time-monotonic) [guile-2.2]: New variable.
| Ludovic Courtès |
2017-04-21 | derivations: Restore UTF-8 encoding of build scripts....Reported by Mark H Weaver <mhw@netris.org>
at <https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00457.html>.
* guix/derivations.scm (build-expression->derivation): Use a string
output port for the expression. This reverts part of
2dce88d5bbe7a65e101c0734d1c6db44ecc8c299.
* tests/derivations.scm ("build-expression->derivation and builder
encoding"): New test.
| Ludovic Courtès |
2017-04-21 | store: Support 'ssh://' URIs in 'GUIX_DAEMON_SOCKET'....This allows 'guix' commands to talk to a remote store over SSH.
* guix/store.scm (connect-to-daemon)[connect]: Call 'resolve-interface'
for unknown URI schemes.
* guix/store/ssh.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (The Store): Document it. Mark remote access as
experimental.
| Ludovic Courtès |
2017-04-21 | ssh: Decompose 'connect-to-remote-daemon'....* guix/ssh.scm (remote-daemon-channel): New procedure.
(connect-to-remote-daemon): Implement in terms of it.
| Ludovic Courtès |
2017-04-21 | ssh: Move 'open-ssh-session' to (guix ssh)....* guix/scripts/copy.scm (%compression, open-ssh-session): Move to...
* guix/ssh.scm: ... here. Use '&message' conditions instead of calling
'leave'.
| Ludovic Courtès |
2017-04-21 | offload: Avoid using '_' as a 'match' pattern....* guix/scripts/offload.scm (host-key->type+key, machine-load)
(process-request, guix-offload): Do not use '_' as a 'match' pattern.
| Ludovic Courtès |
2017-04-21 | store: Add support for remote connections via 'guix://' URIs....* guix/store.scm (open-inet-socket): New procedure.
(connect-to-daemon): Support the 'guix' URI scheme.
* doc/guix.texi (The Store): Document it.
| Ludovic Courtès |
2017-04-21 | store: Add 'system-error-to-connection-error' macro....* guix/store.scm (system-error-to-connection-error): New macro.
(open-unix-domain-socket): Use it instead of 'catch'.
| Ludovic Courtès |
2017-04-21 | store: 'GUIX_DAEMON_SOCKET' can now be a URI....* guix/store.scm (%daemon-socket-file): Rename to...
(%daemon-socket-uri): ... this.
(connect-to-daemon): New procedure.
(open-connection): Rename 'file' to 'uri'. Use 'connect-to-daemon'
instead of 'open-unix-domain-socket'.
* guix/tests.scm (open-connection-for-tests): Rename 'file' to 'uri'.
* tests/guix-build.sh: Add tests.
* tests/store.scm ("open-connection with file:// URI"): New tests.
| Ludovic Courtès |
2017-04-20 | derivations: Avoid string-to-bytevector conversions....On Guile 2.2.1, this yields a 5% speedup on:
guix build libreoffice xmonad certbot -n --no-substitutes --no-build-hook
* guix/derivations.scm (derivation->string): Rename to...
(derivation->bytevector): ... this. Use 'open-bytevector-output-port'
instead of 'call-with-output-string'.
(derivation-hash): Remove string-to-bytevector conversion before
'sha256' call.
(build-expression->derivation): Use 'add-data-to-store' and an
bytevector port instead of a string port for the expression.
| Ludovic Courtès |
2017-04-19 | publish: Add a handler for / and /index.html....Suggested by Quiliro <quiliro@riseup.net>
in <https://bugs.gnu.org/26567>.
* guix/scripts/publish.scm (render-home-page): New procedure.
(make-request-handler): Handle it.
| Ludovic Courtès |
2017-04-19 | gexp: 'gexp-modules' accepts plain Scheme objects....* guix/gexp.scm (gexp-modules): Return '() when not (gexp? GEXP).
* tests/gexp.scm ("gexp-modules and literal Scheme object"): New test.
| Ludovic Courtès |
2017-04-18 | publish: Remove expired cache entries when '--ttl' is used....* guix/scripts/publish.scm (narinfo-files): New procedure.
(render-narinfo/cached)[delete-file]: New procedure. Add call to
'maybe-remove-expired-cache-entries'.
* doc/guix.texi (Invoking guix publish): Document the interation between
--cache and --ttl.
| Ludovic Courtès |