Commit graph

344 commits

Author SHA1 Message Date
Tobias Geerinckx-Rice
071f4e3db3
guix-install.sh: Undo some bugs introduced by shellcheck.
* etc/guix-install.sh: Unquote all file names containing ~root.
2021-11-07 20:09:59 +01:00
Tobias Geerinckx-Rice
8e6989fcaf
bash completion: Complete top-level options.
* etc/completion/bash/guix (_guix_complete_option): Fix operation without a {,sub}command.
(_guix_complete): Call it also when no command is given.
2021-10-31 00:57:07 +02:00
Tobias Geerinckx-Rice
0987a0eba4
bash completion: Don't hard-code "guix" binary name.
* etc/completion/bash/guix (_guix_complete_command):
Use ${COMP_WORDS[0]} instead of hard-coding "guix".
2021-10-31 00:57:07 +02:00
Florian Pelz
2efc7819ce
news: Add 'de' translation.
* etc/news.scm: Add German translation of "guix shell" entry.
2021-10-27 15:39:36 +02:00
Ludovic Courtès
4aa41a37f0
news: Add entry about "guix shell".
* etc/news.scm: Add entry.
2021-10-25 20:11:25 +02:00
Ludovic Courtès
80edb7df65
Add 'guix shell'.
* guix/scripts/shell.scm, tests/guix-shell.sh: New files.
* Makefile.am (MODULES): Add 'shell.scm'.
(SH_TESTS): Add 'tests/guix-shell.sh'.
* guix/scripts/environment.scm (show-environment-options-help): New
procedure.
(show-help): Use it.
(guix-environment*): New procedure.
(guix-environment): Use it.
* po/guix/POTFILES.in: Add it.
* doc/guix.texi (Features): Refer to "guix shell"
(Invoking guix package): Likewise.
(Development): Likewise.
(Invoking guix shell): New node.
(Invoking guix environment): Add deprecation warning.
(Debugging Build Failures): Use 'guix shell' in examples.
(Invoking guix container): Refer to 'guix shell'.
(Invoking guix processes, Virtualization Services): Adjust examples to
use 'guix shell'.
* doc/contributing.texi (Building from Git): Refer to 'guix shell'.
* etc/completion/bash/guix: Handle "shell".
2021-10-25 18:58:18 +02:00
Liliana Marie Prikler
55f6d9e818
etc: completion: Filter gratuitous spaces from available packages.
Tested with:

  guix environment --{ad-hoc,pure} zsh guix bash-completion coreutils -- zsh
  % fpath=(~/guix/etc/completion/zsh $fpath)
  % autoload -U compinit; compinit

* etc/completion/zsh/_guix (_guix_list_available_packages): Remove spaces.

Co-authored-by: Tobias Geerinckx-Rice <me@tobias.gr>
2021-10-24 20:17:05 +02:00
Sarah Morgensen
f8b10932c8
Add git configuration templates to improve diff hunk header detection.
This is a follow-up to commit 9fc8ae4171, which
missed two hunks from <https://issues.guix.gnu.org/50363>.

Reported by hackeryarn on #guix.

* .gitattributes, etc/git/gitconfig: New files.

Signed-off-by: Marius Bakke <marius@gnu.org>
2021-10-14 00:24:34 +02:00
Ludovic Courtès
2ad1ef8446
disarchive-manifest: Provide valid 'version' string.
* etc/disarchive-manifest.scm <top level>: Turn 'version' field into a
string.
2021-10-09 01:02:18 +02:00
Tobias Geerinckx-Rice
ed14bc2984
bash completion: Fix ‘system’ & ‘container’ subcommands.
* etc/completion/bash/guix (_guix_complete): Count words from the
innermost command.
2021-10-03 19:23:49 +02:00
Tobias Geerinckx-Rice
d71cfaea30
bash completion: Complete ‘guix size’ file names.
* etc/completion/bash/guix (_guix_complete): Complete store file names
after the ‘size’ command.
2021-10-03 19:23:49 +02:00
Tobias Geerinckx-Rice
9e3355d2a3
bash completion: Complete ‘guix build’ file names.
* etc/completion/bash/guix
(_guix_complete_available_package_or_store_file): New function.
(_guix_complete): Call it in place of _guix_complete_available_package
after the ‘build’ command.
2021-10-03 19:23:48 +02:00
Tobias Geerinckx-Rice
ee5e4779e2
bash completion: Complete ‘guix weather’ packages.
* etc/completion/bash/guix (_guix_complete): Complete available package
names for ‘guix weather’ when not following ‘-m’.
2021-10-03 19:23:48 +02:00
Tobias Geerinckx-Rice
17f76b209c
bash completion: Append to $COMPREPLY where possible.
_guix_complete is always called with a fresh empty array.

* etc/completion/bash/guix (_guix_complete_command)
(_guix_complete_subcommand, _guix_complete_installed_package)
(_guix_complete_option, _guix_complete_pid): Append to $COMPREPLY rather
than re-assigning.
2021-10-03 19:23:48 +02:00
Tobias Geerinckx-Rice
6fba67df19
bash completion: Consolidate similar $command ‘if’ branches.
* etc/completion/bash/guix (_guix_complete): Combine the ‘upgrade’ and
‘remove’ commands, as well as ‘download’, ‘gc’, and ‘hash’.
2021-10-03 19:23:48 +02:00
Tobias Geerinckx-Rice
e4ed0b3969
guix-install.sh: Don't swallow wget errors.
Using ‘-q’ suppresses *all* stderr output, including errors.

* etc/guix-install.sh (chk_gpg_keyring, guix_get_bin_list, guix_get_bin):
Substitute ‘--no-verbose’ for ‘-q’.

Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-09-29 16:56:40 +02:00
Florian Pelz
4687ee9cac
news: Adapt 'de' translation.
* etc/news.scm: Mention that Guix Home is a "technology preview".
2021-09-29 10:40:45 +02:00
Ludovic Courtès
62180be2ee
news: Mention that Home is a "technology preview".
* etc/news.scm: Mention that Home is a "technology preview".
2021-09-28 15:43:00 +02:00
Florian Pelz
1c1bfe681a
news: Add 'de' translation.
* etc/news.scm: Add German translation of Guix Home entry.
2021-09-27 23:47:53 +02:00
Oleg Pykhalov
6ae4644984
Merge branch 'wip-guix-home' 2021-09-27 17:27:12 +03:00
Andrew Tropin
a2b937984a
news: Add entry about Guix Home.
* etc/news.scm: Add entry.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-27 17:27:02 +03:00
Florian Pelz
d96582f810
news: Add 'de' translation.
* etc/news.scm: Add German translation of 'guix graph -M' entry.
2021-09-23 08:51:48 +02:00
Florian Pelz
84db46783b
news: Add 'de' translation.
* etc/news.scm: Add German translation of fallback to SWH entry.
2021-09-23 08:33:10 +02:00
Ludovic Courtès
09289d0d2b
news: Add entry for Git clone fallback to SWH.
Suggested by zimoun.

* etc/news.scm: Add entry.
2021-09-22 16:14:39 +02:00
Ludovic Courtès
9102512748
news: Add entry for "guix graph -M".
* etc/news.scm: Add entry.
2021-09-21 15:16:20 +02:00
Xinglu Chen
3d15a19874
etc: committer: Amend previous commit if a copyright line was added.
Previously, the script would raise an error if a copyright line was added to a
file in gnu/packages/.  With this change, it will amend the previous commit
whenever a copyright line is added, and add the copyright line to the commit.

* etc/committer.scm.in (add-copyright-line): New procedure.
(main): Check if a copyright line was added and call ‘add-copyright-line’ if
necessary.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-21 15:15:52 +02:00
Thiago Jung Bauermann
5c4fd77097
etc: Add systemd files for running ‘guix gc’ periodically
* etc/guix-gc.service.in: New file.
* etc/guix-gc.timer: Likewise.
* .gitignore: Ignore generated ‘guix-gc.service’.
* nix/local.mk (nodist_systemdservice_DATA): Add ‘guix-gc.service’ and
‘guix-gc.timer’.
(EXTRA_DIST): Add ‘guix-gc.service.in’ and ‘guix-gc.timer’.
* doc/guix.texi (Binary Installation): Mention the new systemd files.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-09-20 14:18:21 +00:00
Ludovic Courtès
98712c14fe
etc: Add 'disarchive-manifest.scm'.
* etc/disarchive-manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2021-09-14 11:50:58 +02:00
Ludovic Courtès
3b758dd22d
etc: Add 'source-manifest.scm'.
* etc/source-manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2021-09-14 11:50:58 +02:00
Noah Evans
a8dd285d5a
zsh completion: Add missing commands and arguments.
* etc/completion/zsh/_guix (_guix_install, _guix_remove, _guix_upgrade):
  New functions.
  (_guix_build, _guix_challenge, _guix_download, _guix_environment,
  _guix_packages, _guix_gc, _guix_hash, _guix_lint, _guix_package,
  _guix_publish, _guix_pull, _guix_refresh, _guix_size, _guix_system):
  Add some of the missing arguments.
  (_guix_cmds): Add missing commands.

Co-authored-by: Brice Waegeneire <brice@waegenei.re>
2021-08-28 17:57:50 +02:00
Sarah Morgensen
80fc776a61
etc/committer: Pass command-line arguments to main.
* etc/committer.scm.in: Call main with command line arguments.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-08-10 17:32:19 +02:00
Sarah Morgensen
73177859bc
etc/committer: Support custom commit messages.
Allow custom change commit messages by supplying a commit message and
optionally a changelog message as arguments.

* etc/committer.scm.in (break-string-with-newlines)
(custom-commit-message): New procedures.
(main)[change-commit-message*]: New sub-procedure. Use them.
(main): Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-08-10 17:32:19 +02:00
Maxime Devos
50c2dcd1c9
etc: committer: Support reading G-expressions.
Some package definitions use G-expressions (see, e.g., chez-scheme).
Import (guix gexp) such that Guile knows how to read those.
Otherwise, an exception such as the following might be raised:

ERROR: In procedure read:
In procedure scm_lreadr: gnu/services/networking.scm:480:16: Unknown # object: #\~

* etc/committer.scm.in: Import (guix gexp).

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2021-08-07 14:01:20 +02:00
Maxim Cournoyer
073904c553
guix-install.sh: Untabify.
* etc/guix-install.sh (sys_create_build_user): Normalize to spaces.
2021-07-14 08:50:22 -04:00
Maxim Cournoyer
4cbe0127a6
guix-install.sh: Prompt for configuring substitutes discovery.
Also ensure prompt_yes_no always print the message with a trailing space,
which is more pleasing to the eye.

* etc/guix-daemon.conf.in <--discover=no>: New guix-daemon option.
* etc/guix-daemon.service.in: Likewise.
* etc/init.d/guix-daemon.in: Likewise.
* etc/openrc/guix-daemon.in: Likewise.
* etc/guix-install.sh (configure_substitute_discovery): New procedure.
(sys_enable_guix_daemon): Ask the user whether automatic substitute discovery
should be enabled.  Set the '--discover' argument accordingly.
(prompt_yes_no): Add a trailing space to the message.
(sys_authorize_build_farms): Remove trailing space from the message argument.
* NEWS (Distribution): Add news.
2021-07-07 23:54:20 -04:00
Hartmut Goebel
7f06567b83
guix-install.sh: No longer export GUIX_PROFILE.
If GUIX_PROFILE is exported here, any subsequent
"source /some/other/profile/etc/profile" will set variables pointing to
"$HOME/.guix-profile" instead of pointing to the sourced profile.

* etc/guix-install.sh (sys_create_init_profile): No longer export GUIX_PROFILE.
2021-07-07 21:25:16 +02:00
Florian Pelz
20dfda3d9e
news: Add 'de' translation.
* etc/news.scm: Add German translation of 'guix pack --format=deb' entry.
2021-06-30 16:02:29 +02:00
Maxim Cournoyer
6396f0c235
news: Add entry for the new 'deb' guix pack format.
* etc/news.scm: Add entry.
2021-06-29 15:01:10 -04:00
Xinglu Chen
d822c59243
etc: snippets: Use ‘hg-file-name’ when origin uses ‘hg-fetch’
Adjust to changes in commit aaafd19bd1.

* etc/snippets/scheme-mode/guix-origin: Use ‘hg-file-name’ instead of
‘string-append’ when ‘method’ for origin is ‘hg-fetch’.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-26 22:45:28 +02:00
Tobias Geerinckx-Rice
fa0dc1229c
bash_completion: Complete options for ‘guix environment’.
Note that there are still plenty of bugs that this series didn't fix,
e.g.:

  $ guix time-machine -- system reconf<Tab>

* etc/completion/bash/guix (_guix_complete): Call _guix_complete_option
if the word at point looks like an option.
2021-06-16 12:13:39 +02:00
Tobias Geerinckx-Rice
dc3ba8c836
bash completion: Complete options for the right command.
* etc/completion/bash/guix (_guix_complete_option): Receive two
arguments and complete the second based on the first, instead
of blindly completing the very last word based on the very first
(sub)command.
(_guix_complete): Adjust both calls.
2021-06-16 12:13:39 +02:00
Tobias Geerinckx-Rice
80a17aae79
bash completion: Really support subcommands.
* etc/completion/bash/guix (_guix_is_option): New function.
(_guix_is_command): Remove function to replace it with simple string
comparison…
(_guix_complete): …here.  Complete the ‘innermost’ command at point.
2021-06-16 12:13:39 +02:00
Tobias Geerinckx-Rice
0b17dc4aae
etc: indent-code.el: Remove any existing tabs.
* etc/indent-code.el (main): Call UNTABIFY on the sexp or entire buffer.
2021-06-12 10:26:02 +02:00
Ludovic Courtès
f9d8206e5b
news: Fix typo.
* etc/news.scm: Remove 'x' introduced by mistake in
dfdcd9d812.
2021-06-08 09:07:36 +02:00
Christopher Baines
26499816a9
etc: Add "bordeaux.guix.gnu.org.pub" public key file.
* etc/substitutes/bordeaux.guix.gnu.org.pub: New file.
* Makefile.am (dist_pkgdata_DATA): Add it.
* guix/self.scm (miscellaneous-files): Add
"share/guix/bordeaux.guix.gnu.org.pub".
2021-06-07 11:31:17 +01:00
Florian Pelz
dfdcd9d812
news: Add 'de' translation.
* etc/news.scm: Add German translation of 'guix import egg' entry.
2021-06-05 13:58:20 +02:00
Xinglu Chen
c78d6c60cf
news: Add entry for 'guix import egg'.
* etc/news.scm: Add entry.
2021-06-03 13:06:52 +02:00
Xinglu Chen
bdc298ecee
import: Add CHICKEN egg importer.
* guix/import/egg.scm: New file.
* guix/scripts/import/egg.scm: New file.
* tests/egg.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Register them.
* po/guix/POTFILES.in: Likewise.
* guix/scripts/import.scm (importers): Add egg importer.
* doc/guix.texi (Invoking guix import, Invoking guix refresh): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-03 13:05:18 +02:00
Marius Bakke
35bd94a492
etc: Add more SELinux permissions for the daemon.
* etc/guix-daemon.cil.in (guix_daemon): Add more permissions, necessary for
garbage collection.
2021-05-22 19:53:17 +02:00
Maxim Cournoyer
b7cbca221f
Merge branch 'version-1.3.0' 2021-05-11 22:42:59 -04:00