Commit graph

2776 commits

Author SHA1 Message Date
Maxim Cournoyer
c1043fd60d
doc: Add a rule of thumb to guide enabling new committers.
* doc/contributing.texi (Commit Access): Introduce a new rule of thumb to
determine if a contributor should be considered to become a committer.
2022-01-31 23:38:52 -05:00
Konrad Hinsen
c328d7fca1
doc: Document --profile option to "guix environment"
* doc/guix.texi (Invoking guix environment): New paragraph.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-02-01 00:24:26 +01:00
Konrad Hinsen
cff54cc47c
doc: Document --profile option to "guix shell"
* doc/guix.texi (Invoking guix shell): New paragraph.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-02-01 00:24:26 +01:00
Christopher Baines
087cdafc9f
services: guix: Add nar-herder-service-type.
* gnu/services/guix.scm (<nar-herder-configuration>): New record type.
(nar-herder-configuration, nar-herder-configuration?,
nar-herder-configuration-package,
nar-herder-configuration-user,
nar-herder-configuration-group,
nar-herder-configuration-mirror
nar-herder-configuration-database
nar-herder-configuration-database-dump
nar-herder-configuration-host
nar-herder-configuration-port
nar-herder-configuration-storage
nar-herder-configuration-storage-limit
nar-herder-configuration-storage-nar-removal-criteria
nar-herder-shepherd-services, nar-herder-activation,
nar-herder-account): New procedures.
(nar-herder-service-type): New variable.
* gnu/tests/guix.scm (%test-nar-herder): New variable.
* doc/guix.texi (Guix Services): Document the new service.
2022-01-31 18:28:16 +00:00
Ludovic Courtès
23ccfd3840
home: 'reconfigure' checks for potential downgrades.
* guix/scripts/home.scm (show-help, %options): Add "--allow-downgrades".
(%default-options): Remove 'build-mode'; add 'validate-reconfigure'.
(perform-action): Add #:validate-reconfigure.  Call
'check-forward-update' when ACTION is 'reconfigure.
(process-action): Pass #:validate-reconfigure to 'perform-action'.
* gnu/home/services.scm (home-provenance): Export.
* doc/guix.texi (Invoking guix home): Document '--allow-downgrades'.
2022-01-28 23:14:44 +01:00
Guix Together
2f21931833
doc: Mention how to remedy "source file ... newer than compiled error".
* doc/contributing.texi (Running Guix Before It Is Installed): Mention
how to remedy "source file ... newer than compiled" error by running
`make -j`.

Co-authored-by: jgart <jgart@dismail.de>
Co-authored-by: Julien Lepiller <julien@lepiller.eu>
Co-authored-by: Ryan Prior <rprior@protonmail.com>
Co-authored-by: Blake Shaw <blake@nonconstructivism.com>
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2022-01-28 10:15:26 +01:00
Guix Together
087ad097da
doc: Explain the use of make clean-go when an ABI mismatch occurs.
* doc/contributing.texi (Building from Git): Adds section on using
make clean-go.

Co-authored-by: jgart <jgart@dismail.de>
Co-authored-by: Julien Lepiller <julien@lepiller.eu>
Co-authored-by: Ryan Prior <rprior@protonmail.com>
Co-authored-by: Blake Shaw <blake@nonconstructivism.com>
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2022-01-28 10:14:56 +01:00
Ludovic Courtès
5543f80df7
doc: Document 'invoke' & co.
* doc/guix.texi (Build Utilities)[Program Invocation]: New subsection.
2022-01-25 23:54:44 +01:00
Ludovic Courtès
d582b39978
build: Require Guile >= 3.0.3.
Fixes <https://issues.guix.gnu.org/53157>.
Reported by Efraim Flashner <efraim@flashner.co.il>.

* configure.ac: Require Guile >= 3.0.3.
* doc/guix.texi (Requirements): Update accordingly.
2022-01-25 23:54:44 +01:00
Ludovic Courtès
a00dff3ac1
doc: Clarify search path bits.
Suggested by Maxime Devos <maximedevos@telenet.be>
and Maxim Cournoyer <maxim.cournoyer@gmail.com>.

* doc/guix.texi (package Reference): Clarify 'native-search-paths'
vs. 'search-paths'.
(Search Paths): Link to it.  Remove unnecessarily "define libxml2".
Reword 'file-pattern' description that said "When true".
2022-01-24 10:38:13 +01:00
Ludovic Courtès
68eda25964
doc: Tweak Guix Home bits.
* doc/guix.texi (Shepherd Home Service): Tweak section name.  Add
intro.
(Invoking guix home): Refer to "guix search".  Use @var where
appropriate.
2022-01-23 23:12:55 +01:00
Ludovic Courtès
3878cf9618
doc: Document search paths.
* doc/guix.texi (package Reference): Link to "Search Paths".
(Invoking guix package): Likewise.
(Build Phases): Mention 'set-paths' phase.
(Search Paths): New node.
2022-01-23 23:03:33 +01:00
Guillaume Le Vaillant
1aa269d1d7
services: guix-publish: Add negative-ttl parameter.
* gnu/services/base.scm (guix-publish-configuration): Add 'negative-ttl'
  field.
  (guix-publish-sheperd-service): Process it.
* doc/guix.texi (Base Services)[guix-publish-service-type]: Add item for
  negative-ttl.
2022-01-20 14:55:19 +01:00
Ludovic Courtès
a27e47f9d1
doc: Normalize language codes in menu URLs.
* doc/build.scm (stylized-html)[build](base-language-url): Add calls to
'normalize'.
2022-01-19 22:07:55 +01:00
Ludovic Courtès
fa580bf3b4
doc: Make the HTML language menu disappear on narrow screens.
* doc/build.scm (stylized-html)[build](navigation-bar): New procedure.
(stylized-html): Use it.
2022-01-19 15:43:25 +01:00
Ludovic Courtès
7eb883b7c2
doc: Add a language menu in the HTML manual.
* doc/build.scm (stylized-html): New procedure.
(html-manual): Use it.
2022-01-18 22:51:08 +01:00
Ludovic Courtès
ee16e4e8da
doc: Factorize 'language-code->native-name'.
* doc/build.scm (localization-helper-module)[content](translate): Add
call to 'setenv' before 'write'.  Remove use of 'with-language'.
(language-code->native-name): New procedure.
(html-manual-indexes)[build](top-level-index): Use it.
2022-01-18 22:51:08 +01:00
Ludovic Courtès
575e52ac2b
daemon: Always default to gzip for log compression.
* nix/libstore/globals.cc (Settings::Settings): Have 'logCompression'
default to COMPRESSION_GZIP unconditionally.
* gnu/services/base.scm (<guix-configuration>)[log-compression]: Default
to 'gzip.
* doc/guix.texi (Invoking guix-daemon, Base Services): Adjust accordingly.
2022-01-18 18:46:51 +01:00
Ludovic Courtès
62fc6fdb4c
doc: Extract (localization) module.
* doc/build.scm (localization-helper-module): New procedure.
(html-manual-indexes)[build]: Use it.  Remove use of GUILE-JSON-3.
2022-01-18 18:46:51 +01:00
Ludovic Courtès
084b76a70a
machine: ssh: Add 'safety-checks?' field.
Fixes <https://issues.guix.gnu.org/52766>.
Reported by Michael Rohleder <mike@rohleder.de>.

* gnu/machine/ssh.scm (<machine-ssh-configuration>)[safety-checks?]: New
field.
(machine-check-file-system-availability): Return the empty list when
'safety-checks?' is false.
(machine-check-initrd-modules): Likewise.
* doc/guix.texi (Invoking guix deploy): Document it.
2022-01-16 23:56:55 +01:00
Leo Famulari
43990c6a29
doc: Fix typo.
Groan.

* doc/guix.texi (Build Environment Setup): Fix typo.
2022-01-16 13:21:25 -05:00
Leo Famulari
72f3334308
doc: Document the dummy $HOME in the build chroot.
This missing documentation reported by Matt <matt@excalamus.com>.

* doc/guix.texi (Build Environment Setup): Document '/homeless-shelter'.
2022-01-16 13:17:22 -05:00
Ludovic Courtès
560fd99061
doc: Remove now unnecessary workaround.
* doc/build.scm (translated-texi-manuals): Turn into an alias
for (@@ (guix self) translated-texi-manuals).
2022-01-15 23:27:34 +01:00
Ludovic Courtès
b0aab0f255
doc: Update "guix shell -D -f" example to new input style.
* doc/environment-gdb.scm: Change to use 'modify-inputs'.
2022-01-14 22:39:24 +01:00
Mathieu Othacehe
2d12ec724e
scripts: system: Rationalize persistency.
Make sure that the images are created with a non volatile root by default and
the vm are created with a volatile root by default. Break the --volatile
option into --volatile-image and --persistent-vm options.

* guix/scripts/system.scm (perform-action): Turn volatile? argument into
volatile-vm-root?.
(show-help): Introduce --volatile-image and --persistent-vm options instead of
--volatile.
(%default-options): Adapt it.
(%options): Handle those options.
(process-action): Honor them.
* doc/guix.texi (Invoking guix system): Adapt it accordingly.
2022-01-14 12:26:07 +01:00
Efraim Flashner
03b45230d4
gnu: bootstrap: Add support for riscv64-linux.
On 7d93b21ab1
    gnu: glibc-for-bootstrap: Update patch.

Run
    ./pre-inst-env guix build --target=riscv64-linux-gnu bootstrap-tarballs

Producing
    /gnu/store/4hdzva9i0wyyfbgj1lmqc1wkk644pv07-bootstrap-tarballs-0

With guix hash -rx
    1nj0fdgj08bbmfny01mp2blv7c3p2iciqh31zmf04ap5s7ygsqlp

* gnu/packages/bootstrap.scm (%bootstrap-executables): Add entries for
riscv64-linux.
(%bootstrap-guile-hash, %bootstrap-coreutils&co, %bootstrap-binutils,
%bootstrap-glibc, %bootstrap-gcc): Add entry for riscv64-linux.
(raw-build-guile3): New procedure.
(make-raw-bag): Use raw-build-guile3 for riscv64-linux.
* guix/packages.scm (%supported-systems): Add riscv64-linux.
(%cuirass-supported-systems): Remove riscv64-linux.
* guix/utils.scm (target-64bit?): Add riscv64-linux.
* m4/guix.m4: Add riscv64-linux as a supported system.
* doc/guix.texi (GNU Distribution): Add riscv64-linux.
2022-01-14 11:41:15 +02:00
Maxim Cournoyer
374fea0f3b
services: Adjust the jami service for the upgraded jami.
* gnu/services/telephony.scm (jami-configuration)[jamid]: Rename libring to
libjami.
* gnu/services/telephony.scm
(jami-configuration->command-line-arguments): Adjust daemon file name.
* gnu/services/telephony.scm (jami-service-type): Adjust doc.
* gnu/tests/telephony.scm (run-jami-test): Check for 'jamid' process, not
'dring'.
* doc/guix.texi (Telephony Services): Adjust doc for the jami-qt to jami and
libring to libjami packages renaming.
2022-01-13 00:57:52 -05:00
Ludovic Courtès
0552dcb294
shell: Cache profiles even when using package specs.
This enables profile caching not just when '-m' or '-f' is used, but
also when package specs are passed on the command line, as in:

  guix shell -D guix git

It also changes profile cache keys to include the system type, which was
previously ignored.

* guix/scripts/shell.scm (options-with-caching)[single-file-for-caching]:
Remove.
Call 'profile-cached-gc-root' instead; adjust to accept two values.
(profile-cache-primary-key): New procedure.
(profile-cache-key): Remove.
(profile-file-cache-key, profile-spec-cache-key): New procedures.
(profile-cached-gc-root): Rewrite to include functionality formally in
'single-file-for-caching', but extend to handle package specs.
* gnu/packages.scm (cache-is-authoritative?): Export.
* guix/transformations.scm (transformation-option-key?): New procedure.
* doc/guix.texi (Invoking guix shell): Move '--rebuild-cache'
documentation to the bottom, just above '--root'.  Explain caching and
how these two options relate to that.
2022-01-11 20:34:59 +01:00
Ludovic Courtès
d064f922b5
doc: Fix typo in 'setuid-program' example.
* doc/guix.texi (Setuid Programs): Fix typo in example.
2022-01-11 20:34:59 +01:00
Tobias Geerinckx-Rice
83abdc8371
doc: Update ‘guix home search’ output sample.
The old output differs greatly from the current one and contains a typo.

* doc/guix.texi (Invoking guix home): Update ‘guix home search’ output
sample.
2022-01-09 21:58:34 +01:00
Tobias Geerinckx-Rice
746e590d4a
doc: Fix typos.
* doc/guix.texi (Home Services, Essential Home Services)
(Shells Home Services): Fix ‘avaliable’ typo, & grammar.
(Using the Configuration System): Fix another typo.
2022-01-09 21:58:34 +01:00
Ludovic Courtès
1b87dc2f2a
doc: Use @lisp and clarify 'setuid-program' examples.
* doc/guix.texi (Setuid Programs): Use @lisp instead of @example.  Add
scope for the 'setuid-programs' field snippet.
2022-01-10 19:31:03 +01:00
Ludovic Courtès
c1aa0ee9bd
guix hash: Allow '-r' as a non-deprecated alias.
This is a followup to 05c962594c.

Discussed at <https://issues.guix.gnu.org/51307#24>.

* guix/scripts/hash.scm (%options): Warn about deprecation for
"--recursive", but not for '-r' as it's a convenient shorthand.  Mention
'--serializer=nar' in the deprecation message.
* doc/guix.texi (Invoking guix hash): Adjust accordingly.
2022-01-10 19:31:02 +01:00
Ludovic Courtès
611989d1d6
doc: Fix typo.
* doc/guix.texi (Invoking guix style): Fix typo.
2022-01-10 19:31:02 +01:00
Ludovic Courtès
c4fe13c294
style: Add '--styling' option.
* guix/scripts/style.scm (format-package-definition): New procedure.
(%options, show-help): Add "--styling".
(%default-options): Add 'styling-procedure'.
(guix-style): Honor it.
* tests/style.scm (with-test-package)
("input labels, 'safe' policy")
("input labels, 'safe' policy, nothing changed")
("input labels, margin comment")
("input labels, margin comment on long list")
("input labels, line comment")
("input labels, modify-inputs and margin comment"): Pass "-S inputs".
* etc/indent-code.el: Remove.
* doc/contributing.texi (Formatting Code): Mention "guix style" instead
of "etc/indent-code.el".
(Submitting Patches): Add item for "guix style".
* doc/guix.texi (Invoking guix style): Document "-S" and update.
2022-01-10 14:59:26 +01:00
zimoun
a2010ac21b
build: julia-build-system: Create 'Project.toml' file when missing.
* guix/build/julia-build-system.scm (link-depot): Create 'Project.toml' file
when missing using data provided by the user.
(julia-create-package-toml): Remove from export.
* doc/guix.texi (Build Systems): Update julia-build-system section.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2022-01-10 15:15:31 +02:00
Tobias Geerinckx-Rice
19a4759cad
doc: Fix some typos.
* doc/guix.texi (Invoking guix hash): Fix a few typos today.

Reported by KarlJoad on #guix, and then we found more.
2022-01-10 00:34:49 +01:00
Julien Lepiller
934b0cdfee
nls: Update translations.
* po/doc/guix-cookbook.fi.po: New file.
* po/doc/guix-manual.fi.po: New file.
* po/doc/local.mk: Add them.
* doc/local.mk: Add them.
* po/guix/fi.po: New file.
* po/guix/LINGUAS: Add it.
2022-01-09 11:35:59 +01:00
Jelle Licht
a1846e9b91
doc: Fix typo.
* doc/guix.texi (Essential Home Services): Fix typo.
2022-01-07 23:07:56 +01:00
Tobias Geerinckx-Rice
2dfbd03a60
doc: Use a better setuid example.
nmtui does not benefit from being setuid.  Oops.

* doc/guix.texi (Setuid Programs): Replace network-manager's /bin/nmtui
with nfs-utils' /sbin/mount.nfs.  Change a @code{} to a @command{}.
2022-01-07 21:45:38 +01:00
Tobias Geerinckx-Rice
0701efb351
doc: Fix typo.
* doc/guix.texi (Build Utilities): Fix typo.

Reported by Mortimer Cladwell <mbcladwell@gmail.com>
2022-01-06 15:17:47 +01:00
Leo Famulari
6a7945971d
doc: Try to clarify the setuid programs examples.
Based on user feedback, the shadow / passwd example was too obscure for those
who aren't familiar with the shadow collection of tools. And it was also
considered confusing for the two examples to use different packages.

* doc/guix.texi (Setuid Programs): Use 'nmtui' in the examples.
2022-01-03 20:20:00 -05:00
Ludovic Courtès
62ab885daa
doc: Avoid (getenv "HOME") in 'machines.scm' example.
Fixes <https://issues.guix.gnu.org/52517>.
Reported by zimoun <zimon.toutoune@gmail.com>.

* doc/guix.texi (Daemon Offload Setup): Avoid misleading (getenv
"HOME") in example.
2022-01-03 19:32:08 +01:00
Ludovic Courtès
4362125033
doc: Document clauses of 'modify-inputs'.
Suggested by Alexander Asteroth <alexander.asteroth@h-brs.de>.

* doc/guix.texi (Defining Package Variants): Document all the supported
clauses of 'modify-inputs'.
2022-01-03 19:32:08 +01:00
Christopher Baines
dfc5d5247f
services: guix-build-coordinator: Fix variable name in agent config.
* gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>): Fix
variable name.
* doc/guix.texi (Guix Services): Update accordingly.
2022-01-02 17:47:36 +00:00
Christopher Baines
1dca8a19ef
gnu: Add guix-build-coordinator/agent-only.
This avoids issues where the coordinator component dependencies (like sqitch
and guile-fibers) make it harder to use the agent.

* gnu/packages/package-management.scm (guix-build-coordinator/agent-only): New
variable.
* gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>): Use
the guix-build-coordinator/agent-only package by default.
* doc/guix.texi (Guix Services): Update accordingly.
2022-01-02 17:00:09 +00:00
Ludovic Courtès
d090e9c37d
transformations: Add '--tune'.
* guix/transformations.scm (tuning-compiler)
(tuned-package, tunable-package?, package-tuning)
(transform-package-tuning)
(build-system-with-tuning-compiler): New procedures.
(%transformations): Add 'tune'.
(%transformation-options): Add "--tune".
* tests/transformations.scm ("options->transformation, tune")
("options->transformations, tune, wrong micro-architecture"): New
tests.
* doc/guix.texi (Package Transformation Options): Document '--tune'.
2022-01-01 15:23:24 +01:00
Ludovic Courtès
671e6a8180
system: Allow 'chfn' to change the user's full name.
Fixes <https://issues.guix.gnu.org/52539>.
Reported by Jacob First <jacob.first@member.fsf.org>.

* gnu/build/accounts.scm (allocate-passwd): Add comment as to why
'real-name' is taken from PREVIOUS.  Add (not system?) to the
condition.
* gnu/system.scm (operating-system-etc-service) <login.defs>: Add
"CHFN_RESTRICT".
* gnu/system.scm (%setuid-programs): Add "chfn".
* gnu/system/pam.scm (base-pam-services): Add "chfn".
* doc/guix.texi (User Accounts): Document it.
2022-01-01 15:10:12 +01:00
Leo Famulari
c7d74a9bcc
doc: cookbook: Update custom kernel guide.
* doc/guix-cookbook.texi (Customizing the Kernel): Adjust to new interface.
2021-12-30 15:58:24 -05:00
Leo Famulari
28b477cb2e
doc: Give a complete example of adding setuid programs.
* doc/guix.texi (Setuid Programs): Give a complete example of how to use
SETUID-PROGRAM.
2021-12-26 22:23:48 -05:00