Age | Commit message (Expand) | Author |
2022-09-08 | syscalls: Avoid repeated calls to 'syscall->procedure'....Commit 7df4d3465d305271d4fdf4e6f886a248d63b82c4 and others changed
'mount', 'umount', & co. so they would call 'syscall->procedure' at each
call. This change reverts to the previous behavior, where
'syscall->procedure' is called once.
* guix/build/syscalls.scm (mount, umount, reboot, load-linux-module):
Call 'syscall->procedure' only once.
| Ludovic Courtès |
2022-09-08 | import: gnome: Reject version strings such as "43.alpha"....Reported by Maxim Cournoyer.
This is a followup to 61b63e7fa73be8828af2b36d196c3676c974e119.
* guix/import/gnome.scm (latest-gnome-release)[even-minor-version?]:
Reject VERSION is the minor or micro part is not an integer.
| Ludovic Courtès |
2022-09-08 | search-paths: Tweak $SSL_CERT_DIR comment....* guix/search-paths.scm ($SSL_CERT_DIR): Fix typos and tweak comment.
| Ludovic Courtès |
2022-09-08 | search-paths: Clarify $GUIX_EXTENSIONS_PATH comment....* guix/search-paths.scm ($GUIX_EXTENSIONS_PATH): Clarify comment.
| Ludovic Courtès |
2022-09-08 | search-paths: Remove redundant uses of 'define-public'....* guix/search-paths.scm ($GUIX_EXTENSIONS_PATH, $SSL_CERT_DIR,
$SSL_CERT_FILE): Use 'define', not 'define-public'.
| Ludovic Courtès |
2022-09-07 | guix: platform: Use #false instead of #f....* guix/platform.scm (<platform>): Adapt it.
| Mathieu Othacehe |
2022-09-07 | profiles: Implicitly set GUIX_EXTENSIONS_PATH....* guix/build/profiles.scm (manifest-sexp->inputs+search-paths):
Always return a search path for GUIX_EXTENSIONS_PATH.
* guix/search-paths.scm ($GUIX_EXTENSIONS_PATH): New variable.
This allows Guix to find extensions without any need for users to
set GUIX_EXTENSIONS_PATH manually.
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
| (unmatched-parenthesis |
2022-09-06 | import: gnome: Do not require even minor for two-number version strings....That way, "guix refresh gnome-keyring" will properly return "42.1"
instead of "42.0".
Reported by Maxim Cournoyer.
* guix/import/gnome.scm (latest-gnome-release)[even-minor-version?]:
Tweak for GNOME applications.
| Ludovic Courtès |
2022-09-04 | store: Open daemon connections with SOCK_CLOEXEC....Previously, 'guix shell' for example would leak the socket that's
connected to the daemon.
* guix/store.scm (open-unix-domain-socket, open-inet-socket): Pass
SOCK_CLOEXEC to 'socket'.
* tests/guix-shell.sh: Add test.
| Ludovic Courtès |
2022-09-04 | store: Remove unused variable and 'socket' call....* guix/store.scm (open-inet-socket): Remove unused 'sock' variable.
| Ludovic Courtès |
2022-09-02 | read-print: Improve declaration of integer bases....This is a followup to c3b1cfe76b7038f4030d7d207ffc417fed9a7ead.
* guix/read-print.scm (%symbols-followed-by-octal-integers)
(%symbols-followed-by-hexadecimal-integers): Remove.
* guix/read-print.scm (%integer-forms): New variable.
(integer->string)[form-base, octal?]: New procedures.
Rewrite accordingly.
| Ludovic Courtès |
2022-09-02 | read-print: Define forms for which \n, \t, etc. are not escaped....Previously, the pretty-printer would unconditionally leave everything
but double-quotes and backslashes unescaped when rendering a string.
With this change, the previous behavior only applies to forms listed in
%NATURAL-WHITESPACE-STRING-FORMS.
* guix/read-print.scm (%natural-whitespace-string-forms): New variable.
(printed-string): New procedure.
(pretty-print-with-comments): Use it instead of 'escaped-string'.
* tests/read-print.scm: Add test.
| Ludovic Courtès |
2022-09-01 | read-print: Guess the base to use for integers being printed....Fixes <https://issues.guix.gnu.org/57090>.
Reported by Christopher Rodriguez <yewscion@gmail.com>.
* guix/read-print.scm (%symbols-followed-by-octal-integers)
(%symbols-followed-by-hexadecimal-integers): New variables.
* guix/read-print.scm (integer->string): New procedure.
(pretty-print-with-comments): Use it.
* tests/read-print.scm: Add test.
| Ludovic Courtès |
2022-08-31 | pull: Create a version 3 manifest....This makes the profile readable by older Guix instances. This is a
followup to c9fbd40785a99e13a59d8e530830ce85220a9871.
Fixes <https://issues.guix.gnu.org/57306>.
Reported by Arun Isaac <arunisaac@systemreboot.net>.
* guix/profiles.scm (%manifest-format-version): Export.
* guix/scripts/package.scm (build-and-use-profile): Add #:format-version
and pass it to 'profile-derivation'.
* guix/scripts/pull.scm (build-and-install): Pass #:format-version 3.
| Ludovic Courtès |
2022-08-31 | reconfigure: Use 'current-channels' to obtain provenance data....This reinstates a modified version of
b08439809f0868a74d0bd0e14d45cb3e5dd46a8c, which contained a thinko.
Previously, build-time metadata from (guix config) would be ignored when
available--e.g., when running /run/current-system/profile/bin/guix.
This is a followup to 316fc2acbb112bfa572ae30f95a93bcd56621234.
* guix/scripts/system/reconfigure.scm (check-forward-update): Use
'current-channels' rather than 'current-profile' + 'profile-channels'.
| Ludovic Courtès |
2022-08-30 | scripts: system: Check the image operating-system....* guix/scripts/system.scm (process-action): Check that the provided image has
a defined operating-system.
| Mathieu Othacehe |
2022-08-30 | guix system: Use standard cross and native build options....This change prevents guix system from erroring out with an ugly backtrace
when it's passed an invalid value to the “--system” or “--target”
option. It also adds the “--list-systems” and “--list-targets” options.
The manual section about guix system doesn't mention the “--target” option,
so add it there.
* guix/scripts/system (show-help): Call show-cross-build-options-help and
show-native-build-options-help.
(%options): Remove own implementation of “system” and “target” options and
use the ones in %standard-cross-build-options and
%standard-native-build-options.
* doc/guix.texi (Invoking guix system): Document “--target” option.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
| Thiago Jung Bauermann |
2022-08-30 | Revert "reconfigure: Use 'current-channels' to obtain provenance data."...This fixes <https://issues.guix.gnu.org/57480>.
This reverts commit b08439809f0868a74d0bd0e14d45cb3e5dd46a8c.
| 宋文武 |
2022-08-30 | reconfigure: Use 'current-channels' to obtain provenance data....Previously, build-time metadata from (guix config) would be ignored when
available--e.g., when running /run/current-system/profile/bin/guix.
This is a followup to 316fc2acbb112bfa572ae30f95a93bcd56621234.
* guix/scripts/system/reconfigure.scm (check-forward-update): Use
'current-channels' rather than 'current-profile' + 'profile-channels'.
| Ludovic Courtès |
2022-08-28 | gexp: directory-union: Fix documentation....* guix/gexp.scm (directory-union): Fix documentation.
| Maxim Cournoyer |
2022-08-27 | gnu: scons: Move to (gnu packages build-tools)....* gnu/packages/python-xyz.scm (scons, scons-python2): Move from here ...
* gnu/packages/build-tools.scm (scons, scons-python2): ... to here.
* gnu/packages/direct-connect.scm, gnu/packages/disk.scm,
gnu/packages/game-development.scm, gnu/packages/gps.scm,
gnu/packages/image.scm, gnu/packages/installers.scm, gnu/packages/web.scm,
gnu/packages/xdisorg.scm: Adjust module imports accordingly.
* guix/build-system/scons.scm (default-scons): Likewise.
| Marius Bakke |
2022-08-25 | import/utils: beautify-description: Add case for "Implements"....* guix/import/utils.scm (beautify-description): Add case to transform
sentences beginning with "Implements".
| Ricardo Wurmus |
2022-08-19 | build-system/gnu: Fix docstring....* guix/build-system/gnu.scm (dist-package): Fix docstring.
| Andrew Tropin |
2022-08-16 | ui: Describe package outputs....* guix/ui.scm (package->recutils): Output outputs with their descriptions,
one per line.
* po/packages/Makevars (XGETTEXT_OPTIONS): Add ‘output-synopsis’ as keyword.
| Liliana Marie Prikler |
2022-08-11 | build-system/channel: Correctly handle store file name from (gnu ci)....This is a followup to cf60a0a906440ccb007bae1243c3e0397c3a0aba.
Reported by Mathieu Othacehe <othacehe@gnu.org>.
* guix/build-system/channel.scm (build-channels): Add 'string?' case.
| Ludovic Courtès |
2022-08-10 | read-print: Remove unused procedure....* guix/read-print.scm (combine-vertical-space): Remove.
| Ludovic Courtès |
2022-08-10 | read-print: Report missing closing parens instead of looping....Fixes <https://issues.guix.gnu.org/57093>.
Reported by Mohammed AMAR-BENSABER <renken@shione.net>.
Previously 'read-with-comments' would enter an infinite loop.
* guix/read-print.scm (read-with-comments)[missing-closing-paren-error]:
New procedure.
Call it when 'loop' as called from 'liip' returns EOF.
* tests/read-print.scm ("read-with-comments: missing closing paren"):
New test.
| Ludovic Courtès |
2022-08-10 | ssh: 'open-ssh-session' gracefully handles connection timeouts....* guix/ssh.scm (open-ssh-session): Add case for 'again.
| Ludovic Courtès |
2022-08-10 | gnu: system: file-systems: Add shared flag....* gnu/build/file-systems.scm (mount-flags->bit-mask, mount-file-system):
Handle shared flag.
* gnu/system/file-systems.scm (invalid-file-system-flags): Add shared to known
flags.
* guix/build/syscalls.scm (MS_SHARED): New variable.
* doc/guix.texi (File Systems): Document shared flag.
| Oleg Pykhalov |
2022-08-09 | channels: Consider news files as UTF-8-encoded by default....Partly fixes <https://issues.guix.gnu.org/57039>.
Reported by Pierre-Henry Fröhring <contact@phfrohring.com>.
Previously, news file would be read using the current locale encoding.
This could lead to a test failure in 'tests/channels.scm' (in a test
that expects some Unicode-capable encoding) in case tests were run in a
non-Unicode locale.
* guix/channels.scm (channel-news-for-commit): Make port for NEWS-FILE
UTF-8 by default.
| Ludovic Courtès |
2022-08-09 | tests: git: Write files as UTF-8....* guix/tests/git.scm (populate-git-repository): Add call to
'set-port-encoding!' in 'add' case.
| Ludovic Courtès |
2022-08-09 | channels: Add 'repository->guix-channel'....* guix/channels.scm (repository->guix-channel): New procedure.
* guix/scripts/describe.scm (display-checkout-info): Use it instead of
the (git) interface, and adjust accordingly.
| Ludovic Courtès |
2022-08-09 | build-system/channel: Accept a channel or instance as the source....* guix/build-system/channel.scm (latest-channel-instances*): New
variable.
(build-channels): New procedure, with code formerly in
'channel-build-system', augmented with clauses for when SOURCE is a
channel instance or a channel.
* doc/guix.texi (Build Systems): Adjust accordingly.
| Ludovic Courtès |
2022-08-09 | build-system: Add 'channel-build-system'....* gnu/ci.scm (channel-build-system, channel-source->package): Remove.
* gnu/packages/package-management.scm (channel-source->package): New
procedure, moved from (gnu ci).
* guix/build-system/channel.scm: New file, with code moved from (gnu ci).
* doc/guix.texi (Build Systems): Document it.
| Ludovic Courtès |
2022-08-08 | read-print: Add 'case' and 'cond' special forms....* guix/read-print.scm (%special-forms): Add 'case' and 'cond'.
* tests/read-print.scm: Add tests.
| Ludovic Courtès |
2022-08-08 | read-print: Support printing multi-line comments....* guix/read-print.scm (%not-newline): New variable.
(print-multi-line-comment): New procedure.
(pretty-print-with-comments): Use it.
* tests/read-print.scm ("pretty-print-with-comments, multi-line
comment"): New test.
| Ludovic Courtès |
2022-08-08 | style: Add '--whole-file' option....* guix/scripts/style.scm (format-whole-file): New procedure.
(%options, show-help): Add '--whole-file'.
(guix-style): Honor it.
* tests/guix-style.sh: New file.
* Makefile.am (SH_TESTS): Add it.
* doc/guix.texi (Invoking guix style): Document it.
| Ludovic Courtès |
2022-08-08 | read-print: 'canonicalize-comment' leaves top-level comments unchanged....This lets users use three leading semicolons, for instance, in top-level
comments.
* guix/read-print.scm (canonicalize-comment): Add INDENT parameter and
honor it.
(pretty-print-with-comments): Change default value of #:format-comment.
Call FORMAT-COMMENT with INDENT as the second argument.
* tests/read-print.scm: Adjust test accordingly.
| Ludovic Courtès |
2022-08-08 | read-print: Add code to read and write sequences of expressions/blanks....* guix/read-print.scm (read-with-comments): Add #:blank-line? and honor it.
(read-with-comments/sequence, pretty-print-with-comments/splice): New
procedures.
* tests/read-print.scm (test-pretty-print/sequence): New macro.
Add tests using it.
| Ludovic Courtès |
2022-08-08 | read-print: Recognize page breaks....* guix/read-print.scm (<page-break>, page-break?, page-break)
(char-set:whitespace-sans-page-break): New variables.
(space?): New procedure.
(read-vertical-space): Use it.
(read-until-end-of-line): New procedure.
(read-with-comments): Add #\page case.
(pretty-print-with-comments): Add 'page-break?' case.
* tests/read-print.scm ("read-with-comments: top-level page break"): New
test.
Add round-trip test with page break within an sexp.
| Ludovic Courtès |
2022-08-08 | read-print: Read and render vertical space....* guix/read-print.scm (<vertical-space>, vertical-space?)
(vertical-space, vertical-space-height): New variables.
(combine-vertical-space, canonicalize-vertical-space)
(read-vertical-space): New procedures.
(read-with-comments): Use it in the #\newline case.
(pretty-print-with-comments): Add #:format-vertical-space and honor it.
Add case for 'vertical-space?'.
* guix/scripts/style.scm (format-package-definition): Pass
#:format-vertical-space to 'object->string*'.
* tests/read-print.scm ("read-with-comments: list with blank line")
("read-with-comments: list with multiple blank lines")
("read-with-comments: top-level blank lines")
("pretty-print-with-comments, canonicalize-vertical-space"): New tests.
Add a couple of additional round-trip tests.
| Ludovic Courtès |
2022-08-08 | read-print: Introduce <blank> parent class of <comment>....* guix/read-print.scm (<blank>, blank?): New record type.
(<comment>): Redefine using the record interface.
(read-with-comments, pretty-print-with-comments): Change some uses of
'comment?' to 'blank?'.
* guix/scripts/style.scm (simplify-inputs)[simplify-expressions]: Use
'blank?' instead of 'comment?'.
| Ludovic Courtès |
2022-08-08 | read-print: Expose comment constructor....* guix/read-print.scm (<comment>): Rename constructor to
'string->comment'.
(comment): New procedure.
(read-with-comments, canonicalize-comment): Use 'string->comment'
instead of 'comment'.
| Ludovic Courtès |
2022-08-08 | read-print: Add System and Home special forms....* guix/read-print.scm (%special-forms): Add System and Home forms.
(%newline-forms): Add 'services'.
| Ludovic Courtès |
2022-08-08 | style: Move reader and printer to (guix read-print)....* guix/scripts/style.scm (<comment>, read-with-comments)
(vhashq, %special-forms, %newline-forms, prefix?)
(special-form-lead, newline-form?, escaped-string)
(string-width, canonicalize-comment, pretty-print-with-comments)
(object->string*): Move to...
* guix/read-print.scm: ... here. New file.
* guix/scripts/import.scm: Adjust accordingly.
* tests/style.scm: Move 'test-pretty-print' and tests to...
* tests/read-print.scm: ... here. New file.
* Makefile.am (MODULES): Add 'guix/read-print.scm'.
(SCM_TESTS): Add 'tests/read-print.scm'.
| Ludovic Courtès |
2022-08-08 | lint: Add '-e'....* guix/scripts/lint.scm (show-help, %options): Add '-e'.
(guix-lint): Call 'specification->package' while traversing OPTS. Add
case for 'expression pair. Adjust 'for-each' loop to expect packages.
* doc/guix.texi (Invoking guix lint): Document it.
| Ludovic Courtès |
2022-08-06 | build-system/perl: Support cross-compilation of some Perl packages....* guix/build-system/perl.scm: Add info on cross-compilation.
(lower)[private-keywords]: Remove #:target when cross-compiling.
(lower)[target]: Set.
(host-inputs)[perl]: New entry.
(host-inputs)[(standard-packages)]: Move to ...
(build-inputs)[(standard-packages)]: ... here when cross-compiling.
(build-inputs)[standard-cross-packages]: Add when cross-compiling.
(target-inputs): New entry when cross-compiling.
(build): Use perl-cross-build when cross-compiling.
(perl-cross-build): New procedure.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
| Maxime Devos |
2022-08-05 | guix system: Remove unused 'read-operating-system' procedure....* guix/scripts/system.scm (read-operating-system): Remove.
* gnu/ci.scm: Remove unused (guix scripts system) import.
| Ludovic Courtès |
2022-08-05 | utils: Add target-mips64el?....* guix/utils.scm (target-mips64el?): New function. It detects whether the
target system is mips64el.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Vivien Kraus |
2022-08-05 | utils: Add as-for-target....* guix/utils.scm (as-for-target): New function.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Antero Mejr |