| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
Fixes a regression introduced in a8be7b9a.
* guix/build/download.scm (store-path-abbreviation): Return STORE-PATH
if it's not an actual store path. Fixes an out-of-range exception
when running tests/substitute.scm and tests/store.scm.
|
|
|
|
|
|
|
|
| |
* guix/build/download.scm
(string-pad-middle): Allow resulting padded string to overflow.
(store-url-abbreviation): Remove unnecessary procedure.
(progress-proc): Use BASENAME as default for parameter 'abbreviation'.
(url-fetch): Display extra newlines for readability.
|
|
|
|
|
|
|
|
| |
* guix/scripts/system.scm (maybe-build): Move to ...
* guix/scripts.scm: ...here.
(build-package): New procedure.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
| |
* guix/licenses.scm (zpl2.1): New variable.
|
|
|
|
| |
* guix/download.scm (%mirrors): Update mirror list for CRAN.
|
|
|
|
|
| |
* guix/import/cran.scm (cran-sxml->sexp): Use the cran-uri procedure in
the generated package expression.
|
|
|
|
| |
* guix/build-system/r.scm (cran-uri): New procedure.
|
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (%hanging-paren-rx): New variable.
(report-lone-parentheses): New procedure.
(%formatting-reporters): Use it.
* tests/lint.scm ("formatting: lonely parentheses"): New test.
|
|
|
|
|
|
| |
Suggested by: Ludovic Courtès <ludo@gnu.org>.
* guix/store.scm (set-build-options*): New procedure.
|
|
|
|
|
| |
* guix/scripts/build.scm (guix-build): Extract code from here and move to...
* guix/ui.scm (show-derivation-outputs): ... here. New procedure.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/ui.scm: Add missing copyright lines.
(args-fold*, environment-build-options, %default-argument-handler,
parse-command-line): Move to ...
* guix/scripts.scm: ...here. New file.
* guix/scripts/archive.scm: Use it.
* guix/scripts/build.scm: Likewise.
* guix/scripts/download.scm: Likewise.
* guix/scripts/edit.scm: Likewise.
* guix/scripts/environment.scm: Likewise.
* guix/scripts/gc.scm: Likewise.
* guix/scripts/graph.scm: Likewise.
* guix/scripts/hash.scm: Likewise.
* guix/scripts/import/cpan.scm: Likewise.
* guix/scripts/import/cran.scm: Likewise.
* guix/scripts/import/elpa.scm: Likewise.
* guix/scripts/import/gem.scm: Likewise.
* guix/scripts/import/gnu.scm: Likewise.
* guix/scripts/import/hackage.scm: Likewise.
* guix/scripts/import/nix.scm: Likewise.
* guix/scripts/import/pypi.scm: Likewise.
* guix/scripts/lint.scm: Likewise.
* guix/scripts/package.scm: Likewise.
* guix/scripts/publish.scm: Likewise.
* guix/scripts/pull.scm: Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/scripts/size.scm: Likewise.
* guix/scripts/system.scm: Likewise.
* tests/ui.scm (with-environment-variable, "parse-command-line",
"parse-command-line and --no options"): Move to ...
* tests/scripts.scm: ...here. New file.
* Makefile.am (MODULES): Add guix/scripts.scm.
(SCM_TESTS): Add tests/scripts.scm.
* po/guix/POTFILES.in: Add guix/scripts.scm.
|
|
|
|
|
|
|
| |
* guix/build/download.scm
(seconds->string): Conditionally include hours in timestamp.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/build/download.scm
(string-pad-middle, store-url-abbreviation, store-path-abbreviation):
New procedures.
(progress-proc): Add #:abbreviation parameter and use it. Generate a
better indeterminate progress string.
* guix/scripts/substitute.scm (assert-valid-narinfo): Add newlines to output.
(process-substitution): Use byte-count->string and store-path-abbreviation.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
| |
* guix/script/lint.scm (check-description-style): Check for invalid
Texinfo markup.
* tests/lint.scm: Test it.
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (check-source-file-name): New procedure.
(%checkers): Add 'source-file-name' checker.
* tests/lint.scm ("source-file-name", "source-file-name: v prefix")
("source-file-name: valid", "source-file-name: bad checkout")
("source-file-name: good checkout"): New tests.
* doc/guix.texi (Invoking guix lint): Mention file name check.
|
|
|
|
|
|
|
|
| |
* guix/scripts/graph.scm (uri->file-name, node-full-name): Move origin file
name logic to...
* guix/packages.scm (origin-actual-file-name): ...here.
* tests/packages.scm ("origin-actual-file-name")
("origin-actual-file-name, file-name"): New tests.
|
|
|
|
|
| |
* guix/build/download.scm (nearest-exact-integer): New procedure.
(seconds->string, byte-count->string): Use it.
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/21451>.
Reported by Steve Sprang <steve.sprang@gmail.com>.
* guix/scripts/system.scm (guix-system)[option-arguments]: Error out
when ACTION is #f.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the Ruby build system only knew how to work with gem archives,
which made it difficult to build unreleased gems from a Git repository or
released gems in tarball form.
* gnu/build/ruby-build-system.scm (gnu:unpack, gem-archive?): New procedures.
(unpack): Use GNU build system unpack phase for non-gem sources.
(build): Rebuild the gemspec iff the source is a gem archive.
* guix.texi ("ruby-build-system"): Mention that tarballs and directories are
acceptable.
|
|
|
|
|
|
|
| |
* guix/scripts/build.scm (%default-log-urls): New variable.
(log-url): New procedure.
(guix-build): Use it.
* doc/guix.texi (Invoking guix build): Document it.
|
|
|
|
|
|
| |
* guix/http-client.scm (make-delimited-input-port): Backport Guile
commit 5a10e41.
Monkey-patch 'make-delimited-input-port' for any Guile <= 2.0.11.
|
|
|
|
| |
* guix/http-client.scm: Remove redundant #:use-module (guix utils).
|
|
|
|
|
|
|
| |
* guix/packages.scm (transitive-input-references): New procedure.
* gnu/packages/version-control.scm (package-transitive-propagated-labels*)
(package-propagated-input-refs): Delete.
(git)[arguments]: Adjust to transitive-input-references.
|
|
|
|
| |
* guix/scripts/pull.scm (%snapshot-url): Update to the new URL.
|
|
|
|
|
|
|
|
|
|
| |
* guix/build/download.scm (seconds->string): New function.
(byte-count->string): New function.
(progress-bar): New function.
(throughput->string): Remove function.
(progress-proc): Display base file name, elapsed time, and progress bar.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Provide support for Texinfo's markup in package description.
* guix/ui.scm (%text-width): New parameter.
(texi->plain-text): New variable.
(package->recutils): Use them.
(package-description-string): New variable.
* emacs/guix-main.scm (%package-param-alist): Use it.
* gnu/packages/perl.scm (perl-devel-globaldestruction)
(perl-devel-lexalias, perl-exporter-lite): Adapt to Texinfo's markup.
* gnu/packages/python.scm (python2-empy): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The intent is to make 'clone' behave a lot more like 'primitive-fork', which
calls clone(2) with SIGCHLD, CLONE_CHILD_CLEARTID, and CLONE_CHILD_SETTID
flags. Notably, running 'clone' at the REPL without these flags would break
the REPL beyond repair.
* guix/build/syscalls.scm (CLONE_CHILD_CLEARTID, CLONE_CHILD_SETTID): New
variables.
* gnu/build/linux-container.scm (namespaces->bit-mask): Add
CLONE_CHILD_CLEARTID and CLONE_CHILD_SETTID to bit mask.
|
|
|
|
|
|
|
|
|
|
| |
Having the hash of the source gem in the source directory file name proved to
be problematic when running the test suite for the 'pg' gem that creates
UNIX-domain sockets in the source directory and exceeded the 108 character
limit on GNU/Linux systems.
* guix/build/ruby-build-system.scm (unpack): Rename unpacked gem directory to
"gem".
|
|
|
|
|
|
|
| |
Reported by Mathieu Lirzin <mathieu.lirzin@etu.u-bordeaux.fr>
at <https://lists.gnu.org/archive/html/guix-devel/2015-09/msg00111.html>.
* guix/ui.scm (P_): Check whether MSGID is empty, and return it if it is.
|
|
|
|
| |
* guix/licenses.scm (cc-by-sa4.0, cc-by3.0): New variables.
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (check-license): New procedure.
(%checkers): Add 'license' checker.
* tests/lint.scm ("license: invalid license"): New test.
|
|
|
|
|
| |
* guix/build/emacs-build-system.scm (move-doc): Adjust to use
"/share/info" instead of its sub-directory.
|
|
|
|
|
| |
* guix/download.scm (url-fetch): Use #:local-build? #t.
* guix/git-download.scm (git-fetch): Likewise.
|
|
|
|
| |
* guix/build/syscalls.scm (clone): Catch -1 return value and throw error.
|
|
|
|
|
|
|
|
| |
Reported by Andy Wingo <wingo@igalia.com>.
* guix/monads.scm (define-lift) <fallback case>: Add missing #'. Remove
extra formal parameter.
* tests/monads.scm ("lift"): Add test with 'lift1' as a procedure.
|
|
|
|
|
|
|
|
| |
* guix/scripts/publish.scm (narinfo-string): Catch 'system-error' around
'load-derivation' call; return BASE-INFO upon ENOENT. This allows us
to return the narinfo even if DERIVER is missing. Before that, the
exception would be uncaught, leading to 500 Internal Error on the
client side.
|
|
|
|
|
|
|
|
| |
* guix/scripts/graph.scm (%options, show-help): Add '--expression'.
(guix-graph): Call 'read/eval-package-expression' for 'expression'
pairs in OPTS.
* tests/guix-graph.sh: Add tests.
* doc/guix.texi (Invoking guix graph): Document it.
|
|
|
|
| |
* guix/licenses.scm (gfl1.0): New variable.
|
|
|
|
|
|
|
|
| |
* guix/import/gem.scm (make-gem-sexp): Properly handle an empty list of
licenses. When rendering a list of licenses, cons 'list onto the front of
the expression.
* tests/gem.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
|
|
|
|
|
|
|
| |
* guix/build-system/r.scm: New file.
* guix/build/r-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document r-build-system.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/import/cran.scm: New file.
* guix/scripts/import.scm: Add "cran" to 'importers'.
* guix/scripts/import/cran.scm: New file.
* tests/cran.scm: New file.
* Makefile.am (MODULES): Add 'guix/import/cran.scm' and
'guix/scripts/import/cran.scm'.
(SCM_TESTS): Add 'tests/cran.scm'.
* doc/guix.texi (Invoking guix import): Document it.
* po/guix/POTFILES.in: Add 'guix/scripts/import/cran.scm'.
|
|
|
|
|
| |
* guix/ui.scm (guix-main): Move the code to run guix command line to ...
(run-guix): ...here. New procedure. Export it.
|
|
|
|
|
|
| |
* guix/scripts/graph.scm (%node-types, node-type, node-type?,
node-type-identifier, node-type-label, node-type-edges,
node-type-convert, node-type-name, node-type-description): Export.
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (%checkers, lint-checker, lint-checker?,
lint-checker-name, lint-checker-description, lint-checker-check):
Export.
|
|
|
|
|
|
|
|
| |
This saves ~10% on 'guix build inkscape -Sd'.
* guix/download.scm (%mirror-file): New variable.
(url-fetch): Remove #:mirrors parameter.
Remove 'mirror-file'; refer to '%mirror-file' instead.
|
|
|
|
|
|
|
| |
Reported by karhunkynsi on #guix.
* guix/scripts/refresh.scm (update-package): Add missing newline in
string literal passed to 'warning'.
|
|
|
|
|
|
|
|
|
| |
This significantly reduces churn in the store. It also reduces run time
of 'guix build inkscape -Sd' by ~10%.
* guix/download.scm (url-fetch)[mirror-file]: New variable.
[builder]: Get URL from the "guix download url" env. var. Get the mirrors
from MIRROR-FILE. Pass #:script-name and #:env-vars to 'gexp->derivation'.
|
|
|
|
|
| |
* guix/gexp.scm (gexp->derivation): Add #:script-name parameter.
* doc/guix.texi (G-Expressions): Document it.
|
|
|
|
|
| |
* guix/monads.scm (define-lift): Turn into a macro that open-codes the result
of its lift.
|
|
|
|
|
|
|
|
| |
* gnu/scripts/import.scm (importers): Add "gem".
* gnu/import/gem.scm: New file.
* gnu/scripts/import/gem.scm: New file.
* Makefile.am (MODULES): Add them.
* guix.texi ("invoking guix import"): Document it.
|