guix: Fix typos.
* guix/build/kconfig.scm (modify-deconfig): Fix spelling of "abbreviation".
* guix/docker.scm (build-docker-image): Fix spelling of "split".
* guix/scripts/pack.scm (docker-image): Fix spelling of "split".
guix: Fix some misspellings.
Change-Id: Ia036217dadc1624c5f0d59fd44f646d46315c1f3
guix: lint: Check for more misspelled words in descriptions.
* guix/lint.scm (check-description-style)[check-description-typo]: Add
more common misspellings.
Change-Id: I1342c150e8af809ef954fb5d13f65dd3bd8c8cf3
build: glib-or-gtk: Export %glib-or-gtk-build-system-default-modules.
The list of modules used by default was not public, so users of this build
system had to pick between copy&pasting the list, or using
%glib-or-gtk-build-system-modules. The former is sub-optimal, since it is
hard to keep it in sync. The latter is just wrong and leads to basically
fall-backing to gnu-build-system.
The solution is to export the default list giving the users option to use it
directly.
* guix/build-system/glib-or-gtk.scm
(%glib-or-gtk-build-system-default-modules): Renamed from %default-modules.
(define-module): Export it.
(glib-or-gtk-build), (glib-or-gtk-cross-build): Use it.
Change-Id: I331b2a3f0bdc3ce14eb9f2f80605e7873369168d
Signed-off-by: Andreas Enge <andreas@enge.fr>
guix: import: allow empty description
* guix/import/utils.scm (beautify-description)[new-words]: Don't fail
the `match` when the package has an empty description.
Change-Id: I23e9cfeae1da98bb8705fcfc8ff81906d272d72e
read-print: Attempt to indent package arguments less.
* guix/read-print.scm (pretty-print-with-comments): Add an exception to
the rule that values immediately follow keywords, when printing
G-expressions within package arguments.
Change-Id: I214a096701c87ab8bc34ab79e357dcb56e2db334
build/guile-build-system: Fix byte-compilation warnings.
* guix/build/guile-build-system.scm: Hide 'delete' from (guix build utils), to
avoid shadowing the builtin.
(invoke-each): Replace current-processor-count with parallel-job-count. The
former would require importing (ice-9 threads).
Change-Id: I7cde3305b9017bfec52ffe50ed124e21cbdceb25
build/guile: Disable parallel build for now.
Following discussions in bug #74204.
* guix/build-system/guile.scm (guile-build): Add a #:parallel-build? flag,
defaulting to #f for now.
(guile-cross-build): Likewise.
* guix/build/guile-build-system.scm (build): Honor it.
Change-Id: Ibf12ac098e9dcea83da7b9685796e501df606c6c
build/guile-build-system: Remove trailing #t in phases.
* guix/build/guile-build-system.scm (set-locale-path): Delete trailing #t.
(invoke-each, build, install-documentation): Likewise.
Change-Id: I7a0d035b9bef2160856e141642dee70974c571db
import/utils: Wrap terms starting with @ in descriptions.
* tests/import-utils.scm ("beautify-description: escape @stuff"): Add test.
* guix/import/utils.scm (beautify-description): Also wrap terms in @code{...}
that start with an escaped @.
Change-Id: I424f626635b821af6f4c16c97b8724cdaf99de45
import/utils: Escape @ in synopses.
* tests/import-utils.scm ("beautify-synopsis: escape @"): Add tests.
* guix/import/utils.scm (beautify-synopsis): Replace @ with @@.
Change-Id: I011d61687a098b5b50f44c1acd6f0a4eea06e9f0
ssh: Add #:strict-host-key-check? option.
* guix/ssh.scm (open-ssh-session): Add strict-host-key-check? option.
Change-Id: Iae5df5ac8d45033b6b636e9c872f8910d4f6cfe9
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
scripts: style: Only sort packages with string literal name.
* guix/scripts/style.scm (order-packages): Only match string literals.
Change-Id: I48a5976930501c20415b5413966b5294958bc23b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
scripts: style: Sort more kinds of package definitions.
* guix/scripts/style.scm (order-packages): Match comments before package
S-exp. and its fields. Match in let. Match package/inherit.
* tests/guix-style.sh: Add pkg-baz variable and package/inherit to test.
Change-Id: I48a5976930501c20415b5413966b5294958bc23b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
scripts: style: Refactor order-packages.
* guix/scripts/style.scm (order-packages): Combine package-name and
package-version procedures into package-fields.
(format-whole-file): Do not sort copyright headers or module definition.
Change-Id: I5507bf8ed221f7017f972f0e0e64d149bea4854b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
import: crate: Comment out missing dependencies.
* guix/import/crate.scm (package-names->package-inputs): Emit comments.
(make-crate-sexp): Make input into comment if missing.
(crate->guix-package): Take #:mark-missing? argument.
[dependency-name+missing+version+yanked]: Mark as missing. Rename from
dependency-name+version+yanked.
[sort-map-dependencies]: Adjust.
[remove-missing+yanked-info]: Remove missing info. Rename from
remove-yanked-info.
* guix/scripts/import/crate.scm (show-help): Explain --mark-missing.
(%options): Add mark-missing option.
(guix-import-crate): Pass mark-missing option as #:mark-missing?.
* doc/guix.texi (Invoking guix import): Document --mark-missing.
* tests/crate.scm ("crate->guix-package-marks-missing-packages"): Add
test.
Change-Id: I065d394e1c04fdc332b8f7f8b9fcbd87c14c6512
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
scripts: import: crate: show-help: Reformat.
* guix/scripts/import/crate.scm (show-help): Reformat and reword
--allow-yanked message.
Change-Id: I43a50b201be86cd71f6ab51a7161e4009d4918bf
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
docker: Add missing hyphen for ‘tar -cf layer.tar’.
Fixes a bug introduced in 646202bf73f90de4f9b7cc66248b8f8e6e381014
whereby ‘guix pack -f docker --max-layers=8 sed’ would fail with:
tar: You must specify one of the '-Acdtrux', '--delete' or '--test-label' options
* guix/docker.scm (build-docker-image):
Reported-by: Simon Josefsson <simon@josefsson.org>
Change-Id: I8edf4538e7d2964c90e5aac19fa905a8a86d0862
profiles: emacs-subdirs: Avoid building circular lists.
This is a follow-up to e9b13294700de7082ee23aa6e1c17b4a8c8828ec. If
the EMACSNATIVELOADPATH environment variable (by mistake) has duplicated
paths, Emacs fails to start up with a message along the lines of
List contains a loop:
("$HOME/.guix-profile/lib/emacs/native-site-lisp" […] . #2)
To prevent this issue in the face of possibly duplicated search path elements,
use non-destructive methods where possible.
* guix/profiles.scm (emacs-subdirs): Use 'append' rather than 'nconc'.
Change-Id: If646b806f24666b5247850d30d2819c7482c130b
Fixes: Emacs "List contains a loop" <https://issues.guix.gnu.org/75709>
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
grafts: Allow file-like objects in the ‘replacement’ field of <graft>.
This is a followup to and simplification of
3331d675fbf5287e8cbe12af48fb2de14f1ad8bc.
* guix/grafts.scm (graft-derivation/shallow)[mapping]: Wrap origin and
replacement in ‘with-parameters’.
(cumulative-grafts)[finalize-graft]: Remove, and remove its sole user.
* guix/packages.scm (input-graft, input-cross-graft): Add ‘replacement’
straight into the ‘replacement’ field of <graft>.
* tests/packages.scm ("package-grafts, indirect grafts")
("package-grafts, indirect grafts, propagated inputs")
("package-grafts, same replacement twice")
("package-grafts, dependency on several outputs")
("replacement also grafted"): Adjust accordingly.
Suggested-by: David Elsing <david.elsing@posteo.net>
Change-Id: I286fceae53df9d3051137bbca5f944d51d0c92f3