doc: Clarify guix shell's DWIM behaviour.

* doc/guix.texi ("Invoking guix shell"): Document the exact behaviour, that is
which flags go together with which file names.
This commit is contained in:
Liliana Marie Prikler 2022-05-08 17:29:06 +02:00
parent 5f77ece508
commit 131acaa28d
No known key found for this signature in database
GPG key ID: 442A84B8C70E2F87

View file

@ -5670,17 +5670,22 @@ before @command{guix shell} was invoked. The next garbage collection
(@pxref{Invoking guix gc}) may clean up packages that were installed in
the environment and that are no longer used outside of it.
As an added convenience, when running from a directory that contains a
@file{manifest.scm} or a @file{guix.scm} file (in this order), possibly
in a parent directory, @command{guix shell} automatically loads the
file---provided the directory is listed in
@file{~/.config/guix/shell-authorized-directories}, and only for
interactive use:
As an added convenience, @command{guix shell} will try to do what you
mean when it is invoked interactively without any other arguments
as in:
@example
guix shell
@end example
If it finds a @file{manifest.scm} in the current working directory or
any of its parents, it uses this manifest as though it was given via @code{--manifest}.
Likewise, if it finds a @file{guix.scm} in the same directories, it uses
it to build a development profile as though both @code{--development}
and @code{--file} were present.
In either case, the file will only be loaded if the directory it
resides in is listed in
@file{~/.config/guix/shell-authorized-directories}.
This provides an easy way to define, share, and enter development
environments.