* doc/guix.texi (G-Expressions): Document the use of assume-valid-file-name with
local-file.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I132f78e198cbf3ba2e5a677d671563d753de534c
This commit allows for loading an OCI image tarball before running an
OCI backed Shepherd service. It does so by adding a one shot Shepherd
service to the dependencies of the OCI backed service that at boot runs
docker load on the tarball.
* gnu/services/docker.scm (oci-image): New record;
(lower-oci-image): new variable, lower it;
(string-or-oci-image?): sanitize it;
(oci-container-configuration)[image]: allow also for oci-image records;
(oci-container-shepherd-service): use it;
(%oci-image-loader): new variable.
Change-Id: Ie504f479ea0d47f74b0ec5df9085673ffd3f639d
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/services/docker.scm (exports): Add missing procedures;
(oci-container-service-type)[description]: Docker and OCI images should
mean the same thing;
(oci-container-configuration): clarify field types;
[extra-arguments]: new field;
(oci-sanitize-extra-arguments): sanitize it;
(oci-container-shepherd-service): use it.
* doc/guix.texi: Document it.
Change-Id: I64e9d82c8ae538d59d1c482f23070a880156ddf7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/services/pm.scm
(power-profiles-configuration): New configuration.
(power-profiles-daemon-shepherd-service): New procedure.
(power-profiles-daemon-activation): New variable.
(power-profiles-daemon-service-type): New procedure.
* doc/guix.texi (Power Management Services): Document it.
Change-Id: Ib035d993ed82eec2a43f3ba2b4c92f77e08a0fd7
Signed-off-by: Christopher Baines <mail@cbaines.net>
The field is called changeset, not revision. And the string does not have to
be a number.
* doc/guix.texi (origin Reference): Fix documentation for hg-reference.
Change-Id: Ic622dfc7b44caf42d070cdab8e42808dd96e6d63
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
For some reason, they were missing from the documentation. This commit adds
them including an example of usage.
* doc/guix.texi (origin Reference): Add cvs-fetch and cvs-reference.
Change-Id: I6622a9f70e6d71ed31fbb3d2689df4a6946f8868
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
nixos.wiki was created by a community member a long time ago. It turned out to
be very useful to the community, it became an official service last month
hosted on the NixOS.org domain name. To ease the long term maintainance among
other things.
See more details at https://github.com/NixOS/foundation/issues/113
* doc/guix.texi (Nix service): Change nixos.wiki to wiki.nixos.org.
Change-Id: Ia95074fbfad494e8ceb5c2cdb3faab23f3604882
Signed-off-by: Christopher Baines <mail@cbaines.net>
As of Cuirass commit 9a1452ee021c9f773424961cfeef47ca0b7c5c5a, this option
seems to be unused and kept for back compatibility there.
* gnu/services/cuirass.scm (<cuirass-configuration>): Remove use-substitutes?
field.
(cuirass-shepherd-service): Remove the option.
* doc/guix.texi (Continuous Integration): Remove option documentation.
Change-Id: I933550ce76eecdf918b07891aa8212fd30a7c87e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Currently, "extra-options" is passed to both "cuirass register" and "cuirass
web" processes. This makes it impractical since the extra parameters have to
be intended for and supported by both processes.
* gnu/services/cuirass.scm (<cuirass-configuration>): Add a web-extra-options
field.
(cuirass-shepherd-service): Replace extra-options with web-extra-options for
cuirass web.
* doc/guix.texi (Continuous Integration): Document the changes.
Change-Id: Iba79c559ea8267aaf8f25248f3d18ed7b352cb60
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* guix/scripts/git/authenticate.scm (install-hooks): New procedure.
(guix-git-authenticate): Use it.
* doc/guix.texi (Invoking guix git authenticate): Document it.
Change-Id: I4464a33193186e85b476a12740e54412bd58429c
* guix/scripts/git/authenticate.scm (%default-options): Remove
‘keyring-reference’.
(config-value, configured-introduction, configured-keyring-reference)
(configured?, record-configuration, current-branch): New procedures.
(guix-git-authenticate)[missing-arguments]: New procedure.
Use ‘configured-introduction’ when zero arguments are given.
Use ‘configured-keyring-reference’ when ‘-k’ is not passed. Add call to
‘record-configuration’.
* doc/guix.texi (Invoking guix git authenticate): Document it.
Change-Id: I66e111a83f50407b52da71662629947f83a78bbc
* doc/guix.texi (Using the Configuration System): Fix mention of 'nss-certs'
after the package has been added to '%default-packages' (see
'65e8472a4b6fc6f66871ba0dad518b7d4c63595e').
* doc/guix.texi (Web Services): Fix mention of 'nss-certs' after the package has
been added to '%default-packages' (see
'65e8472a4b6fc6f66871ba0dad518b7d4c63595e').
Change-Id: Iecdecb8deb440cdea224f3e9e7ce54e89dd575a2
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
* doc/guix.texi (Setting Up the Daemon): Use @xref to start sentence.
(Build Systems): Capitalize "python" and start parenthesized reference with
@pxref.
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
Change-Id: I3504d8668d137029f5f76f025108b7023d9b4182
* doc/guix.texi (Guix Home Service): Reword intro. Tweak example to be
closer to reality.
(Declaring the Home Environment): Link to ‘guix-home-service-type’.
(Invoking guix home): Likewise.
Change-Id: I0355a6da9b9a28818eb0738854381671a6a1f652
This patch adds a Guix Home service, which allows for configuring/deploying an
operating-system declaration with an associated home-environment.
* gnu/services/guix.scm: Add guix-home-service and guix-home-shepherd-service
* gnu/home/services/shepherd.scm: Don't attempt to launch user shepherd when
the system shepherd runs guix-home-<user>
* doc/guix.texi: Add documentation for guix-home-service
* gnu/tests/guix.scm: Add a test to verify guix-home-service-type is able to
activate a home environment
Change-Id: Ifbcc0878d934aa4abe34bb2123b5081fb432aa8e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Font-dejavu is (now) an input of fontconfig. Specifying "dejavu sans" makes
generated images reproducible even when other fonts are installed (notably
font-google-noto).
* doc/images/bootstrap-graph.dot,
doc/images/bootstrap-packages.dot,
doc/images/coreutils-bag-graph.dot,
doc/images/coreutils-graph.dot,
doc/images/gcc-core-mesboot0-graph.dot,
doc/images/service-graph.dot,
doc/images/shepherd-graph.dot: Use fontname = "dejavu sans".
* doc/guix.texi (Full-Source Bootstrap): Update gcc-core-mesboot0.dot recipe
accordingly.
Change-Id: If21d7d39d45c66de5bceafb7b825a057d540ee50
doc/guix.texi (Setting Up the Daemon): Remove comma and extra words.
doc/guix.texi (Mail Services): Add definite article to setting. Use
@samp markup on setting.
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
Change-Id: I5b3ef115ec718454db4fc046ea5f77ba9fe50a37
Follow-up to 227e0469db.
* doc/guix.texi (Binary Installation):
Revert wording for installing the Debian package.
Restore how to reproduce the binary tarball.
Restore how to uninstall.
(copying): Add copyright notice for Matthew Trzcinski.
Change-Id: Ib74199e39bd7a50ac58045f2bc47f61fc04eacb9
There should be two spaces between the node name and its description. Found
via 'M-x texinfo-all-menus-update' in Emacs.
Change-Id: I2b17180746f8d97ea5f927b8a504419c087dd5f5
* doc/guix.texi (Installation):
- Move the definition of "foreign distro" out of quotation
- Repeat overwrite warning
- Remove superfluous commentary
* doc/guix.texi (Binary Installation):
- Clarify that installing on a foreign distro has two methods: using
packaged binaries and building from source
- Add cross reference to "Building from Git"
- Move the foreign distro installation instructions out of quotation
- Move directions for 'guix-install.sh' after instructions to use
distribution-specific package managers
- Specify "distributions" as "GNU/Linux distributions"
- Add GnuPG as a requirement for 'guix-install.sh'
- Add comma after "Likewise"
- Remove redundant instructions to use 'guix-install.sh'
- Split the requirements between system requirements for binary
installations, GNU/Linux or GNU/Hurd, and requirements for running
'guix-install.sh'
- Clarify that 'guix-install.sh' guides users through the steps
- Summarize the steps 'guix-install.sh' follows rather than try to
detail them
- Make explicit that the 'guix-install.sh' default is to download
substitutes
- Emphasize that the substitute authorization code is an example and
may need modification
Link: <https://lists.gnu.org/archive/html/guix-devel/2024-03/msg00023.html>
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Until now, ‘channel-build-system’ would assume a single channel, the
‘guix’ channel. This change lets users specify additional channels
using the #:channels parameter.
* guix/build-system/channel.scm (build-channels): Add #:channels and
honor it.
(channel-build-system): In ‘lower’, add #:channels and honor it.
* doc/guix.texi (Build Systems): Document it.
Change-Id: I36c1d19cbeee02a4d1144de089b78df0390774a0
The aim here is to improve the user experience. There's anecdotal evidence
that the network performance for bordeaux is better compared to ci at least
for some users, and I don't know of any issues with rate limiting or access
restriction for bordeaux compared to ci. It also has IPv6 support.
Additionally, bordeaux generally had more substitutes than ci, particularly
for aarch64-linux and armhf-linux. This change will offer a very slight
speedup for those substitutes that only bordeaux has.
Bordeaux has been a default substitute server for nearly 3 years now and I
think this change is overdue. I'm also hopeful that we'll be able to build on
the testing regarding mirrors for bordeaux, and that'll allow potentially
improving the hosting setup (through providing more redundancy) and further
improving substitute fetching for users who currently have issues with
substitute access.
* config-daemon.ac: Switch substitute urls order.
* doc/guix.texi: Ditto.
* etc/guix-install.sh: Ditto.
* gnu/installer/newt/network.scm (wait-service-online): Ditto.
* guix/store.scm (%default-substitute-urls): Ditto.
Change-Id: I4f6d93ae1fc8b03d80b47b18b5749a51f1fde17b
Signed-off-by: Christopher Baines <mail@cbaines.net>
* doc/guix.texi (Invoking guix time-machine): Tweak the note about
packages that may fail to build. Add cross-reference to virtual build
machines.
Change-Id: Ib2a4a28cdca0c8970d0f5327e39b4a21800ea2e1
This is a followup to a26bce55e6.
* doc/guix.texi (Invoking guix time-machine): Update reference to oldest
commit.
Change-Id: Iae3d751d4377de92481276f9f2f31128f85c23c4
* gnu/services/guix.scm (nar-herder-configuration-new-ttl,
nar-herder-cached-compression-configuration-unused-removal-duration,
nar-herder-cached-compression-configuration-ttl,
nar-herder-cached-compression-configuration-new-ttl): New procedure.
(nar-herder-shepherd-services): Handle the new options.
* doc/guix.texi (Guix Services): Document the new nar-herder options.
Change-Id: I161e490221a3ce394e32ada685dca27df60638bb
* doc/guix.texi (Channels): Instead of mentioning just
~/.config/guix/channels.scm, mention channel files in general and link
to “Invoking guix pull”.
Change-Id: Iefb8a2d5ee5d804b2b6319785842fc3a97704495
This is a followup to c1d37d0653.
* doc/guix.texi (Networking Services): Update to mention unroutable
addresses.
Change-Id: I6f62e1f414a3eb7892b2d4cc0d011458bbec7001