nls: Update translations.
[jackhill/guix/guix.git] / po / guix / oc.po
index 2a21919..2fbbe9d 100644 (file)
@@ -2,12 +2,12 @@
 # Copyright (C) 2021 the authors of Guix (msgids) and the following authors (msgstr)
 # This file is distributed under the same license as the GNU guix package.
 # Quentin PAGÈS <quentinantonin@free.fr>, 2021.
-#: guix/diagnostics.scm:155
+#: guix/diagnostics.scm:157
 msgid ""
 msgstr ""
 "Project-Id-Version: GNU guix\n"
 "Report-Msgid-Bugs-To: bug-guix@gnu.org\n"
-"POT-Creation-Date: 2021-08-28 19:01+0200\n"
+"POT-Creation-Date: 2022-01-08 15:18+0000\n"
 "PO-Revision-Date: 2021-05-03 02:58+0000\n"
 "Last-Translator: Quentin PAGÈS <quentinantonin@free.fr>\n"
 "Language-Team: Occitan <https://translate.fedoraproject.org/projects/guix/guix/oc/>\n"
@@ -65,7 +65,7 @@ msgstr ""
 msgid "choosing ~a@~a from ~a~%"
 msgstr ""
 
-#: gnu/packages.scm:486 guix/scripts/package.scm:215
+#: gnu/packages.scm:486 guix/scripts/package.scm:216
 #, scheme-format
 msgid "package '~a' has been superseded by '~a'~%"
 msgstr ""
@@ -90,80 +90,80 @@ msgstr ""
 msgid "~a: no value specified for service of type '~a'"
 msgstr ""
 
-#: gnu/services.scm:370
+#: gnu/services.scm:376
 msgid ""
 "Build the operating system top-level directory, which in\n"
 "turn refers to everything the operating system needs: its kernel, initrd,\n"
 "system profile, boot script, and so on."
 msgstr ""
 
-#: gnu/services.scm:400
+#: gnu/services.scm:406
 msgid ""
 "Produce the operating system's boot script, which is spawned\n"
 "by the initrd once the root file system is mounted."
 msgstr ""
 
-#: gnu/services.scm:516
+#: gnu/services.scm:522
 msgid ""
 "Store provenance information about the system in the system\n"
 "itself: the channels used when building the system, and its configuration\n"
 "file, when available."
 msgstr ""
 
-#: gnu/services.scm:599
+#: gnu/services.scm:605
 msgid ""
 "Delete files from @file{/tmp}, @file{/var/run}, and other\n"
 "temporary locations at boot time."
 msgstr ""
 
-#: gnu/services.scm:661
+#: gnu/services.scm:667
 msgid ""
 "Run @dfn{activation} code at boot time and upon\n"
 "@command{guix system reconfigure} completion."
 msgstr ""
 
-#: gnu/services.scm:749
+#: gnu/services.scm:755
 msgid ""
 "Add special files to the root file system---e.g.,\n"
 "@file{/usr/bin/env}."
 msgstr ""
 
-#: gnu/services.scm:772
+#: gnu/services.scm:778
 #, scheme-format
 msgid "duplicate '~a' entry for /etc"
 msgstr ""
 
-#: gnu/services.scm:800
+#: gnu/services.scm:806
 msgid "Populate the @file{/etc} directory."
 msgstr ""
 
-#: gnu/services.scm:840
+#: gnu/services.scm:846
 msgid ""
 "Populate @file{/run/setuid-programs} with the specified\n"
 "executables, making them setuid-root."
 msgstr ""
 
-#: gnu/services.scm:866
+#: gnu/services.scm:872
 msgid ""
 "This is the @dfn{system profile}, available as\n"
 "@file{/run/current-system/profile}.  It contains packages that the sysadmin\n"
 "wants to be globally available to all the system users."
 msgstr ""
 
-#: gnu/services.scm:886
+#: gnu/services.scm:892
 msgid ""
 "Make ``firmware'' files loadable by the operating system\n"
 "kernel.  Firmware may then be uploaded to some of the machine's devices, such\n"
 "as Wifi cards."
 msgstr ""
 
-#: gnu/services.scm:917
+#: gnu/services.scm:923
 msgid ""
 "Register garbage-collector roots---i.e., store items that\n"
 "will not be reclaimed by the garbage collector."
 msgstr ""
 
-#: gnu/services.scm:975
+#: gnu/services.scm:981
 msgid ""
 "Builds the linux-libre kernel profile, containing\n"
 "the kernel itself and any linux-loadable kernel modules.  This can be extended\n"
@@ -171,68 +171,73 @@ msgid ""
 "configuration."
 msgstr ""
 
-#: gnu/services.scm:997
+#: gnu/services.scm:1003
 msgid ""
 "Adds packages and package outputs as modules\n"
 "included in the booted linux-libre profile.  Other services can extend this\n"
 "service type to add particular modules to the set of linux-loadable modules."
 msgstr ""
 
-#: gnu/services.scm:1024
+#: gnu/services.scm:1030
 #, scheme-format
 msgid "no target of type '~a' for service '~a'"
 msgstr ""
 
-#: gnu/services.scm:1050 gnu/services.scm:1169
+#: gnu/services.scm:1056 gnu/services.scm:1175
 #, scheme-format
 msgid "more than one target service of type '~a'"
 msgstr ""
 
-#: gnu/services.scm:1159
+#: gnu/services.scm:1165
 #, scheme-format
 msgid "service of type '~a' not found"
 msgstr ""
 
-#: gnu/system.scm:355
+#: gnu/system.scm:359
 #, scheme-format
 msgid "unrecognized uuid ~a at '~a'~%"
 msgstr ""
 
-#: gnu/system.scm:437
+#: gnu/system.scm:441
 #, scheme-format
 msgid "unrecognized crypto-devices ~S at '~a'~%"
 msgstr ""
 
-#: gnu/system.scm:454
+#: gnu/system.scm:458
 #, scheme-format
 msgid "unrecognized boot parameters at '~a'~%"
 msgstr ""
 
-#: gnu/system.scm:567
+#: gnu/system.scm:571
 #, scheme-format
 msgid "mapped-device '~a' may not be mounted by the bootloader.~%"
 msgstr ""
 
-#: gnu/system.scm:1011
+#: gnu/system.scm:599
+#, scheme-format
+msgid "List elements of the field 'swap-devices' should now use the <swap-space> record, as the old method is deprecated. See \"(guix) operating-system Reference\" for more details.~%"
+msgstr ""
+
+#: gnu/system.scm:1077
 #, scheme-format
 msgid "using a string for file '~a' is deprecated; use 'plain-file' instead~%"
 msgstr ""
 
-#: gnu/system.scm:1027
+#: gnu/system.scm:1093
 #, scheme-format
 msgid "using a monadic value for '~a' is deprecated; use 'plain-file' instead~%"
 msgstr ""
 
-#: gnu/system.scm:1080
+#: gnu/system.scm:1147
 #, scheme-format
 msgid "representing setuid programs with file-like objects is deprecated; use 'setuid-program' instead~%"
 msgstr ""
 
-#: gnu/system.scm:1180
+#: gnu/system.scm:1248
 msgid "missing root file system"
 msgstr ""
 
-#: gnu/system.scm:1256
+#: gnu/system.scm:1324
 #, scheme-format
 msgid "~a: invalid locale name"
 msgstr ""
@@ -263,6 +268,238 @@ msgid ""
 "@code{SIGKILL}."
 msgstr ""
 
+#: gnu/home/services.scm:127
+msgid ""
+"Build the home environment top-level directory,\n"
+"which in turn refers to everything the home environment needs: its\n"
+"packages, configuration files, activation script, and so on."
+msgstr ""
+
+#: gnu/home/services.scm:158
+#, scheme-format
+msgid ""
+"This is the @dfn{home profile} and can be found in\n"
+"@file{~/.guix-home/profile}.  It contains packages and\n"
+"configuration files that the user has declared in their\n"
+"@code{home-environment} record."
+msgstr ""
+
+#: gnu/home/services.scm:180
+#, scheme-format
+msgid "duplicate definition for `~a' environment variable ~%"
+msgstr ""
+
+#: gnu/home/services.scm:242
+msgid "Set the environment variables."
+msgstr ""
+
+#: gnu/home/services.scm:253
+#, scheme-format
+msgid "duplicate '~a' entry for files/"
+msgstr ""
+
+#: gnu/home/services.scm:277
+#, scheme-format
+msgid ""
+"Configuration files for programs that\n"
+"will be put in @file{~/.guix-home/files}."
+msgstr ""
+
+#. TRANSLATORS: 'on-first-login' is the name of a service and
+#. shouldn't be translated
+#: gnu/home/services.scm:308
+msgid ""
+"XDG_RUNTIME_DIR doesn't exists, on-first-login script\n"
+"won't execute anything.  You can check if xdg runtime directory exists,\n"
+"XDG_RUNTIME_DIR variable is set to appropriate value and manually execute the\n"
+"script by running '$HOME/.guix-home/on-first-login'"
+msgstr ""
+
+#: gnu/home/services.scm:328
+msgid ""
+"Run gexps on first user login.  Can be\n"
+"extended with one gexp."
+msgstr ""
+
+#: gnu/home/services.scm:391
+msgid ""
+"Run gexps to activate the current\n"
+"generation of home environment and update the state of the home\n"
+"directory.  @command{activate} script automatically called during\n"
+"reconfiguration or generation switching.  This service can be extended\n"
+"with one gexp, but many times, and all gexps must be idempotent."
+msgstr ""
+
+#: gnu/home/services.scm:472
+#, scheme-format
+msgid ""
+"Comparing ~a and\n"
+"~10t~a..."
+msgstr ""
+
+#: gnu/home/services.scm:474
+#, scheme-format
+msgid " done (~a)\n"
+msgstr ""
+
+#. TRANSLATORS: 'on-change' is the name of a service type, it
+#. probably shouldn't be translated.
+#: gnu/home/services.scm:483
+msgid ""
+"Evaluating on-change gexps.\n"
+"\n"
+msgstr ""
+
+#: gnu/home/services.scm:485
+msgid ""
+"On-change gexps evaluation finished.\n"
+"\n"
+msgstr ""
+
+#: gnu/home/services.scm:499
+msgid ""
+"G-expressions to run if the specified files have changed since the\n"
+"last generation.  The extension should be a list of lists where the\n"
+"first element is the pattern for file or directory that expected to be\n"
+"changed, and the second element is the G-expression to be evaluated."
+msgstr ""
+
+#: gnu/home/services.scm:519
+msgid ""
+"Store provenance information about the home environment in the home\n"
+"environment itself: the channels used when building the home\n"
+"environment, and its configuration file, when available."
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:144
+#, scheme-format
+msgid "Backing up ~a..."
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:147
+#: gnu/home/services/symlink-manager.scm:169
+#: gnu/home/services/symlink-manager.scm:184
+#: gnu/home/services/symlink-manager.scm:215
+#: gnu/home/services/symlink-manager.scm:223
+msgid " done\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:154
+msgid ""
+"Cleaning up symlinks from previous home-environment.\n"
+"\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:158
+msgid ""
+"Cleanup finished.\n"
+"\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:166
+#: gnu/home/services/symlink-manager.scm:182
+#, scheme-format
+msgid "Removing ~a..."
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:172
+#, scheme-format
+msgid "Skipping ~a (not an empty directory)... done\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:187
+#, scheme-format
+msgid "Skipping ~a (not a symlink to store)... done\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:198
+msgid "New symlinks to home-environment will be created soon.\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:200
+#, scheme-format
+msgid ""
+"All conflicting files will go to ~a.\n"
+"\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:210
+#, scheme-format
+msgid "Skipping   ~a (directory already exists)... done\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:213
+#, scheme-format
+msgid "Creating   ~a..."
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:220
+#, scheme-format
+msgid "Symlinking ~a -> ~a..."
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:234
+msgid ""
+" done\n"
+"Finished updating symlinks.\n"
+"\n"
+msgstr ""
+
+#: gnu/home/services/symlink-manager.scm:248
+msgid ""
+"Provide an @code{update-symlinks}\n"
+"script, which creates symlinks to configuration files and directories\n"
+"on every activation.  If an existing file would be overwritten by a\n"
+"symlink, backs up that file first."
+msgstr ""
+
+#: gnu/system/file-systems.scm:135
+#, scheme-format
+msgid "invalid file system mount flag:~{ ~s~}~%"
+msgid_plural "invalid file system mount flags:~{ ~s~}~%"
+msgstr[0] ""
+msgstr[1] ""
+
+#: gnu/system/file-systems.scm:715
+msgid "The store is on a Btrfs subvolume, but the subvolume name is unknown."
+msgstr ""
+
+#: gnu/system/file-systems.scm:719
+msgid "Use the @code{subvol} Btrfs file system option."
+msgstr ""
+
+#: gnu/system/image.scm:302
+#, scheme-format
+msgid "Unsupported image type ~a~%."
+msgstr ""
+
+#: gnu/system/image.scm:828
+#, scheme-format
+msgid "~a: no such image type"
+msgstr ""
+
+#: gnu/system/linux-container.scm:80
+msgid ""
+"Provide loopback and networking without actually doing\n"
+"anything.  This service is used by guest systems running in containers, where\n"
+"networking support is provided by the host."
+msgstr ""
+
+#: gnu/system/linux-container.scm:223
+#, scheme-format
+msgid "system container is running as PID ~a~%"
+msgstr ""
+
+#: gnu/system/linux-container.scm:224
+#, scheme-format
+msgid "Run 'sudo guix container exec ~a /run/current-system/profile/bin/bash --login'\n"
+msgstr ""
+
+#: gnu/system/linux-container.scm:226
+#, scheme-format
+msgid "or run 'sudo nsenter -a -t ~a' to get a shell into it.~%"
+msgstr ""
+
 #: gnu/system/mapped-devices.scm:134
 msgid "Map a device node using Linux's device mapper."
 msgstr ""
@@ -290,42 +527,238 @@ msgid ""
 "option of @command{guix system}.\n"
 msgstr ""
 
-#: gnu/system/mapped-devices.scm:251
+#: gnu/system/mapped-devices.scm:257
 #, scheme-format
 msgid "no LUKS partition with UUID '~a'"
 msgstr ""
 
-#: gnu/system/shadow.scm:254
+#: gnu/system/shadow.scm:260
 #, scheme-format
 msgid "the following accounts appear more than once:~{ ~a~}~%"
 msgstr ""
 
-#: gnu/system/shadow.scm:262
+#: gnu/system/shadow.scm:268
 #, scheme-format
 msgid "the following groups appear more than once:~{ ~a~}~%"
 msgstr ""
 
-#: gnu/system/shadow.scm:273
+#: gnu/system/shadow.scm:279
 #, scheme-format
 msgid "supplementary group '~a' of user '~a' is undeclared"
 msgstr ""
 
-#: gnu/system/shadow.scm:283
+#: gnu/system/shadow.scm:289
 #, scheme-format
 msgid "primary group '~a' of user '~a' is undeclared"
 msgstr ""
 
-#: gnu/system/shadow.scm:425
+#: gnu/system/shadow.scm:431
 msgid ""
 "Ensure the specified user accounts and groups exist, as well\n"
 "as each account home directory."
 msgstr ""
 
-#: guix/import/egg.scm:352
+#: guix/import/egg.scm:354
 msgid "Updater for CHICKEN egg packages"
 msgstr ""
 
-#: guix/import/opam.scm:143
+#: guix/import/cpan.scm:346
+#, scheme-format
+msgid "input '~a' of ~a is in Perl core~%"
+msgstr ""
+
+#: guix/import/cpan.scm:359
+msgid "Updater for CPAN packages"
+msgstr ""
+
+#: guix/import/cran.scm:176
+#, scheme-format
+msgid "failed to retrieve list of packages from ~a: ~a (~a)~%"
+msgstr ""
+
+#: guix/import/cran.scm:211
+#, scheme-format
+msgid "~A: hg download failed~%"
+msgstr ""
+
+#: guix/import/cran.scm:255
+#, scheme-format
+msgid "failed to retrieve package information from ~a: ~a (~a)~%"
+msgstr ""
+
+#: guix/import/cran.scm:611
+msgid "couldn't find meta-data for R package"
+msgstr ""
+
+#: guix/import/cran.scm:725
+msgid "Updater for CRAN packages"
+msgstr ""
+
+#: guix/import/cran.scm:732
+msgid "Updater for Bioconductor packages"
+msgstr ""
+
+#: guix/import/elpa.scm:103
+#, scheme-format
+msgid "~A: currently not supported~%"
+msgstr ""
+
+#: guix/import/elpa.scm:115
+#, scheme-format
+msgid "~A: download failed~%"
+msgstr ""
+
+#: guix/import/elpa.scm:270
+#, scheme-format
+msgid "Unsupported MELPA fetcher: ~a, falling back to unstable MELPA source.~%"
+msgstr ""
+
+#: guix/import/elpa.scm:448
+msgid "Updater for ELPA packages"
+msgstr ""
+
+#: guix/import/github.scm:170
+#, scheme-format
+msgid "~a is unreachable (~a)~%"
+msgstr ""
+
+#: guix/import/github.scm:260
+msgid "Updater for GitHub packages"
+msgstr ""
+
+#: guix/import/git.scm:70
+msgid "no valid tags found"
+msgstr ""
+
+#: guix/import/git.scm:77
+msgid "no tags were found"
+msgstr ""
+
+#: guix/import/git.scm:182
+#, scheme-format
+msgid "~a for ~a~%"
+msgstr ""
+
+#: guix/import/git.scm:189
+#, scheme-format
+msgid "failed to fetch Git repository for ~a~%"
+msgstr ""
+
+#: guix/import/git.scm:227
+msgid "Updater for packages hosted on Git repositories"
+msgstr ""
+
+#: guix/import/gnu.scm:118
+#, fuzzy, scheme-format
+#| msgid "~A: package not found for version ~a~%"
+msgid "no GNU package found for ~a"
+msgstr "~A : paquet pas trobat per la version ~a~%"
+
+#: guix/import/gnu.scm:126
+#, scheme-format
+msgid "failed to determine latest release of GNU ~a"
+msgstr ""
+
+#: guix/import/go.scm:569
+#, scheme-format
+msgid "unsupported vcs type '~a' for package '~a'"
+msgstr ""
+
+#: guix/import/go.scm:647
+#, scheme-format
+msgid ""
+"Failed to import package ~s.\n"
+"reason: ~s could not be fetched: HTTP error ~a (~s).\n"
+"This package and its dependencies won't be imported.~%"
+msgstr ""
+
+#: guix/import/go.scm:656
+#, scheme-format
+msgid ""
+"Failed to import package ~s.\n"
+"reason: ~s.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:178
+#, scheme-format
+msgid "In ~a: author names must consist of at least a single character.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:182
+#, scheme-format
+msgid "In ~a: mod names must consist of at least a single character.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:187
+#, scheme-format
+msgid "In ~a: author names and mod names may not contain forward slashes.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:191
+#, scheme-format
+msgid "mod names may not be empty.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:192
+#, scheme-format
+msgid "The name of the author is missing in ~a.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:213
+#, scheme-format
+msgid "~a is ambiguous, presuming ~a (other options include: ~a)~%"
+msgstr ""
+
+#: guix/import/minetest.scm:218
+#, scheme-format
+msgid "No mods with name ~a were found.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:280
+#, scheme-format
+msgid "The package search API doesn't exist anymore.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:423
+#, scheme-format
+msgid "The dependency ~a of ~a has multiple different implementations ~a.~%"
+msgstr ""
+
+#: guix/import/minetest.scm:430
+#, scheme-format
+msgid "The implementation with the highest score will be choosen!~%"
+msgstr ""
+
+#: guix/import/minetest.scm:433
+#, scheme-format
+msgid "The implementation that has been downloaded the most will be choosen!~%"
+msgstr ""
+
+#: guix/import/minetest.scm:437
+#, scheme-format
+msgid "The dependency ~a of ~a does not have any implementation.  It will be ignored!~%"
+msgstr ""
+
+#: guix/import/minetest.scm:451
+#, scheme-format
+msgid "no package metadata for ~a on ContentDB~%"
+msgstr ""
+
+#: guix/import/minetest.scm:454
+#, scheme-format
+msgid "no dependency information for ~a on ContentDB~%"
+msgstr ""
+
+#: guix/import/minetest.scm:457
+#, scheme-format
+msgid "no release of ~a on ContentDB~%"
+msgstr ""
+
+#: guix/import/minetest.scm:514
+msgid "Updater for Minetest packages on ContentDB"
+msgstr ""
+
+#: guix/import/opam.scm:144
 #, scheme-format
 msgid "'~a' is not a valid URI~%"
 msgstr ""
@@ -333,13 +766,46 @@ msgstr ""
 #: guix/import/opam.scm:321
 #, fuzzy, scheme-format
 #| msgid "module ~a not found"
-msgid "package '~a' not found~%"
+msgid "opam: package '~a' not found~%"
 msgstr "modul ~a pas trobat"
 
-#: guix/import/opam.scm:426
+#: guix/import/opam.scm:427
 msgid "Updater for OPAM packages"
 msgstr ""
 
+#: guix/import/pypi.scm:230
+msgid "Could not extract requirement name in spec:"
+msgstr ""
+
+#: guix/import/pypi.scm:290
+#, scheme-format
+msgid "parse-requires.txt reached an unexpected condition on line ~a~%"
+msgstr ""
+
+#: guix/import/pypi.scm:356
+#, scheme-format
+msgid "Failed to extract file: ~a from wheel.~%"
+msgstr ""
+
+#: guix/import/pypi.scm:385
+#, scheme-format
+msgid "Cannot guess requirements from source archive: no requires.txt file found.~%"
+msgstr ""
+
+#: guix/import/pypi.scm:390
+#, scheme-format
+msgid "Unsupported archive format; cannot determine package dependencies from source archive: ~a~%"
+msgstr ""
+
+#: guix/import/pypi.scm:489
+#, scheme-format
+msgid "no source release for pypi package ~a ~a~%"
+msgstr ""
+
+#: guix/import/pypi.scm:554
+msgid "Updater for PyPI packages"
+msgstr ""
+
 #: gnu/installer.scm:214
 msgid "Locale"
 msgstr ""
@@ -423,10 +889,10 @@ msgstr ""
 #: gnu/installer/newt/network.scm:84 gnu/installer/newt/page.scm:309
 #: gnu/installer/newt/page.scm:673 gnu/installer/newt/page.scm:758
 #: gnu/installer/newt/partition.scm:56 gnu/installer/newt/partition.scm:91
-#: gnu/installer/newt/partition.scm:126 gnu/installer/newt/partition.scm:137
-#: gnu/installer/newt/partition.scm:634 gnu/installer/newt/partition.scm:657
-#: gnu/installer/newt/partition.scm:703 gnu/installer/newt/partition.scm:761
-#: gnu/installer/newt/partition.scm:772 gnu/installer/newt/services.scm:110
+#: gnu/installer/newt/partition.scm:126 gnu/installer/newt/partition.scm:141
+#: gnu/installer/newt/partition.scm:638 gnu/installer/newt/partition.scm:661
+#: gnu/installer/newt/partition.scm:707 gnu/installer/newt/partition.scm:765
+#: gnu/installer/newt/partition.scm:776 gnu/installer/newt/services.scm:130
 #: gnu/installer/newt/timezone.scm:63 gnu/installer/newt/user.scm:204
 #: gnu/installer/newt/wifi.scm:206
 msgid "Exit"
@@ -492,7 +958,7 @@ msgstr ""
 
 #: gnu/installer/newt/parameters.scm:55 gnu/installer/newt/keymap.scm:74
 #: gnu/installer/newt/locale.scm:63 gnu/installer/newt/locale.scm:78
-#: gnu/installer/newt/locale.scm:94 gnu/installer/newt/partition.scm:591
+#: gnu/installer/newt/locale.scm:94 gnu/installer/newt/partition.scm:595
 #: gnu/installer/newt/timezone.scm:64
 msgid "Back"
 msgstr ""
@@ -629,9 +1095,9 @@ msgid "Show"
 msgstr ""
 
 #: gnu/installer/newt/page.scm:225 gnu/installer/newt/page.scm:672
-#: gnu/installer/newt/page.scm:757 gnu/installer/newt/partition.scm:454
-#: gnu/installer/newt/partition.scm:633 gnu/installer/newt/partition.scm:656
-#: gnu/installer/newt/partition.scm:695 gnu/installer/newt/user.scm:66
+#: gnu/installer/newt/page.scm:757 gnu/installer/newt/partition.scm:458
+#: gnu/installer/newt/partition.scm:637 gnu/installer/newt/partition.scm:660
+#: gnu/installer/newt/partition.scm:699 gnu/installer/newt/user.scm:66
 #: gnu/installer/newt/user.scm:203
 msgid "OK"
 msgstr ""
@@ -715,225 +1181,233 @@ msgstr ""
 msgid "File-system type"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:146
+#: gnu/installer/newt/partition.scm:150
 msgid "Primary partitions count exceeded."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:147 gnu/installer/newt/partition.scm:152
-#: gnu/installer/newt/partition.scm:157
+#: gnu/installer/newt/partition.scm:151 gnu/installer/newt/partition.scm:156
+#: gnu/installer/newt/partition.scm:161
 msgid "Creation error"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:151
+#: gnu/installer/newt/partition.scm:155
 msgid "Extended partition creation error."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:156
+#: gnu/installer/newt/partition.scm:160
 msgid "Logical partition creation error."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:170
+#: gnu/installer/newt/partition.scm:174
 #, scheme-format
 msgid "Please enter the password for the encryption of partition ~a (label: ~a)."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:172 gnu/installer/newt/wifi.scm:92
+#: gnu/installer/newt/partition.scm:176 gnu/installer/newt/wifi.scm:92
 msgid "Password required"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:177
+#: gnu/installer/newt/partition.scm:181
 #, scheme-format
 msgid "Please confirm the password for the encryption of partition ~a (label: ~a)."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:179 gnu/installer/newt/user.scm:160
+#: gnu/installer/newt/partition.scm:183 gnu/installer/newt/user.scm:160
 msgid "Password confirmation required"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:191 gnu/installer/newt/user.scm:168
+#: gnu/installer/newt/partition.scm:195 gnu/installer/newt/user.scm:168
 msgid "Password mismatch, please try again."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:192 gnu/installer/newt/user.scm:169
+#: gnu/installer/newt/partition.scm:196 gnu/installer/newt/user.scm:169
 msgid "Password error"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:278
+#: gnu/installer/newt/partition.scm:282
 msgid "Please enter the partition gpt name."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:279
+#: gnu/installer/newt/partition.scm:283
 msgid "Partition name"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:309
+#: gnu/installer/newt/partition.scm:313
 msgid "Please enter the encrypted label"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:310
+#: gnu/installer/newt/partition.scm:314
 msgid "Encryption label"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:327
+#: gnu/installer/newt/partition.scm:331
 #, scheme-format
 msgid "Please enter the size of the partition. The maximum size is ~a."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:329
+#: gnu/installer/newt/partition.scm:333
 msgid "Partition size"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:347
+#: gnu/installer/newt/partition.scm:351
 msgid "The percentage can not be superior to 100."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:348 gnu/installer/newt/partition.scm:353
-#: gnu/installer/newt/partition.scm:358
+#: gnu/installer/newt/partition.scm:352 gnu/installer/newt/partition.scm:357
+#: gnu/installer/newt/partition.scm:362
 msgid "Size error"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:352
+#: gnu/installer/newt/partition.scm:356
 msgid "The requested size is incorrectly formatted, or too large."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:357
+#: gnu/installer/newt/partition.scm:361
 msgid "The request size is superior to the maximum size."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:377
+#: gnu/installer/newt/partition.scm:381
 msgid "Please enter the desired mounting point for this partition. Leave this field empty if you don't want to set a mounting point."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:379
+#: gnu/installer/newt/partition.scm:383
 msgid "Mounting point"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:443
+#: gnu/installer/newt/partition.scm:447
 #, scheme-format
 msgid "Creating ~a partition starting at ~a of ~a."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:445
+#: gnu/installer/newt/partition.scm:449
 #, scheme-format
 msgid "You are currently editing partition ~a."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:448
+#: gnu/installer/newt/partition.scm:452
 msgid "Partition creation"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:449
+#: gnu/installer/newt/partition.scm:453
 msgid "Partition edit"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:630
+#: gnu/installer/newt/partition.scm:634
 #, scheme-format
 msgid "Are you sure you want to delete everything on disk ~a?"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:632
+#: gnu/installer/newt/partition.scm:636
 msgid "Delete disk"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:647
+#: gnu/installer/newt/partition.scm:651
 msgid "You cannot delete a free space area."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:648 gnu/installer/newt/partition.scm:655
+#: gnu/installer/newt/partition.scm:652 gnu/installer/newt/partition.scm:659
 msgid "Delete partition"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:653
+#: gnu/installer/newt/partition.scm:657
 #, scheme-format
 msgid "Are you sure you want to delete partition ~a?"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:670
+#: gnu/installer/newt/partition.scm:674
 msgid ""
 "You can change a disk's partition table by selecting it and pressing ENTER. You can also edit a partition by selecting it and pressing ENTER, or remove it by pressing DELETE. To create a new partition, select a free space area and press ENTER.\n"
 "\n"
 "At least one partition must have its mounting point set to '/'."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:676
+#: gnu/installer/newt/partition.scm:680
 #, scheme-format
 msgid "This is the proposed partitioning. It is still possible to edit it or to go back to install menu by pressing the Exit button.~%~%"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:686
+#: gnu/installer/newt/partition.scm:690
 msgid "Guided partitioning"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:687
+#: gnu/installer/newt/partition.scm:691
 msgid "Manual partitioning"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:712
+#: gnu/installer/newt/partition.scm:716
 msgid "No root mount point found."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:713
+#: gnu/installer/newt/partition.scm:717
 msgid "Missing mount point"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:717
+#: gnu/installer/newt/partition.scm:721
 #, scheme-format
 msgid "Cannot read the ~a partition UUID. You may need to format it."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:720
+#: gnu/installer/newt/partition.scm:724
 msgid "Wrong partition format"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:751
+#: gnu/installer/newt/partition.scm:755
 msgid "Guided - using the entire disk"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:752
+#: gnu/installer/newt/partition.scm:756
 msgid "Guided - using the entire disk with encryption"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:753
+#: gnu/installer/newt/partition.scm:757
 msgid "Manual"
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:755
+#: gnu/installer/newt/partition.scm:759
 msgid "Please select a partitioning method."
 msgstr ""
 
-#: gnu/installer/newt/partition.scm:756
+#: gnu/installer/newt/partition.scm:760
 msgid "Partitioning method"
 msgstr ""
 
-#: gnu/installer/newt/services.scm:38
+#: gnu/installer/newt/services.scm:39
 msgid "Please select the desktop environment(s) you wish to install.  If you select multiple desktop environments here, you will be able to choose from them later when you log in."
 msgstr ""
 
-#: gnu/installer/newt/services.scm:41
+#: gnu/installer/newt/services.scm:42
 msgid "Desktop environment"
 msgstr ""
 
-#: gnu/installer/newt/services.scm:58
+#: gnu/installer/newt/services.scm:59
 msgid "You can now select networking services to run on your system."
 msgstr ""
 
-#: gnu/installer/newt/services.scm:60
+#: gnu/installer/newt/services.scm:61
 msgid "Network service"
 msgstr ""
 
-#: gnu/installer/newt/services.scm:80
-msgid "You can now select other services to run on your system."
+#: gnu/installer/newt/services.scm:79
+msgid "You can now select the CUPS printing service to run on your system."
 msgstr ""
 
-#: gnu/installer/newt/services.scm:82
-msgid "Other services"
+#: gnu/installer/newt/services.scm:81
+msgid "Printing and document services"
 msgstr ""
 
-#: gnu/installer/newt/services.scm:95
+#: gnu/installer/newt/services.scm:100
+msgid "Console services"
+msgstr ""
+
+#: gnu/installer/newt/services.scm:101
+msgid "Select miscellaneous services to run on your non-graphical system."
+msgstr ""
+
+#: gnu/installer/newt/services.scm:115
 msgid "Network management"
 msgstr ""
 
-#: gnu/installer/newt/services.scm:98
+#: gnu/installer/newt/services.scm:118
 msgid ""
 "Choose the method to manage network connections.\n"
 "\n"
@@ -1084,89 +1558,97 @@ msgstr ""
 msgid "Wifi"
 msgstr ""
 
-#: gnu/installer/parted.scm:426 gnu/installer/parted.scm:463
+#: gnu/installer/parted.scm:433 gnu/installer/parted.scm:470
 msgid "Free space"
 msgstr ""
 
-#: gnu/installer/parted.scm:552
+#: gnu/installer/parted.scm:559
 #, scheme-format
 msgid "Name: ~a"
 msgstr ""
 
-#: gnu/installer/parted.scm:553 gnu/installer/parted.scm:599
+#: gnu/installer/parted.scm:560 gnu/installer/parted.scm:606
 msgid "None"
 msgstr ""
 
-#: gnu/installer/parted.scm:558
+#: gnu/installer/parted.scm:565
 #, scheme-format
 msgid "Type: ~a"
 msgstr ""
 
-#: gnu/installer/parted.scm:562
+#: gnu/installer/parted.scm:569
 #, scheme-format
 msgid "File system type: ~a"
 msgstr ""
 
-#: gnu/installer/parted.scm:568
+#: gnu/installer/parted.scm:575
 #, scheme-format
 msgid "Bootable flag: ~:[off~;on~]"
 msgstr ""
 
-#: gnu/installer/parted.scm:572
+#: gnu/installer/parted.scm:579
 #, scheme-format
 msgid "ESP flag: ~:[off~;on~]"
 msgstr ""
 
-#: gnu/installer/parted.scm:578
+#: gnu/installer/parted.scm:585
 #, scheme-format
 msgid "Size: ~a"
 msgstr ""
 
-#: gnu/installer/parted.scm:584
+#: gnu/installer/parted.scm:591
 #, scheme-format
 msgid "Encryption: ~:[No~a~;Yes (label '~a')~]"
 msgstr ""
 
-#: gnu/installer/parted.scm:590
+#: gnu/installer/parted.scm:597
 #, scheme-format
 msgid "Format the partition? ~:[No~;Yes~]"
 msgstr ""
 
-#: gnu/installer/parted.scm:596
+#: gnu/installer/parted.scm:603
 #, scheme-format
 msgid "Mount point: ~a"
 msgstr ""
 
-#: gnu/installer/parted.scm:1448
+#: gnu/installer/parted.scm:1466
 #, scheme-format
 msgid "Device ~a is still in use."
 msgstr ""
 
-#: gnu/installer/services.scm:94
+#: gnu/installer/services.scm:95
 msgid "OpenSSH secure shell daemon (sshd)"
 msgstr ""
 
-#: gnu/installer/services.scm:98
+#: gnu/installer/services.scm:99
 msgid "Tor anonymous network router"
 msgstr ""
 
-#: gnu/installer/services.scm:102
+#: gnu/installer/services.scm:103
 msgid "Mozilla NSS certificates, for HTTPS access"
 msgstr ""
 
-#: gnu/installer/services.scm:109
+#: gnu/installer/services.scm:110
+msgid "Network time service (NTP), to set the clock automatically"
+msgstr ""
+
+#: gnu/installer/services.scm:115
+msgid "GPM mouse daemon, to use the mouse on the console"
+msgstr ""
+
+#: gnu/installer/services.scm:121
 msgid "NetworkManager network connection manager"
 msgstr ""
 
-#: gnu/installer/services.scm:114
+#: gnu/installer/services.scm:126
 msgid "Connman network connection manager"
 msgstr ""
 
-#: gnu/installer/services.scm:119
+#: gnu/installer/services.scm:131
 msgid "DHCP client (dynamic IP address assignment)"
 msgstr ""
 
-#: gnu/installer/services.scm:125
+#: gnu/installer/services.scm:137
 msgid "CUPS printing system (no Web interface by default)"
 msgstr ""
 
@@ -1262,20 +1744,20 @@ msgid ""
 "for environment of type '~a'"
 msgstr ""
 
-#: gnu/packages/bootstrap.scm:165
+#: gnu/packages/bootstrap.scm:178
 #, scheme-format
 msgid "could not find bootstrap binary '~a' for system '~a'"
 msgstr ""
 
-#: gnu/packages/bootstrap.scm:476
+#: gnu/packages/bootstrap.scm:492
 msgid "Raw build system with direct store access"
 msgstr ""
 
-#: gnu/packages/bootstrap.scm:484
+#: gnu/packages/bootstrap.scm:500
 msgid "Pre-built Guile for bootstrapping purposes."
 msgstr ""
 
-#: guix/build/utils.scm:715
+#: guix/build/utils.scm:822
 #, scheme-format
 msgid "'~a~{ ~a~}' exited with status ~a; output follows:~%~%~{  ~a~%~}"
 msgstr ""
@@ -1314,7 +1796,8 @@ msgstr ""
 msgid "~A: unrecognized option~%"
 msgstr ""
 
-#: guix/scripts.scm:169
+#: guix/scripts.scm:169 guix/scripts/import.scm:140
+#: guix/scripts/system.scm:1370
 #, scheme-format
 msgid "Did you mean @code{~a}?~%"
 msgstr ""
@@ -1360,8 +1843,8 @@ msgstr ""
 
 #: guix/scripts/build.scm:154 guix/scripts/search.scm:42
 #: guix/scripts/show.scm:41 guix/scripts/lint.scm:112 guix/scripts/edit.scm:48
-#: guix/scripts/size.scm:246 guix/scripts/graph.scm:547
-#: guix/scripts/repl.scm:80
+#: guix/scripts/size.scm:246 guix/scripts/graph.scm:553
+#: guix/scripts/repl.scm:80 guix/scripts/style.scm:500
 msgid ""
 "\n"
 "  -L, --load-path=DIR    prepend DIR to the package module search path"
@@ -1507,15 +1990,15 @@ msgid ""
 msgstr ""
 
 #: guix/scripts/build.scm:355 guix/scripts/pull.scm:119
-#: guix/scripts/pack.scm:1318 guix/scripts/archive.scm:95
-#: guix/scripts/environment.scm:110
+#: guix/scripts/pack.scm:1327 guix/scripts/archive.scm:95
+#: guix/scripts/environment.scm:97
 msgid ""
 "\n"
 "  -s, --system=SYSTEM    attempt to build for SYSTEM--e.g., \"i686-linux\""
 msgstr ""
 
-#: guix/scripts/build.scm:357 guix/scripts/system.scm:1016
-#: guix/scripts/pack.scm:1320 guix/scripts/archive.scm:97
+#: guix/scripts/build.scm:357 guix/scripts/system.scm:1023
+#: guix/scripts/pack.scm:1329 guix/scripts/archive.scm:97
 msgid ""
 "\n"
 "      --target=TRIPLET   cross-build for TRIPLET--e.g., \"armel-linux-gnu\""
@@ -1539,20 +2022,21 @@ msgid ""
 "      --repair           repair the specified items"
 msgstr ""
 
-#: guix/scripts/build.scm:365 guix/scripts/pack.scm:1338
-#: guix/scripts/environment.scm:112
+#: guix/scripts/build.scm:365 guix/scripts/pack.scm:1347
+#: guix/scripts/environment.scm:99
 msgid ""
 "\n"
 "  -r, --root=FILE        make FILE a symlink to the result, and register it\n"
 "                         as a garbage collector root"
 msgstr ""
 
-#: guix/scripts/build.scm:368 guix/scripts/package.scm:481
+#: guix/scripts/build.scm:368 guix/scripts/package.scm:486
 #: guix/scripts/install.scm:37 guix/scripts/remove.scm:36
 #: guix/scripts/upgrade.scm:39 guix/scripts/pull.scm:117
-#: guix/scripts/system.scm:1018 guix/scripts/copy.scm:122
-#: guix/scripts/pack.scm:1343 guix/scripts/deploy.scm:60
-#: guix/scripts/archive.scm:99 guix/scripts/environment.scm:136
+#: guix/scripts/system.scm:1025 guix/scripts/copy.scm:122
+#: guix/scripts/pack.scm:1352 guix/scripts/deploy.scm:60
+#: guix/scripts/archive.scm:99 guix/scripts/environment.scm:123
+#: guix/scripts/home.scm:94
 msgid ""
 "\n"
 "  -v, --verbosity=LEVEL  use the given verbosity LEVEL"
@@ -1571,56 +2055,59 @@ msgid ""
 msgstr ""
 
 #: guix/scripts/build.scm:379 guix/scripts/download.scm:104
-#: guix/scripts/package.scm:499 guix/scripts/install.scm:44
+#: guix/scripts/package.scm:504 guix/scripts/install.scm:44
 #: guix/scripts/remove.scm:41 guix/scripts/upgrade.scm:48
 #: guix/scripts/search.scm:37 guix/scripts/show.scm:36 guix/scripts/gc.scm:88
 #: guix/scripts/git.scm:34 guix/scripts/git/authenticate.scm:110
-#: guix/scripts/hash.scm:65 guix/scripts/import.scm:96
+#: guix/scripts/hash.scm:98 guix/scripts/import.scm:98
 #: guix/scripts/import/minetest.scm:46 guix/scripts/import/cran.scm:49
 #: guix/scripts/pull.scm:125 guix/scripts/substitute.scm:250
-#: guix/scripts/system.scm:1025 guix/scripts/lint.scm:115
-#: guix/scripts/publish.scm:117 guix/scripts/edit.scm:51
-#: guix/scripts/size.scm:249 guix/scripts/graph.scm:552
-#: guix/scripts/challenge.scm:427 guix/scripts/copy.scm:127
-#: guix/scripts/pack.scm:1348 guix/scripts/weather.scm:334
+#: guix/scripts/system.scm:1032 guix/scripts/lint.scm:115
+#: guix/scripts/publish.scm:119 guix/scripts/edit.scm:51
+#: guix/scripts/size.scm:249 guix/scripts/graph.scm:558
+#: guix/scripts/challenge.scm:430 guix/scripts/copy.scm:127
+#: guix/scripts/pack.scm:1357 guix/scripts/weather.scm:336
 #: guix/scripts/describe.scm:96 guix/scripts/processes.scm:301
 #: guix/scripts/deploy.scm:55 guix/scripts/container.scm:35
 #: guix/scripts/container/exec.scm:43 guix/scripts/archive.scm:106
-#: guix/scripts/environment.scm:145 guix/scripts/time-machine.scm:67
-#: guix/scripts/import/cpan.scm:44 guix/scripts/import/crate.scm:50
-#: guix/scripts/import/egg.scm:44 guix/scripts/import/gem.scm:46
-#: guix/scripts/import/gnu.scm:50 guix/scripts/import/go.scm:50
-#: guix/scripts/import/json.scm:52 guix/scripts/import/opam.scm:45
-#: guix/scripts/import/pypi.scm:45 guix/scripts/import/texlive.scm:47
-#: guix/scripts/refresh.scm:186 guix/scripts/repl.scm:83
+#: guix/scripts/environment.scm:149 guix/scripts/home.scm:97
+#: guix/scripts/time-machine.scm:67 guix/scripts/import/cpan.scm:44
+#: guix/scripts/import/crate.scm:50 guix/scripts/import/egg.scm:45
+#: guix/scripts/import/gem.scm:46 guix/scripts/import/gnu.scm:50
+#: guix/scripts/import/go.scm:50 guix/scripts/import/json.scm:52
+#: guix/scripts/import/opam.scm:45 guix/scripts/import/pypi.scm:46
+#: guix/scripts/import/texlive.scm:45 guix/scripts/refresh.scm:187
+#: guix/scripts/repl.scm:83 guix/scripts/shell.scm:67
+#: guix/scripts/style.scm:509
 msgid ""
 "\n"
 "  -h, --help             display this help and exit"
 msgstr ""
 
 #: guix/scripts/build.scm:381 guix/scripts/download.scm:106
-#: guix/scripts/package.scm:501 guix/scripts/install.scm:46
+#: guix/scripts/package.scm:506 guix/scripts/install.scm:46
 #: guix/scripts/remove.scm:43 guix/scripts/upgrade.scm:50
 #: guix/scripts/search.scm:39 guix/scripts/show.scm:38 guix/scripts/gc.scm:90
 #: guix/scripts/git.scm:36 guix/scripts/git/authenticate.scm:112
-#: guix/scripts/hash.scm:67 guix/scripts/import.scm:98
+#: guix/scripts/hash.scm:100 guix/scripts/import.scm:100
 #: guix/scripts/import/minetest.scm:50 guix/scripts/import/cran.scm:55
 #: guix/scripts/pull.scm:127 guix/scripts/substitute.scm:252
-#: guix/scripts/system.scm:1027 guix/scripts/lint.scm:119
-#: guix/scripts/publish.scm:119 guix/scripts/edit.scm:53
-#: guix/scripts/size.scm:251 guix/scripts/graph.scm:554
-#: guix/scripts/challenge.scm:429 guix/scripts/copy.scm:129
-#: guix/scripts/pack.scm:1350 guix/scripts/weather.scm:336
+#: guix/scripts/system.scm:1034 guix/scripts/lint.scm:119
+#: guix/scripts/publish.scm:121 guix/scripts/edit.scm:53
+#: guix/scripts/size.scm:251 guix/scripts/graph.scm:560
+#: guix/scripts/challenge.scm:432 guix/scripts/copy.scm:129
+#: guix/scripts/pack.scm:1359 guix/scripts/weather.scm:338
 #: guix/scripts/describe.scm:98 guix/scripts/processes.scm:303
 #: guix/scripts/deploy.scm:57 guix/scripts/container.scm:37
 #: guix/scripts/container/exec.scm:45 guix/scripts/archive.scm:108
-#: guix/scripts/environment.scm:147 guix/scripts/time-machine.scm:69
-#: guix/scripts/import/cpan.scm:46 guix/scripts/import/crate.scm:52
-#: guix/scripts/import/egg.scm:48 guix/scripts/import/gem.scm:48
-#: guix/scripts/import/gnu.scm:52 guix/scripts/import/json.scm:54
-#: guix/scripts/import/opam.scm:52 guix/scripts/import/pypi.scm:49
-#: guix/scripts/import/texlive.scm:49 guix/scripts/refresh.scm:188
-#: guix/scripts/repl.scm:85
+#: guix/scripts/environment.scm:151 guix/scripts/home.scm:99
+#: guix/scripts/time-machine.scm:69 guix/scripts/import/cpan.scm:46
+#: guix/scripts/import/crate.scm:52 guix/scripts/import/egg.scm:49
+#: guix/scripts/import/gem.scm:48 guix/scripts/import/gnu.scm:52
+#: guix/scripts/import/json.scm:54 guix/scripts/import/opam.scm:52
+#: guix/scripts/import/pypi.scm:50 guix/scripts/import/texlive.scm:47
+#: guix/scripts/refresh.scm:189 guix/scripts/repl.scm:85
+#: guix/scripts/shell.scm:69 guix/scripts/style.scm:511
 msgid ""
 "\n"
 "  -V, --version          display version information and exit"
@@ -1679,19 +2166,19 @@ msgstr ""
 
 #. TRANSLATORS: The goal is to emit "warning:" followed by a short phrase;
 #. "~a" is a placeholder for that phrase.
-#: guix/diagnostics.scm:154
+#: guix/diagnostics.scm:156
 msgid "warning: "
 msgstr ""
 
-#: guix/diagnostics.scm:156
+#: guix/diagnostics.scm:158
 msgid "error: "
 msgstr ""
 
-#: guix/diagnostics.scm:256
+#: guix/diagnostics.scm:258
 msgid "<unknown location>"
 msgstr ""
 
-#: guix/diagnostics.scm:308
+#: guix/diagnostics.scm:310
 #, scheme-format
 msgid "format string got ~a arguments, expected ~a~%"
 msgstr ""
@@ -1701,40 +2188,99 @@ msgstr ""
 msgid "cannot access `~a': ~a~%"
 msgstr ""
 
+#: guix/ci.scm:311
+#, scheme-format
+msgid "could not find available substitutes at ~a~%"
+msgstr ""
+
+#: guix/cve.scm:200
+msgid "invalid CVE feed"
+msgstr ""
+
+#: guix/cve.scm:202
+#, scheme-format
+msgid "unsupported CVE format: '~a'"
+msgstr ""
+
+#: guix/cve.scm:205
+#, scheme-format
+msgid "unsupported CVE data version: '~a'"
+msgstr ""
+
+#: guix/git-authenticate.scm:111
+#, scheme-format
+msgid "commit ~a lacks a signature"
+msgstr ""
+
+#: guix/git-authenticate.scm:119
+#, scheme-format
+msgid "commit ~a has a ~a signature, which is not permitted"
+msgstr ""
+
+#: guix/git-authenticate.scm:137
+#, scheme-format
+msgid "signature verification failed for commit ~a"
+msgstr ""
+
+#: guix/git-authenticate.scm:144
+#, scheme-format
+msgid "could not authenticate commit ~a: key ~a is missing"
+msgstr ""
+
+#: guix/git-authenticate.scm:184
+#, scheme-format
+msgid "commit ~a attempts to remove '.guix-authorizations' file"
+msgstr ""
+
+#: guix/git-authenticate.scm:239
+#, scheme-format
+msgid "commit ~a not signed by an authorized key: ~a"
+msgstr ""
+
+#: guix/git-authenticate.scm:367
+#, scheme-format
+msgid "initial commit ~a is signed by '~a' instead of '~a'"
+msgstr ""
+
+#: guix/gnupg.scm:236
+#, scheme-format
+msgid "Would you like to add this key to keyring '~a'?~%"
+msgstr ""
+
 #. TRANSLATORS: 'modify-phases' is a Scheme syntax
 #. and should not be translated.
-#: guix/lint.scm:189
+#: guix/lint.scm:190
 msgid "incorrect call to ‘modify-phases’"
 msgstr ""
 
 #. TRANSLATORS: See ‘modify-phases’ in the manual.
-#: guix/lint.scm:217
+#: guix/lint.scm:218
 msgid "invalid phase clause"
 msgstr ""
 
-#: guix/lint.scm:264
+#: guix/lint.scm:265
 msgid "name should be longer than a single character"
 msgstr ""
 
-#: guix/lint.scm:269
+#: guix/lint.scm:270
 msgid "name should use hyphens instead of underscores"
 msgstr ""
 
 #. TRANSLATORS: #:tests? and #t are Scheme constants
 #. and must not be translated.
-#: guix/lint.scm:289
+#: guix/lint.scm:290
 msgid "#:tests? must not be explicitly set to #t"
 msgstr ""
 
-#: guix/lint.scm:310
+#: guix/lint.scm:311
 msgid "description should not be empty"
 msgstr ""
 
-#: guix/lint.scm:321
+#: guix/lint.scm:322
 msgid "Texinfo markup in description is invalid"
 msgstr ""
 
-#: guix/lint.scm:331
+#: guix/lint.scm:347
 #, scheme-format
 msgid ""
 "description should not contain ~\n"
@@ -1743,207 +2289,212 @@ msgstr ""
 
 #. TRANSLATORS: '@code' is Texinfo markup and must be kept
 #. as is.
-#: guix/lint.scm:344
+#: guix/lint.scm:360
 msgid "use @code or similar ornament instead of quotes"
 msgstr ""
 
-#: guix/lint.scm:356
+#: guix/lint.scm:372
 msgid "description should start with an upper-case letter or digit"
 msgstr ""
 
-#: guix/lint.scm:374
+#: guix/lint.scm:390
 #, scheme-format
 msgid ""
 "sentences in description should be followed ~\n"
 "by two spaces; possible infraction~p at ~{~a~^, ~}"
 msgstr ""
 
-#: guix/lint.scm:385
+#: guix/lint.scm:401
 msgid "description contains leading whitespace"
 msgstr ""
 
-#: guix/lint.scm:394
+#: guix/lint.scm:410
 msgid "description contains trailing whitespace"
 msgstr ""
 
-#: guix/lint.scm:415
+#: guix/lint.scm:435
 #, scheme-format
 msgid "invalid description: ~s"
 msgstr ""
 
-#: guix/lint.scm:485
+#: guix/lint.scm:506
 #, scheme-format
 msgid "'~a' should probably be a native input"
 msgstr ""
 
-#: guix/lint.scm:500
+#: guix/lint.scm:521
 #, scheme-format
 msgid "'~a' should probably not be an input at all"
 msgstr ""
 
-#: guix/lint.scm:510
+#: guix/lint.scm:532
+#, scheme-format
+msgid "label '~a' does not match package name '~a'"
+msgstr ""
+
+#: guix/lint.scm:562
 #, scheme-format
 msgid "\"bash-minimal\" should be in 'inputs' when '~a' is used"
 msgstr ""
 
-#: guix/lint.scm:564
+#: guix/lint.scm:616
 msgid "no period allowed at the end of the synopsis"
 msgstr ""
 
-#: guix/lint.scm:578
+#: guix/lint.scm:630
 msgid "no article allowed at the beginning of the synopsis"
 msgstr ""
 
-#: guix/lint.scm:587
+#: guix/lint.scm:639
 msgid "synopsis should be less than 80 characters long"
 msgstr ""
 
-#: guix/lint.scm:596
+#: guix/lint.scm:648
 msgid "synopsis should start with an upper-case letter or digit"
 msgstr ""
 
-#: guix/lint.scm:604
+#: guix/lint.scm:656
 msgid "synopsis should not start with the package name"
 msgstr ""
 
-#: guix/lint.scm:618
+#: guix/lint.scm:670
 msgid "Texinfo markup in synopsis is invalid"
 msgstr ""
 
-#: guix/lint.scm:626
+#: guix/lint.scm:678
 msgid "synopsis contains trailing whitespace"
 msgstr ""
 
-#: guix/lint.scm:643
+#: guix/lint.scm:695
 msgid "synopsis should not be empty"
 msgstr ""
 
-#: guix/lint.scm:653
+#: guix/lint.scm:705
 #, scheme-format
 msgid "invalid synopsis: ~s"
 msgstr ""
 
-#: guix/lint.scm:753
+#: guix/lint.scm:805
 #, scheme-format
 msgid "~a: HTTP GET error for ~a: ~a (~s)~%"
 msgstr ""
 
-#: guix/lint.scm:763
+#: guix/lint.scm:815
 #, scheme-format
 msgid "~a: host lookup failure: ~a~%"
 msgstr ""
 
-#: guix/lint.scm:768
+#: guix/lint.scm:820
 #, scheme-format
 msgid "~a: TLS certificate error: ~a"
 msgstr ""
 
-#: guix/lint.scm:773
+#: guix/lint.scm:825
 #, scheme-format
 msgid "~a: TLS error in '~a': ~a~%"
 msgstr ""
 
-#: guix/lint.scm:784 guix/ui.scm:819 guix/scripts/offload.scm:191
+#: guix/lint.scm:836 guix/ui.scm:820 guix/scripts/offload.scm:194
 #, scheme-format
 msgid "~a: ~a~%"
 msgstr ""
 
-#: guix/lint.scm:816
+#: guix/lint.scm:868
 #, scheme-format
 msgid "URI ~a returned suspiciously small file (~a bytes)"
 msgstr ""
 
-#: guix/lint.scm:825
+#: guix/lint.scm:877
 #, scheme-format
 msgid "permanent redirect from ~a to ~a"
 msgstr ""
 
-#: guix/lint.scm:831
+#: guix/lint.scm:883
 #, scheme-format
 msgid "invalid permanent redirect from ~a"
 msgstr ""
 
-#: guix/lint.scm:837 guix/lint.scm:847
+#: guix/lint.scm:889 guix/lint.scm:899
 #, scheme-format
 msgid "URI ~a not reachable: ~a (~s)"
 msgstr ""
 
-#: guix/lint.scm:853
+#: guix/lint.scm:905
 #, scheme-format
 msgid "URI ~a domain not found: ~a"
 msgstr ""
 
-#: guix/lint.scm:859
+#: guix/lint.scm:911
 #, scheme-format
 msgid "URI ~a unreachable: ~a"
 msgstr ""
 
-#: guix/lint.scm:867
+#: guix/lint.scm:919
 #, scheme-format
 msgid "TLS certificate error: ~a"
 msgstr ""
 
-#: guix/lint.scm:894
+#: guix/lint.scm:946
 msgid "invalid value for home page"
 msgstr ""
 
-#: guix/lint.scm:899
+#: guix/lint.scm:951
 #, scheme-format
 msgid "invalid home page URL: ~s"
 msgstr ""
 
-#: guix/lint.scm:936
+#: guix/lint.scm:988
 msgid "file names of patches should start with the package name"
 msgstr ""
 
-#: guix/lint.scm:952
+#: guix/lint.scm:1008
 #, scheme-format
-msgid "~a: file name is too long"
+msgid "~a: file name is too long, which may break 'make dist'"
 msgstr ""
 
-#: guix/lint.scm:973
+#: guix/lint.scm:1029
 #, scheme-format
 msgid "~a: empty patch"
 msgstr ""
 
-#: guix/lint.scm:982
+#: guix/lint.scm:1038
 #, scheme-format
 msgid "~a: patch lacks comment and upstream status"
 msgstr ""
 
-#: guix/lint.scm:1043
+#: guix/lint.scm:1099
 #, scheme-format
 msgid "proposed synopsis: ~s~%"
 msgstr ""
 
-#: guix/lint.scm:1057
+#: guix/lint.scm:1113
 #, scheme-format
 msgid "proposed description:~%     \"~a\"~%"
 msgstr ""
 
-#: guix/lint.scm:1108
+#: guix/lint.scm:1164
 msgid "all the source URIs are unreachable:"
 msgstr ""
 
-#: guix/lint.scm:1137
+#: guix/lint.scm:1193
 msgid "the source file name should contain the package name"
 msgstr ""
 
-#: guix/lint.scm:1149
+#: guix/lint.scm:1205
 msgid "the source URI should not be an autogenerated tarball"
 msgstr ""
 
-#: guix/lint.scm:1173
+#: guix/lint.scm:1229
 #, scheme-format
 msgid "URL should be 'mirror://~a/~a'"
 msgstr ""
 
-#: guix/lint.scm:1213
+#: guix/lint.scm:1269
 #, scheme-format
 msgid "while accessing '~a'"
 msgstr ""
 
-#: guix/lint.scm:1220
+#: guix/lint.scm:1276
 #, scheme-format
 msgid "URL should be '~a'"
 msgstr ""
@@ -1951,68 +2502,68 @@ msgstr ""
 #. TRANSLATORS: check and #:tests? are a
 #. Scheme symbol and keyword respectively
 #. and should not be translated.
-#: guix/lint.scm:1248
+#: guix/lint.scm:1304
 msgid "the 'check' phase should respect #:tests?"
 msgstr ""
 
-#: guix/lint.scm:1266 guix/lint.scm:1277 guix/lint.scm:1285
+#: guix/lint.scm:1322 guix/lint.scm:1333 guix/lint.scm:1341
 #, scheme-format
 msgid "failed to create ~a derivation: ~a"
 msgstr ""
 
-#: guix/lint.scm:1271
+#: guix/lint.scm:1327
 #, scheme-format
 msgid "failed to create ~a derivation: ~s"
 msgstr ""
 
-#: guix/lint.scm:1323
+#: guix/lint.scm:1379
 #, scheme-format
 msgid "propagated inputs ~a and ~a collide"
 msgstr ""
 
-#: guix/lint.scm:1347
+#: guix/lint.scm:1403
 msgid "invalid license field"
 msgstr ""
 
-#: guix/lint.scm:1354
+#: guix/lint.scm:1410
 msgid "while retrieving CVE vulnerabilities"
 msgstr ""
 
-#: guix/lint.scm:1397
+#: guix/lint.scm:1453
 #, scheme-format
 msgid "probably vulnerable to ~a"
 msgstr ""
 
-#: guix/lint.scm:1405
+#: guix/lint.scm:1461
 #, scheme-format
 msgid "no updater for ~a"
 msgstr ""
 
-#: guix/lint.scm:1410 guix/lint.scm:1581
+#: guix/lint.scm:1466 guix/lint.scm:1641
 #, scheme-format
 msgid "while retrieving upstream info for '~a'"
 msgstr ""
 
-#: guix/lint.scm:1419
+#: guix/lint.scm:1475
 #, scheme-format
 msgid "can be upgraded to ~a"
 msgstr ""
 
-#: guix/lint.scm:1425
+#: guix/lint.scm:1481
 #, scheme-format
 msgid "updater '~a' failed to find upstream releases"
 msgstr ""
 
-#: guix/lint.scm:1452
+#: guix/lint.scm:1508
 #, scheme-format
 msgid "failed to access Disarchive database at ~a"
 msgstr ""
 
-#: guix/lint.scm:1479
+#: guix/lint.scm:1535
 msgid "Software Heritage rate limit reached; try again later"
 msgstr ""
 
-#: guix/lint.scm:1483
+#: guix/lint.scm:1539
 #, scheme-format
 msgid "'~a' returned ~a"
 msgstr ""
@@ -2020,156 +2571,162 @@ msgstr ""
 #. TRANSLATORS: "Software Heritage" is a proper noun
 #. that must remain untranslated.  See
 #. <https://www.softwareheritage.org>.
-#: guix/lint.scm:1522
+#: guix/lint.scm:1578
 msgid "scheduled Software Heritage archival"
 msgstr ""
 
-#: guix/lint.scm:1528
+#: guix/lint.scm:1584
 msgid "archival rate limit exceeded; try again later"
 msgstr ""
 
-#: guix/lint.scm:1549
+#: guix/lint.scm:1605
 msgid "source not archived on Software Heritage and missing from the Disarchive database"
 msgstr ""
 
-#: guix/lint.scm:1559
+#: guix/lint.scm:1615
 #, scheme-format
-msgid ""
-"\n"
-"Disarchive entry refers to non-existent SWH directory '~a'"
+msgid "Disarchive entry refers to non-existent SWH directory '~a'"
+msgstr ""
+
+#: guix/lint.scm:1624
+msgid "unsupported source type"
 msgstr ""
 
-#: guix/lint.scm:1573
+#: guix/lint.scm:1633
 msgid "while connecting to Software Heritage"
 msgstr ""
 
-#: guix/lint.scm:1590
+#: guix/lint.scm:1650
 #, scheme-format
 msgid "ahead of Stackage LTS version ~a"
 msgstr ""
 
-#: guix/lint.scm:1607
+#: guix/lint.scm:1667
 #, scheme-format
 msgid "tabulation on line ~a, column ~a"
 msgstr ""
 
-#: guix/lint.scm:1619
+#: guix/lint.scm:1679
 #, scheme-format
 msgid "trailing white space on line ~a"
 msgstr ""
 
-#: guix/lint.scm:1633
+#: guix/lint.scm:1693
 #, scheme-format
 msgid "line ~a is way too long (~a characters)"
 msgstr ""
 
-#: guix/lint.scm:1647
+#: guix/lint.scm:1707
 msgid "parentheses feel lonely, move to the previous or next line"
 msgstr ""
 
-#: guix/lint.scm:1724
+#: guix/lint.scm:1784
 msgid "source file not found"
 msgstr ""
 
-#: guix/lint.scm:1736
+#: guix/lint.scm:1796
 msgid "Validate package names"
 msgstr ""
 
-#: guix/lint.scm:1740
+#: guix/lint.scm:1800
 msgid "Check if tests are explicitly enabled"
 msgstr ""
 
-#: guix/lint.scm:1744
+#: guix/lint.scm:1804
 msgid "Validate package descriptions"
 msgstr ""
 
-#: guix/lint.scm:1748
+#: guix/lint.scm:1808
 msgid "Identify inputs that should be native inputs"
 msgstr ""
 
-#: guix/lint.scm:1752
+#: guix/lint.scm:1812
 msgid "Identify inputs that shouldn't be inputs at all"
 msgstr ""
 
-#: guix/lint.scm:1756
+#: guix/lint.scm:1816
+msgid "Identify input labels that do not match package names"
+msgstr ""
+
+#: guix/lint.scm:1820
 msgid "Make sure 'wrap-program' can finds its interpreter."
 msgstr ""
 
 #. TRANSLATORS: <license> is the name of a data type and must not be
 #. translated.
-#: guix/lint.scm:1762
+#: guix/lint.scm:1826
 msgid "Make sure the 'license' field is a <license> or a list thereof"
 msgstr ""
 
-#: guix/lint.scm:1767
+#: guix/lint.scm:1831
 msgid "Make sure tests are only run when requested"
 msgstr ""
 
-#: guix/lint.scm:1771
+#: guix/lint.scm:1835
 msgid "Suggest 'mirror://' URLs"
 msgstr ""
 
-#: guix/lint.scm:1775
+#: guix/lint.scm:1839
 msgid "Validate file names of sources"
 msgstr ""
 
-#: guix/lint.scm:1779
+#: guix/lint.scm:1843
 msgid "Check for autogenerated tarballs"
 msgstr ""
 
-#: guix/lint.scm:1783
+#: guix/lint.scm:1847
 msgid "Report failure to compile a package to a derivation"
 msgstr ""
 
-#: guix/lint.scm:1788
+#: guix/lint.scm:1852
 msgid "Report collisions that would occur due to propagated inputs"
 msgstr ""
 
-#: guix/lint.scm:1793
+#: guix/lint.scm:1857
 msgid "Validate file names and availability of patches"
 msgstr ""
 
-#: guix/lint.scm:1797
+#: guix/lint.scm:1861
 msgid "Validate patch headers"
 msgstr ""
 
-#: guix/lint.scm:1801
+#: guix/lint.scm:1865
 msgid "Look for formatting issues in the source"
 msgstr ""
 
-#: guix/lint.scm:1808
+#: guix/lint.scm:1872
 msgid "Validate package synopses"
 msgstr ""
 
-#: guix/lint.scm:1812
+#: guix/lint.scm:1876
 msgid "Validate synopsis & description of GNU packages"
 msgstr ""
 
-#: guix/lint.scm:1816
+#: guix/lint.scm:1880
 msgid "Validate home-page URLs"
 msgstr ""
 
-#: guix/lint.scm:1820
+#: guix/lint.scm:1884
 msgid "Validate source URLs"
 msgstr ""
 
-#: guix/lint.scm:1824
+#: guix/lint.scm:1888
 msgid "Suggest GitHub URLs"
 msgstr ""
 
-#: guix/lint.scm:1828
+#: guix/lint.scm:1892
 msgid "Check the Common Vulnerabilities and Exposures (CVE) database"
 msgstr ""
 
-#: guix/lint.scm:1833
+#: guix/lint.scm:1897
 msgid "Check the package for new upstream releases"
 msgstr ""
 
-#: guix/lint.scm:1837
+#: guix/lint.scm:1901
 msgid "Ensure source code archival on Software Heritage"
 msgstr ""
 
-#: guix/lint.scm:1841
+#: guix/lint.scm:1905
 msgid "Ensure Haskell packages use Stackage LTS versions"
 msgstr ""
 
@@ -2180,19 +2737,19 @@ msgid ""
 "file name and the hash of its contents.\n"
 msgstr ""
 
-#: guix/scripts/download.scm:91 guix/scripts/hash.scm:53
+#: guix/scripts/download.scm:91 guix/scripts/hash.scm:86
 msgid ""
 "Supported formats: 'base64', 'nix-base32' (default), 'base32',\n"
 "and 'base16' ('hex' and 'hexadecimal' can be used as well).\n"
 msgstr ""
 
-#: guix/scripts/download.scm:94 guix/scripts/hash.scm:60
+#: guix/scripts/download.scm:94 guix/scripts/hash.scm:93
 msgid ""
 "\n"
 "  -f, --format=FMT       write the hash in the given format"
 msgstr ""
 
-#: guix/scripts/download.scm:96 guix/scripts/hash.scm:58
+#: guix/scripts/download.scm:96 guix/scripts/hash.scm:91
 msgid ""
 "\n"
 "  -H, --hash=ALGORITHM   use the given hash ALGORITHM"
@@ -2211,19 +2768,19 @@ msgid ""
 "  -o, --output=FILE      download to FILE"
 msgstr ""
 
-#: guix/scripts/download.scm:126 guix/scripts/hash.scm:97
+#: guix/scripts/download.scm:126 guix/scripts/hash.scm:130
 #, scheme-format
 msgid "unsupported hash format: ~a~%"
 msgstr ""
 
-#: guix/scripts/download.scm:134 guix/scripts/hash.scm:81
+#: guix/scripts/download.scm:134 guix/scripts/hash.scm:114
 #, scheme-format
 msgid "~a: unknown hash algorithm~%"
 msgstr ""
 
-#: guix/scripts/download.scm:171 guix/scripts/package.scm:1082
-#: guix/scripts/pull.scm:758 guix/scripts/publish.scm:1213
-#: guix/scripts/time-machine.scm:123
+#: guix/scripts/download.scm:171 guix/scripts/package.scm:1087
+#: guix/scripts/pull.scm:758 guix/scripts/publish.scm:1260
+#: guix/scripts/discover.scm:136 guix/scripts/time-machine.scm:123
 #, scheme-format
 msgid "~A: extraneous argument~%"
 msgstr ""
@@ -2243,27 +2800,27 @@ msgstr ""
 msgid "~a: download failed~%"
 msgstr ""
 
-#: guix/scripts/package.scm:129
+#: guix/scripts/package.scm:130
 #, scheme-format
 msgid "not removing generation ~a, which is current~%"
 msgstr ""
 
-#: guix/scripts/package.scm:136
+#: guix/scripts/package.scm:137
 #, scheme-format
 msgid "no matching generation~%"
 msgstr ""
 
-#: guix/scripts/package.scm:158
+#: guix/scripts/package.scm:159
 #, scheme-format
 msgid "nothing to be done~%"
 msgstr ""
 
-#: guix/scripts/package.scm:259
+#: guix/scripts/package.scm:260
 #, scheme-format
 msgid "package '~a' no longer exists~%"
 msgstr ""
 
-#: guix/scripts/package.scm:314
+#: guix/scripts/package.scm:315
 #, scheme-format
 msgid ""
 "Consider setting the necessary environment\n"
@@ -2277,7 +2834,7 @@ msgid ""
 "Alternately, see @command{guix package --search-paths -p ~s}."
 msgstr ""
 
-#: guix/scripts/package.scm:356
+#: guix/scripts/package.scm:361
 msgid ""
 ";; This \"manifest\" file can be passed to 'guix package -m' to reproduce\n"
 ";; the content of your profile.  This is \"symbolic\": it only specifies\n"
@@ -2286,44 +2843,44 @@ msgid ""
 ";; See the \"Replicating Guix\" section in the manual.\n"
 msgstr ""
 
-#: guix/scripts/package.scm:388
+#: guix/scripts/package.scm:393
 #, scheme-format
 msgid "no provenance information for this profile~%"
 msgstr ""
 
-#: guix/scripts/package.scm:390
+#: guix/scripts/package.scm:395
 msgid ""
 ";; This channel file can be passed to 'guix pull -C' or to\n"
 ";; 'guix time-machine -C' to obtain the Guix revision that was\n"
 ";; used to populate this profile.\n"
 msgstr ""
 
-#: guix/scripts/package.scm:402
+#: guix/scripts/package.scm:407
 #, scheme-format
 msgid ";; Note: these other commits were also used to install some of the packages in this profile:~%"
 msgstr ""
 
-#: guix/scripts/package.scm:432
+#: guix/scripts/package.scm:437
 msgid ""
 "Usage: guix package [OPTION]...\n"
 "Install, remove, or upgrade packages in a single transaction.\n"
 msgstr ""
 
-#: guix/scripts/package.scm:434
+#: guix/scripts/package.scm:439
 msgid ""
 "\n"
 "  -i, --install PACKAGE ...\n"
 "                         install PACKAGEs"
 msgstr ""
 
-#: guix/scripts/package.scm:437
+#: guix/scripts/package.scm:442
 msgid ""
 "\n"
 "  -e, --install-from-expression=EXP\n"
 "                         install the package EXP evaluates to"
 msgstr ""
 
-#: guix/scripts/package.scm:440
+#: guix/scripts/package.scm:445
 msgid ""
 "\n"
 "  -f, --install-from-file=FILE\n"
@@ -2331,160 +2888,160 @@ msgid ""
 "                         evaluates to"
 msgstr ""
 
-#: guix/scripts/package.scm:444
+#: guix/scripts/package.scm:449
 msgid ""
 "\n"
 "  -r, --remove PACKAGE ...\n"
 "                         remove PACKAGEs"
 msgstr ""
 
-#: guix/scripts/package.scm:447
+#: guix/scripts/package.scm:452
 msgid ""
 "\n"
 "  -u, --upgrade[=REGEXP] upgrade all the installed packages matching REGEXP"
 msgstr ""
 
-#: guix/scripts/package.scm:449
+#: guix/scripts/package.scm:454
 msgid ""
 "\n"
 "  -m, --manifest=FILE    create a new profile generation with the manifest\n"
 "                         from FILE"
 msgstr ""
 
-#: guix/scripts/package.scm:452 guix/scripts/upgrade.scm:41
+#: guix/scripts/package.scm:457 guix/scripts/upgrade.scm:41
 msgid ""
 "\n"
 "      --do-not-upgrade[=REGEXP] do not upgrade any packages matching REGEXP"
 msgstr ""
 
-#: guix/scripts/package.scm:454 guix/scripts/pull.scm:107
+#: guix/scripts/package.scm:459 guix/scripts/pull.scm:107
 msgid ""
 "\n"
 "      --roll-back        roll back to the previous generation"
 msgstr ""
 
-#: guix/scripts/package.scm:456
+#: guix/scripts/package.scm:461
 msgid ""
 "\n"
 "      --search-paths[=KIND]\n"
 "                         display needed environment variable definitions"
 msgstr ""
 
-#: guix/scripts/package.scm:459 guix/scripts/pull.scm:104
+#: guix/scripts/package.scm:464 guix/scripts/pull.scm:104
 msgid ""
 "\n"
 "  -l, --list-generations[=PATTERN]\n"
 "                         list generations matching PATTERN"
 msgstr ""
 
-#: guix/scripts/package.scm:462 guix/scripts/pull.scm:109
+#: guix/scripts/package.scm:467 guix/scripts/pull.scm:109
 msgid ""
 "\n"
 "  -d, --delete-generations[=PATTERN]\n"
 "                         delete generations matching PATTERN"
 msgstr ""
 
-#: guix/scripts/package.scm:465 guix/scripts/pull.scm:112
+#: guix/scripts/package.scm:470 guix/scripts/pull.scm:112
 msgid ""
 "\n"
 "  -S, --switch-generation=PATTERN\n"
 "                         switch to a generation matching PATTERN"
 msgstr ""
 
-#: guix/scripts/package.scm:468
+#: guix/scripts/package.scm:473
 msgid ""
 "\n"
 "      --export-manifest  print a manifest for the chosen profile"
 msgstr ""
 
-#: guix/scripts/package.scm:470
+#: guix/scripts/package.scm:475
 msgid ""
 "\n"
 "      --export-channels  print channels for the chosen profile"
 msgstr ""
 
-#: guix/scripts/package.scm:472 guix/scripts/install.scm:34
+#: guix/scripts/package.scm:477 guix/scripts/install.scm:34
 #: guix/scripts/remove.scm:33 guix/scripts/upgrade.scm:37
 msgid ""
 "\n"
 "  -p, --profile=PROFILE  use PROFILE instead of the user's default profile"
 msgstr ""
 
-#: guix/scripts/package.scm:474
+#: guix/scripts/package.scm:479
 msgid ""
 "\n"
 "      --list-profiles    list the user's profiles"
 msgstr ""
 
-#: guix/scripts/package.scm:477
+#: guix/scripts/package.scm:482
 msgid ""
 "\n"
 "      --allow-collisions do not treat collisions in the profile as an error"
 msgstr ""
 
-#: guix/scripts/package.scm:479
+#: guix/scripts/package.scm:484
 msgid ""
 "\n"
 "      --bootstrap        use the bootstrap Guile to build the profile"
 msgstr ""
 
-#: guix/scripts/package.scm:484
+#: guix/scripts/package.scm:489
 msgid ""
 "\n"
 "  -s, --search=REGEXP    search in synopsis and description using REGEXP"
 msgstr ""
 
-#: guix/scripts/package.scm:486
+#: guix/scripts/package.scm:491
 msgid ""
 "\n"
 "  -I, --list-installed[=REGEXP]\n"
 "                         list installed packages matching REGEXP"
 msgstr ""
 
-#: guix/scripts/package.scm:489
+#: guix/scripts/package.scm:494
 msgid ""
 "\n"
 "  -A, --list-available[=REGEXP]\n"
 "                         list available packages matching REGEXP"
 msgstr ""
 
-#: guix/scripts/package.scm:492
+#: guix/scripts/package.scm:497
 msgid ""
 "\n"
 "      --show=PACKAGE     show details about PACKAGE"
 msgstr ""
 
-#: guix/scripts/package.scm:547
+#: guix/scripts/package.scm:552
 #, scheme-format
 msgid "upgrade regexp '~a' looks like a command-line option~%"
 msgstr ""
 
-#: guix/scripts/package.scm:550
+#: guix/scripts/package.scm:555
 #, scheme-format
 msgid "is this intended?~%"
 msgstr ""
 
-#: guix/scripts/package.scm:600
+#: guix/scripts/package.scm:605
 #, scheme-format
 msgid "~a: unsupported kind of search path~%"
 msgstr ""
 
-#: guix/scripts/package.scm:734
+#: guix/scripts/package.scm:739
 #, scheme-format
 msgid "cannot install non-package object: ~s~%"
 msgstr ""
 
-#: guix/scripts/package.scm:913
+#: guix/scripts/package.scm:918
 #, scheme-format
 msgid "~a~@[@~a~]: package not found~%"
 msgstr ""
 
-#: guix/scripts/package.scm:960 guix/scripts/pull.scm:687
+#: guix/scripts/package.scm:965 guix/scripts/pull.scm:687
 #, scheme-format
 msgid "cannot switch to generation '~a'~%"
 msgstr ""
 
-#: guix/scripts/package.scm:1055
+#: guix/scripts/package.scm:1060
 #, scheme-format
 msgid "nothing to do~%"
 msgstr ""
@@ -2693,8 +3250,8 @@ msgid ""
 "Operate on Git repositories.\n"
 msgstr ""
 
-#: guix/scripts/git.scm:29 guix/scripts/system.scm:940
-#: guix/scripts/container.scm:30
+#: guix/scripts/git.scm:29 guix/scripts/system.scm:945
+#: guix/scripts/container.scm:30 guix/scripts/home.scm:69
 msgid "The valid values for ACTION are:\n"
 msgstr ""
 
@@ -2765,59 +3322,65 @@ msgstr ""
 msgid "wrong number of arguments; expected COMMIT and SIGNER~%"
 msgstr ""
 
-#: guix/scripts/hash.scm:50
+#: guix/scripts/hash.scm:83
 msgid ""
 "Usage: guix hash [OPTION] FILE\n"
 "Return the cryptographic hash of FILE.\n"
 msgstr ""
 
-#: guix/scripts/hash.scm:56
+#: guix/scripts/hash.scm:89
 msgid ""
 "\n"
 "  -x, --exclude-vcs      exclude version control directories"
 msgstr ""
 
-#: guix/scripts/hash.scm:62
+#: guix/scripts/hash.scm:95
 msgid ""
 "\n"
-"  -r, --recursive        compute the hash on FILE recursively"
+"  -S, --serializer=TYPE  compute the hash on FILE according to TYPE serialization"
 msgstr ""
 
-#: guix/scripts/hash.scm:172 guix/ui.scm:391 guix/ui.scm:422 guix/ui.scm:776
-#: guix/ui.scm:826 guix/ui.scm:877
+#: guix/scripts/hash.scm:137
 #, scheme-format
-msgid "~a~%"
+msgid "'--recursive' is deprecated, use '--serializer' instead~%"
 msgstr ""
 
-#: guix/scripts/hash.scm:175 guix/scripts/system.scm:1299
-#: guix/scripts/system.scm:1315 guix/scripts/system.scm:1322
-#: guix/scripts/system.scm:1328 guix/scripts/import/gnu.scm:100
-#: guix/scripts/offload.scm:826 guix/scripts/offload.scm:838
+#: guix/scripts/hash.scm:152
 #, scheme-format
-msgid "wrong number of arguments~%"
+msgid "unsupported serializer type: ~a~%"
+msgstr ""
+
+#: guix/scripts/hash.scm:201
+#, scheme-format
+msgid "~a ~a~%"
 msgstr ""
 
-#: guix/scripts/import.scm:90
+#: guix/scripts/hash.scm:210
+#, scheme-format
+msgid "no arguments specified~%"
+msgstr ""
+
+#: guix/scripts/import.scm:92
 msgid ""
 "Usage: guix import IMPORTER ARGS ...\n"
 "Run IMPORTER with ARGS.\n"
 msgstr ""
 
-#: guix/scripts/import.scm:93
+#: guix/scripts/import.scm:95
 msgid "IMPORTER must be one of the importers listed below:\n"
 msgstr ""
 
-#: guix/scripts/import.scm:110
+#: guix/scripts/import.scm:112
 #, scheme-format
 msgid "guix import: missing importer name~%"
 msgstr ""
 
-#: guix/scripts/import.scm:132
+#: guix/scripts/import.scm:135
 #, scheme-format
 msgid "'~a' import failed~%"
 msgstr ""
 
-#: guix/scripts/import.scm:133
+#: guix/scripts/import.scm:137
 #, scheme-format
 msgid "~a: invalid importer~%"
 msgstr ""
@@ -2829,8 +3392,8 @@ msgid ""
 msgstr ""
 
 #: guix/scripts/import/minetest.scm:48 guix/scripts/import/cran.scm:51
-#: guix/scripts/import/crate.scm:47 guix/scripts/import/egg.scm:46
-#: guix/scripts/import/opam.scm:47 guix/scripts/import/pypi.scm:47
+#: guix/scripts/import/crate.scm:47 guix/scripts/import/egg.scm:47
+#: guix/scripts/import/opam.scm:47 guix/scripts/import/pypi.scm:48
 msgid ""
 "\n"
 "  -r, --recursive        import packages recursively"
@@ -2849,25 +3412,25 @@ msgstr ""
 msgid "~a: not a valid key to sort by~%"
 msgstr ""
 
-#: guix/scripts/import/minetest.scm:115 guix/scripts/import/cran.scm:117
+#: guix/scripts/import/minetest.scm:115 guix/scripts/import/cran.scm:120
 #: guix/scripts/import/elpa.scm:110 guix/scripts/import/cpan.scm:87
-#: guix/scripts/import/crate.scm:103 guix/scripts/import/egg.scm:102
+#: guix/scripts/import/crate.scm:103 guix/scripts/import/egg.scm:106
 #: guix/scripts/import/gem.scm:102 guix/scripts/import/go.scm:121
 #: guix/scripts/import/hackage.scm:158 guix/scripts/import/json.scm:97
-#: guix/scripts/import/opam.scm:111 guix/scripts/import/pypi.scm:102
-#: guix/scripts/import/stackage.scm:130 guix/scripts/import/texlive.scm:96
+#: guix/scripts/import/opam.scm:111 guix/scripts/import/pypi.scm:104
+#: guix/scripts/import/stackage.scm:130 guix/scripts/import/texlive.scm:88
 #, scheme-format
 msgid "too few arguments~%"
 msgstr ""
 
-#: guix/scripts/import/minetest.scm:117 guix/scripts/import/cran.scm:119
+#: guix/scripts/import/minetest.scm:117 guix/scripts/import/cran.scm:122
 #: guix/scripts/import/elpa.scm:112 guix/scripts/import/cpan.scm:89
-#: guix/scripts/import/crate.scm:105 guix/scripts/import/egg.scm:104
+#: guix/scripts/import/crate.scm:105 guix/scripts/import/egg.scm:108
 #: guix/scripts/import/gem.scm:104 guix/scripts/import/go.scm:123
 #: guix/scripts/import/hackage.scm:149 guix/scripts/import/hackage.scm:160
 #: guix/scripts/import/json.scm:99 guix/scripts/import/opam.scm:113
-#: guix/scripts/import/pypi.scm:104 guix/scripts/import/stackage.scm:132
-#: guix/scripts/import/texlive.scm:98
+#: guix/scripts/import/pypi.scm:106 guix/scripts/import/stackage.scm:132
+#: guix/scripts/import/texlive.scm:90
 #, scheme-format
 msgid "too many arguments~%"
 msgstr ""
@@ -2878,7 +3441,7 @@ msgid ""
 "Import and convert the CRAN package for PACKAGE-NAME.\n"
 msgstr ""
 
-#: guix/scripts/import/cran.scm:47 guix/scripts/import/texlive.scm:45
+#: guix/scripts/import/cran.scm:47
 msgid ""
 "\n"
 "  -a, --archive=ARCHIVE  specify the archive repository"
@@ -2890,7 +3453,7 @@ msgid ""
 "  -s, --style=STYLE      choose output style, either specification or variable"
 msgstr ""
 
-#: guix/scripts/import/cran.scm:113 guix/scripts/import/texlive.scm:92
+#: guix/scripts/import/cran.scm:116 guix/scripts/import/texlive.scm:84
 #, scheme-format
 msgid "failed to download description for package '~a'~%"
 msgstr ""
@@ -2992,12 +3555,12 @@ msgid ""
 "      --bootstrap        use the bootstrap Guile to build the new Guix"
 msgstr ""
 
-#: guix/scripts/pull.scm:210 guix/scripts/system/reconfigure.scm:327
+#: guix/scripts/pull.scm:210 guix/scripts/system/reconfigure.scm:333
 #, scheme-format
 msgid "rolling back channel '~a' from ~a to ~a~%"
 msgstr ""
 
-#: guix/scripts/pull.scm:213 guix/scripts/system/reconfigure.scm:330
+#: guix/scripts/pull.scm:213 guix/scripts/system/reconfigure.scm:336
 #, scheme-format
 msgid "moving channel '~a' from ~a to unrelated commit ~a~%"
 msgstr ""
@@ -3107,7 +3670,7 @@ msgstr ""
 
 #: guix/scripts/substitute.scm:240
 msgid ""
-"Usage: guix substitute [OPTION]...\n"
+"Usage: guix substitute OPTION [ARGUMENT]...\n"
 "Internal tool to substitute a pre-built binary to a local build.\n"
 msgstr ""
 
@@ -3212,113 +3775,112 @@ msgstr ""
 msgid "wrong arguments~%"
 msgstr ""
 
-#: guix/scripts/system.scm:175
+#: guix/scripts/system.scm:178
 #, scheme-format
 msgid "copying to '~a'..."
 msgstr ""
 
-#: guix/scripts/system.scm:211
+#: guix/scripts/system.scm:214
 #, scheme-format
 msgid "initializing the current root file system~%"
 msgstr ""
 
-#: guix/scripts/system.scm:225
+#: guix/scripts/system.scm:228
 #, scheme-format
 msgid "not running as 'root', so the ownership of '~a' may be incorrect!~%"
 msgstr ""
 
-#: guix/scripts/system.scm:255 guix/scripts/system.scm:752
-#: guix/scripts/system.scm:858
+#: guix/scripts/system.scm:258
 #, scheme-format
-msgid "bootloader successfully installed on '~a'~%"
+msgid "bootloader successfully installed on~{ ~a~}~%"
 msgstr ""
 
-#: guix/scripts/system.scm:278
+#: guix/scripts/system.scm:281
 #, scheme-format
 msgid "while talking to shepherd: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:286
+#: guix/scripts/system.scm:289
 #, scheme-format
 msgid "service '~a' could not be found~%"
 msgstr ""
 
-#: guix/scripts/system.scm:289
+#: guix/scripts/system.scm:292
 #, scheme-format
 msgid "service '~a' does not have an action '~a'~%"
 msgstr ""
 
-#: guix/scripts/system.scm:293
+#: guix/scripts/system.scm:296
 #, scheme-format
 msgid "exception caught while executing '~a' on service '~a':~%"
 msgstr ""
 
-#: guix/scripts/system.scm:301
+#: guix/scripts/system.scm:304
 #, scheme-format
 msgid "something went wrong: ~s~%"
 msgstr ""
 
-#: guix/scripts/system.scm:304
+#: guix/scripts/system.scm:307
 #, scheme-format
 msgid "shepherd error~%"
 msgstr ""
 
-#: guix/scripts/system.scm:308
+#: guix/scripts/system.scm:311
 #, scheme-format
 msgid "some services could not be upgraded~%"
 msgstr ""
 
-#: guix/scripts/system.scm:309
+#: guix/scripts/system.scm:312
 msgid ""
 "To allow changes to all the system services to take\n"
 "effect, you will need to reboot."
 msgstr ""
 
-#: guix/scripts/system.scm:375
+#: guix/scripts/system.scm:378
 #, scheme-format
 msgid "cannot switch to system generation '~a'~%"
 msgstr ""
 
-#: guix/scripts/system.scm:451
+#: guix/scripts/system.scm:454
 msgid "the DAG of services"
 msgstr ""
 
-#: guix/scripts/system.scm:464
+#: guix/scripts/system.scm:467
 msgid "the dependency graph of shepherd services"
 msgstr ""
 
-#: guix/scripts/system.scm:479
+#: guix/scripts/system.scm:482 guix/scripts/home.scm:453
 #, scheme-format
 msgid "      repository URL: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:481
+#: guix/scripts/system.scm:484 guix/scripts/home.scm:455
 #, scheme-format
 msgid "      branch: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:482
+#: guix/scripts/system.scm:485 guix/scripts/home.scm:456
 #, scheme-format
 msgid "      commit: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:502
+#: guix/scripts/system.scm:505 guix/scripts/home.scm:469
 #, scheme-format
 msgid "  file name: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:503
+#: guix/scripts/system.scm:506 guix/scripts/home.scm:470
 #, scheme-format
 msgid "  canonical file name: ~a~%"
 msgstr ""
 
 #. TRANSLATORS: Please preserve the two-space indentation.
-#: guix/scripts/system.scm:505
+#: guix/scripts/system.scm:508
 #, scheme-format
 msgid "  label: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:506
+#: guix/scripts/system.scm:509
 #, scheme-format
 msgid "  bootloader: ~a~%"
 msgstr ""
@@ -3331,192 +3893,202 @@ msgstr ""
 #. root device: label: "my-root"
 #. or just:
 #. root device: /dev/sda3
-#: guix/scripts/system.scm:516
+#: guix/scripts/system.scm:519
 #, scheme-format
 msgid "  root device: ~[UUID: ~a~;label: ~s~;~a~]~%"
 msgstr ""
 
-#: guix/scripts/system.scm:522
+#: guix/scripts/system.scm:525
 #, scheme-format
 msgid "  kernel: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:527
+#: guix/scripts/system.scm:530
 #, scheme-format
 msgid "  multiboot: ~a~%"
 msgstr ""
 
 #. TRANSLATORS: Here "channel" is the same terminology as used in
 #. "guix describe" and "guix pull --channels".
-#: guix/scripts/system.scm:533
+#: guix/scripts/system.scm:536 guix/scripts/home.scm:476
 #, scheme-format
 msgid "  channels:~%"
 msgstr ""
 
-#: guix/scripts/system.scm:536
+#: guix/scripts/system.scm:539 guix/scripts/home.scm:479
 #, scheme-format
 msgid "  configuration file: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:609
+#: guix/scripts/system.scm:612
 #, scheme-format
 msgid "device '~a' not found: ~a~%"
 msgstr ""
 
-#: guix/scripts/system.scm:612
+#: guix/scripts/system.scm:615
 #, scheme-format
 msgid ""
 "If '~a' is a file system\n"
 "label, write @code{(file-system-label ~s)} in your @code{device} field."
 msgstr ""
 
-#: guix/scripts/system.scm:621
+#: guix/scripts/system.scm:624
 #, scheme-format
 msgid "file system with label '~a' not found~%"
 msgstr ""
 
-#: guix/scripts/system.scm:627
+#: guix/scripts/system.scm:630
 #, scheme-format
 msgid "file system with UUID '~a' not found~%"
 msgstr ""
 
-#: guix/scripts/system.scm:714
+#: guix/scripts/system.scm:718
 #, scheme-format
 msgid "'disk-image' is deprecated: use 'image' instead~%"
 msgstr ""
 
-#: guix/scripts/system.scm:716
+#: guix/scripts/system.scm:720
 #, scheme-format
 msgid "'vm-image' is deprecated: use 'image' instead~%"
 msgstr ""
 
-#: guix/scripts/system.scm:730
+#: guix/scripts/system.scm:722
+#, scheme-format
+msgid "'docker-image' is deprecated: use 'image' instead~%"
+msgstr ""
+
+#: guix/scripts/system.scm:732
 #, scheme-format
 msgid "Consider running 'guix pull' before 'reconfigure'.~%"
 msgstr ""
 
-#: guix/scripts/system.scm:731
+#: guix/scripts/system.scm:733
 #, scheme-format
 msgid "Failing to do that may downgrade your system!~%"
 msgstr ""
 
-#: guix/scripts/system.scm:851
+#: guix/scripts/system.scm:754 guix/scripts/system.scm:863
+#, scheme-format
+msgid "bootloader successfully installed on '~a'~%"
+msgstr ""
+
+#: guix/scripts/system.scm:856
 #, scheme-format
 msgid "activating system...~%"
 msgstr ""
 
-#: guix/scripts/system.scm:862
+#: guix/scripts/system.scm:867
 msgid ""
 "To complete the upgrade, run 'herd restart SERVICE' to stop,\n"
 "upgrade, and restart each service that was not automatically restarted.\n"
 msgstr ""
 
-#: guix/scripts/system.scm:865
+#: guix/scripts/system.scm:870
 msgid "Run 'herd status' to view the list of services on your system.\n"
 msgstr ""
 
-#: guix/scripts/system.scm:869
+#: guix/scripts/system.scm:874
 #, scheme-format
 msgid "initializing operating system under '~a'...~%"
 msgstr ""
 
-#: guix/scripts/system.scm:889 guix/scripts/graph.scm:437
+#: guix/scripts/system.scm:894 guix/scripts/graph.scm:437
 #, scheme-format
 msgid "~a: unknown backend~%"
 msgstr ""
 
-#: guix/scripts/system.scm:926
+#: guix/scripts/system.scm:931
 msgid "The available image types are:\n"
 msgstr ""
 
-#: guix/scripts/system.scm:936
+#: guix/scripts/system.scm:941
 msgid ""
 "Usage: guix system [OPTION ...] ACTION [ARG ...] [FILE]\n"
 "Build the operating system declared in FILE according to ACTION.\n"
 "Some ACTIONS support additional ARGS.\n"
 msgstr ""
 
-#: guix/scripts/system.scm:942
+#: guix/scripts/system.scm:947
 msgid "   search           search for existing service types\n"
 msgstr ""
 
-#: guix/scripts/system.scm:944
+#: guix/scripts/system.scm:949
 msgid "   reconfigure      switch to a new operating system configuration\n"
 msgstr ""
 
-#: guix/scripts/system.scm:946
+#: guix/scripts/system.scm:951
 msgid "   roll-back        switch to the previous operating system configuration\n"
 msgstr ""
 
-#: guix/scripts/system.scm:948
+#: guix/scripts/system.scm:953
 msgid "   describe         describe the current system\n"
 msgstr ""
 
-#: guix/scripts/system.scm:950
+#: guix/scripts/system.scm:955
 msgid "   list-generations list the system generations\n"
 msgstr ""
 
-#: guix/scripts/system.scm:952
+#: guix/scripts/system.scm:957
 msgid "   switch-generation switch to an existing operating system configuration\n"
 msgstr ""
 
-#: guix/scripts/system.scm:954
+#: guix/scripts/system.scm:959
 msgid "   delete-generations delete old system generations\n"
 msgstr ""
 
-#: guix/scripts/system.scm:956
+#: guix/scripts/system.scm:961
 msgid "   build            build the operating system without installing anything\n"
 msgstr ""
 
-#: guix/scripts/system.scm:958
+#: guix/scripts/system.scm:963
 msgid "   container        build a container that shares the host's store\n"
 msgstr ""
 
-#: guix/scripts/system.scm:960
+#: guix/scripts/system.scm:965
 msgid "   vm               build a virtual machine image that shares the host's store\n"
 msgstr ""
 
-#: guix/scripts/system.scm:962
+#: guix/scripts/system.scm:967
 msgid "   image            build a Guix System image\n"
 msgstr ""
 
-#: guix/scripts/system.scm:964
+#: guix/scripts/system.scm:969
 msgid "   docker-image     build a Docker image\n"
 msgstr ""
 
-#: guix/scripts/system.scm:966
+#: guix/scripts/system.scm:971
 msgid "   init             initialize a root file system to run GNU\n"
 msgstr ""
 
-#: guix/scripts/system.scm:968
+#: guix/scripts/system.scm:973
 msgid "   extension-graph  emit the service extension graph in Dot format\n"
 msgstr ""
 
-#: guix/scripts/system.scm:970
+#: guix/scripts/system.scm:975
 msgid "   shepherd-graph   emit the graph of shepherd services in Dot format\n"
 msgstr ""
 
-#: guix/scripts/system.scm:974
+#: guix/scripts/system.scm:979
 msgid ""
 "\n"
 "  -d, --derivation       return the derivation of the given system"
 msgstr ""
 
-#: guix/scripts/system.scm:976
+#: guix/scripts/system.scm:981
 msgid ""
 "\n"
 "  -e, --expression=EXPR  consider the operating-system EXPR evaluates to\n"
 "                         instead of reading FILE, when applicable"
 msgstr ""
 
-#: guix/scripts/system.scm:979
+#: guix/scripts/system.scm:984
 msgid ""
 "\n"
 "      --allow-downgrades for 'reconfigure', allow downgrades to earlier\n"
 "                         channel revisions"
 msgstr ""
 
-#: guix/scripts/system.scm:982
+#: guix/scripts/system.scm:987
 msgid ""
 "\n"
 "      --on-error=STRATEGY\n"
@@ -3524,69 +4096,69 @@ msgid ""
 "                         or debug) when an error occurs while reading FILE"
 msgstr ""
 
-#: guix/scripts/system.scm:986
+#: guix/scripts/system.scm:991
 msgid ""
 "\n"
 "      --list-image-types list available image types"
 msgstr ""
 
-#: guix/scripts/system.scm:988
+#: guix/scripts/system.scm:993
 msgid ""
 "\n"
 "  -t, --image-type=TYPE  for 'image', produce an image of TYPE"
 msgstr ""
 
-#: guix/scripts/system.scm:990
+#: guix/scripts/system.scm:995
 msgid ""
 "\n"
 "      --image-size=SIZE  for 'image', produce an image of SIZE"
 msgstr ""
 
-#: guix/scripts/system.scm:992
+#: guix/scripts/system.scm:997
 msgid ""
 "\n"
 "      --no-bootloader    for 'init', do not install a bootloader"
 msgstr ""
 
-#: guix/scripts/system.scm:994
+#: guix/scripts/system.scm:999
 msgid ""
 "\n"
 "      --volatile         for 'image', make the root file system volatile"
 msgstr ""
 
-#: guix/scripts/system.scm:996
+#: guix/scripts/system.scm:1001
 msgid ""
 "\n"
 "      --label=LABEL      for 'image', label disk image with LABEL"
 msgstr ""
 
-#: guix/scripts/system.scm:998 guix/scripts/pack.scm:1331
+#: guix/scripts/system.scm:1003 guix/scripts/pack.scm:1340
 msgid ""
 "\n"
 "      --save-provenance  save provenance information"
 msgstr ""
 
-#: guix/scripts/system.scm:1000
+#: guix/scripts/system.scm:1005
 msgid ""
 "\n"
 "      --share=SPEC       for 'vm' and 'container', share host file system with\n"
 "                         read/write access according to SPEC"
 msgstr ""
 
-#: guix/scripts/system.scm:1003
+#: guix/scripts/system.scm:1008
 msgid ""
 "\n"
 "      --expose=SPEC      for 'vm' and 'container', expose host file system\n"
 "                         directory as read-only according to SPEC"
 msgstr ""
 
-#: guix/scripts/system.scm:1006
+#: guix/scripts/system.scm:1011
 msgid ""
 "\n"
 "  -N, --network          for 'container', allow containers to access the network"
 msgstr ""
 
-#: guix/scripts/system.scm:1008
+#: guix/scripts/system.scm:1013
 msgid ""
 "\n"
 "  -r, --root=FILE        for 'vm', 'image', 'container' and 'build',\n"
@@ -3594,66 +4166,82 @@ msgid ""
 "                         register it as a garbage collector root"
 msgstr ""
 
-#: guix/scripts/system.scm:1012
+#: guix/scripts/system.scm:1017
 msgid ""
 "\n"
 "      --full-boot        for 'vm', make a full boot sequence"
 msgstr ""
 
-#: guix/scripts/system.scm:1014
+#: guix/scripts/system.scm:1019
 msgid ""
 "\n"
-"      --skip-checks      skip file system and initrd module safety checks"
+"      --no-graphic       for 'vm', use the tty that we are started in for IO"
 msgstr ""
 
 #: guix/scripts/system.scm:1021
 msgid ""
 "\n"
+"      --skip-checks      skip file system and initrd module safety checks"
+msgstr ""
+
+#: guix/scripts/system.scm:1028
+msgid ""
+"\n"
 "      --graph-backend=BACKEND\n"
 "                         use BACKEND for 'extension-graphs' and 'shepherd-graph'"
 msgstr ""
 
-#: guix/scripts/system.scm:1163
+#: guix/scripts/system.scm:1180
 #, scheme-format
 msgid "'~a' does not return an operating system or an image~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1187
+#: guix/scripts/system.scm:1204 guix/scripts/home.scm:216
 #, scheme-format
 msgid "both file and expression cannot be specified~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1194
+#: guix/scripts/system.scm:1211 guix/scripts/home.scm:223
 #, scheme-format
 msgid "no configuration specified~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1304
+#: guix/scripts/system.scm:1319 guix/scripts/system.scm:1335
+#: guix/scripts/system.scm:1342 guix/scripts/system.scm:1348
+#: guix/scripts/home.scm:274 guix/scripts/home.scm:296
+#: guix/scripts/home.scm:301 guix/scripts/home.scm:307
+#: guix/scripts/home.scm:314 guix/scripts/import/gnu.scm:100
+#: guix/scripts/offload.scm:836 guix/scripts/offload.scm:848
+#, scheme-format
+msgid "wrong number of arguments~%"
+msgstr ""
+
+#: guix/scripts/system.scm:1324
 #, scheme-format
 msgid "no system generation, nothing to describe~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1350
+#: guix/scripts/system.scm:1367 guix/scripts/home.scm:337
 #, scheme-format
 msgid "~a: unknown action~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1366
+#: guix/scripts/system.scm:1387 guix/scripts/home.scm:353
 #, scheme-format
 msgid "wrong number of arguments for action '~a'~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1371
+#: guix/scripts/system.scm:1392
 #, scheme-format
 msgid "guix system: missing command name~%"
 msgstr ""
 
-#: guix/scripts/system.scm:1373
+#: guix/scripts/system.scm:1394
 #, scheme-format
 msgid "Try 'guix system --help' for more information.~%"
 msgstr ""
 
-#: guix/scripts/system/search.scm:93 guix/ui.scm:1528 guix/ui.scm:1546
+#: guix/scripts/system/search.scm:93 guix/ui.scm:1541 guix/ui.scm:1559
 msgid "unknown"
 msgstr ""
 
@@ -3705,140 +4293,140 @@ msgstr ""
 msgid "~a: invalid checker~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:84
+#: guix/scripts/publish.scm:86
 #, scheme-format
 msgid ""
 "Usage: guix publish [OPTION]...\n"
 "Publish ~a over HTTP.\n"
 msgstr ""
 
-#: guix/scripts/publish.scm:86
+#: guix/scripts/publish.scm:88
 msgid ""
 "\n"
 "  -p, --port=PORT        listen on PORT"
 msgstr ""
 
-#: guix/scripts/publish.scm:88
+#: guix/scripts/publish.scm:90
 msgid ""
 "\n"
 "      --listen=HOST      listen on the network interface for HOST"
 msgstr ""
 
-#: guix/scripts/publish.scm:90
+#: guix/scripts/publish.scm:92
 msgid ""
 "\n"
 "  -u, --user=USER        change privileges to USER as soon as possible"
 msgstr ""
 
-#: guix/scripts/publish.scm:92
+#: guix/scripts/publish.scm:94
 msgid ""
 "\n"
 "  -a, --advertise        advertise on the local network"
 msgstr ""
 
-#: guix/scripts/publish.scm:94
+#: guix/scripts/publish.scm:96
 msgid ""
 "\n"
 "  -C, --compression[=METHOD:LEVEL]\n"
 "                         compress archives with METHOD at LEVEL"
 msgstr ""
 
-#: guix/scripts/publish.scm:97
+#: guix/scripts/publish.scm:99
 msgid ""
 "\n"
 "  -c, --cache=DIRECTORY  cache published items to DIRECTORY"
 msgstr ""
 
-#: guix/scripts/publish.scm:99
+#: guix/scripts/publish.scm:101
 msgid ""
 "\n"
 "      --cache-bypass-threshold=SIZE\n"
 "                         serve store items below SIZE even when not cached"
 msgstr ""
 
-#: guix/scripts/publish.scm:102
+#: guix/scripts/publish.scm:104
 msgid ""
 "\n"
 "      --workers=N        use N workers to bake items"
 msgstr ""
 
-#: guix/scripts/publish.scm:104
+#: guix/scripts/publish.scm:106
 msgid ""
 "\n"
 "      --ttl=TTL          announce narinfos can be cached for TTL seconds"
 msgstr ""
 
-#: guix/scripts/publish.scm:106
+#: guix/scripts/publish.scm:108
 msgid ""
 "\n"
 "      --negative-ttl=TTL announce missing narinfos can be cached for TTL seconds"
 msgstr ""
 
-#: guix/scripts/publish.scm:108
+#: guix/scripts/publish.scm:110
 msgid ""
 "\n"
 "      --nar-path=PATH    use PATH as the prefix for nar URLs"
 msgstr ""
 
-#: guix/scripts/publish.scm:110
+#: guix/scripts/publish.scm:112
 msgid ""
 "\n"
 "      --public-key=FILE  use FILE as the public key for signatures"
 msgstr ""
 
-#: guix/scripts/publish.scm:112
+#: guix/scripts/publish.scm:114
 msgid ""
 "\n"
 "      --private-key=FILE use FILE as the private key for signatures"
 msgstr ""
 
-#: guix/scripts/publish.scm:114
+#: guix/scripts/publish.scm:116
 msgid ""
 "\n"
 "  -r, --repl[=PORT]      spawn REPL server on PORT"
 msgstr ""
 
-#: guix/scripts/publish.scm:130
+#: guix/scripts/publish.scm:132
 #, scheme-format
 msgid "lookup of host '~a' failed: ~a~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:187
+#: guix/scripts/publish.scm:189
 #, scheme-format
 msgid "lookup of host '~a' returned nothing"
 msgstr ""
 
-#: guix/scripts/publish.scm:210
+#: guix/scripts/publish.scm:212
 #, scheme-format
 msgid "~a: unsupported compression type~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:228 guix/scripts/publish.scm:235
+#: guix/scripts/publish.scm:230 guix/scripts/publish.scm:237
 #, scheme-format
 msgid "~a: invalid duration~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:1164
+#: guix/scripts/publish.scm:1211
 #, scheme-format
 msgid "Advertising ~a~%."
 msgstr ""
 
-#: guix/scripts/publish.scm:1196
+#: guix/scripts/publish.scm:1243
 #, scheme-format
 msgid "user '~a' not found: ~a~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:1249
+#: guix/scripts/publish.scm:1296
 #, scheme-format
 msgid "server running as root; consider using the '--user' option!~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:1257
+#: guix/scripts/publish.scm:1304
 #, scheme-format
 msgid "publishing ~a on ~a, port ~d~%"
 msgstr ""
 
-#: guix/scripts/publish.scm:1263
+#: guix/scripts/publish.scm:1310
 #, scheme-format
 msgid "using '~a' compression method, level ~a~%"
 msgstr ""
@@ -4005,149 +4593,155 @@ msgstr ""
 
 #. TRANSLATORS: Here 'dot' is the name of a program; it must not be
 #. translated.
-#: guix/scripts/graph.scm:530
+#: guix/scripts/graph.scm:534
 msgid ""
 "Usage: guix graph PACKAGE...\n"
 "Emit a representation of the dependency graph of PACKAGE...\n"
 msgstr ""
 
-#: guix/scripts/graph.scm:532
+#: guix/scripts/graph.scm:536
 msgid ""
 "\n"
 "  -b, --backend=TYPE     produce a graph with the given backend TYPE"
 msgstr ""
 
-#: guix/scripts/graph.scm:534
+#: guix/scripts/graph.scm:538
 msgid ""
 "\n"
 "      --list-backends    list the available graph backends"
 msgstr ""
 
-#: guix/scripts/graph.scm:536
+#: guix/scripts/graph.scm:540
 msgid ""
 "\n"
 "  -t, --type=TYPE        represent nodes of the given TYPE"
 msgstr ""
 
-#: guix/scripts/graph.scm:538
+#: guix/scripts/graph.scm:542
 msgid ""
 "\n"
 "      --list-types       list the available graph types"
 msgstr ""
 
-#: guix/scripts/graph.scm:540
+#: guix/scripts/graph.scm:544
+msgid ""
+"\n"
+"  -M, --max-depth=DEPTH  limit to nodes within distance DEPTH"
+msgstr ""
+
+#: guix/scripts/graph.scm:546
 msgid ""
 "\n"
 "      --path             display the shortest path between the given nodes"
 msgstr ""
 
-#: guix/scripts/graph.scm:542 guix/scripts/pack.scm:1316
-#: guix/scripts/refresh.scm:149
+#: guix/scripts/graph.scm:548 guix/scripts/pack.scm:1325
+#: guix/scripts/refresh.scm:150 guix/scripts/style.scm:502
 msgid ""
 "\n"
 "  -e, --expression=EXPR  consider the package EXPR evaluates to"
 msgstr ""
 
-#: guix/scripts/graph.scm:544
+#: guix/scripts/graph.scm:550
 msgid ""
 "\n"
 "  -s, --system=SYSTEM    consider the graph for SYSTEM--e.g., \"i686-linux\""
 msgstr ""
 
-#: guix/scripts/graph.scm:597
+#: guix/scripts/graph.scm:605
 #, scheme-format
 msgid "no arguments specified; creating an empty graph~%"
 msgstr ""
 
-#: guix/scripts/graph.scm:610
+#: guix/scripts/graph.scm:618
 #, scheme-format
 msgid "'--path' option requires exactly two nodes (given ~a)~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:305
+#: guix/scripts/challenge.scm:308
 #, scheme-format
 msgid "  differing file:~%"
 msgid_plural "  differing files:~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/scripts/challenge.scm:374
+#: guix/scripts/challenge.scm:377
 #, scheme-format
 msgid "  local hash: ~a~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:375
+#: guix/scripts/challenge.scm:378
 #, scheme-format
 msgid "  no local build for '~a'~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:377
+#: guix/scripts/challenge.scm:380
 #, scheme-format
 msgid "  ~50a: ~a~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:385
+#: guix/scripts/challenge.scm:388
 #, scheme-format
 msgid "~a contents differ:~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:389
+#: guix/scripts/challenge.scm:392
 #, scheme-format
 msgid "could not challenge '~a': no local build~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:391
+#: guix/scripts/challenge.scm:394
 #, scheme-format
 msgid "could not challenge '~a': no substitutes~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:394
+#: guix/scripts/challenge.scm:397
 #, scheme-format
 msgid "~a contents match:~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:403
+#: guix/scripts/challenge.scm:406
 msgid "~h store items were analyzed:~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:404
+#: guix/scripts/challenge.scm:407
 msgid "  - ~h (~,1f%) were identical~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:406
+#: guix/scripts/challenge.scm:409
 msgid "  - ~h (~,1f%) differed~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:408
+#: guix/scripts/challenge.scm:411
 msgid "  - ~h (~,1f%) were inconclusive~%"
 msgstr ""
 
-#: guix/scripts/challenge.scm:417
+#: guix/scripts/challenge.scm:420
 msgid ""
 "Usage: guix challenge [PACKAGE...]\n"
 "Challenge the substitutes for PACKAGE... provided by one or more servers.\n"
 msgstr ""
 
-#: guix/scripts/challenge.scm:419
+#: guix/scripts/challenge.scm:422
 msgid ""
 "\n"
 "      --substitute-urls=URLS\n"
 "                         compare build results with those at URLS"
 msgstr ""
 
-#: guix/scripts/challenge.scm:422
+#: guix/scripts/challenge.scm:425
 msgid ""
 "\n"
 "  -v, --verbose          show details about successful comparisons"
 msgstr ""
 
-#: guix/scripts/challenge.scm:424
+#: guix/scripts/challenge.scm:427
 msgid ""
 "\n"
 "      --diff=MODE        show differences according to MODE"
 msgstr ""
 
-#: guix/scripts/challenge.scm:453
+#: guix/scripts/challenge.scm:456
 #, scheme-format
 msgid "~a: unknown diff mode~%"
 msgstr ""
@@ -4190,307 +4784,307 @@ msgstr ""
 msgid "use '--to' or '--from'~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:113
+#: guix/scripts/pack.scm:120
 #, scheme-format
 msgid "~a: compressor not found~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:321 guix/scripts/pack.scm:674
+#: guix/scripts/pack.scm:328 guix/scripts/pack.scm:683
 #, scheme-format
 msgid "entry point not supported in the '~a' format~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:670
+#: guix/scripts/pack.scm:679
 #, scheme-format
 msgid "~a is not a valid Debian archive compressor.  Valid compressors are: ~a~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:899
+#: guix/scripts/pack.scm:908
 #, scheme-format
 msgid ""
 "cross-compilation not implemented here;\n"
 "please email '~a'~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1160
+#: guix/scripts/pack.scm:1169
 msgid "The supported formats for 'guix pack' are:"
 msgstr ""
 
-#: guix/scripts/pack.scm:1162
+#: guix/scripts/pack.scm:1171
 msgid ""
 "\n"
 "  tarball       Self-contained tarball, ready to run on another machine"
 msgstr ""
 
-#: guix/scripts/pack.scm:1164
+#: guix/scripts/pack.scm:1173
 msgid ""
 "\n"
 "  squashfs      Squashfs image suitable for Singularity"
 msgstr ""
 
-#: guix/scripts/pack.scm:1166
+#: guix/scripts/pack.scm:1175
 msgid ""
 "\n"
 "  docker        Tarball ready for 'docker load'"
 msgstr ""
 
-#: guix/scripts/pack.scm:1168
+#: guix/scripts/pack.scm:1177
 msgid ""
 "\n"
 "  deb           Debian archive installable via dpkg/apt"
 msgstr ""
 
-#: guix/scripts/pack.scm:1184
+#: guix/scripts/pack.scm:1193
 msgid ""
 "\n"
 "      --help-deb-format  list options specific to the deb format"
 msgstr ""
 
-#: guix/scripts/pack.scm:1188
+#: guix/scripts/pack.scm:1197
 msgid ""
 "\n"
 "      --control-file=FILE\n"
 "                         Embed the provided control FILE"
 msgstr ""
 
-#: guix/scripts/pack.scm:1191
+#: guix/scripts/pack.scm:1200
 msgid ""
 "\n"
 "      --postinst-file=FILE\n"
 "                         Embed the provided postinst script"
 msgstr ""
 
-#: guix/scripts/pack.scm:1194
+#: guix/scripts/pack.scm:1203
 msgid ""
 "\n"
 "      --triggers-file=FILE\n"
 "                         Embed the provided triggers FILE"
 msgstr ""
 
-#: guix/scripts/pack.scm:1265
+#: guix/scripts/pack.scm:1274
 #, scheme-format
 msgid "~a: invalid symlink specification~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1279
+#: guix/scripts/pack.scm:1288
 #, scheme-format
 msgid "~a: unsupported profile name~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1302
+#: guix/scripts/pack.scm:1311
 msgid ""
 "Usage: guix pack [OPTION]... PACKAGE...\n"
 "Create a bundle of PACKAGE.\n"
 msgstr ""
 
-#: guix/scripts/pack.scm:1310
+#: guix/scripts/pack.scm:1319
 msgid ""
 "\n"
 "  -f, --format=FORMAT    build a pack in the given FORMAT"
 msgstr ""
 
-#: guix/scripts/pack.scm:1312
+#: guix/scripts/pack.scm:1321
 msgid ""
 "\n"
 "      --list-formats     list the formats available"
 msgstr ""
 
-#: guix/scripts/pack.scm:1314
+#: guix/scripts/pack.scm:1323
 msgid ""
 "\n"
 "  -R, --relocatable      produce relocatable executables"
 msgstr ""
 
-#: guix/scripts/pack.scm:1322
+#: guix/scripts/pack.scm:1331
 msgid ""
 "\n"
 "  -C, --compression=TOOL compress using TOOL--e.g., \"lzip\""
 msgstr ""
 
-#: guix/scripts/pack.scm:1324
+#: guix/scripts/pack.scm:1333
 msgid ""
 "\n"
 "  -S, --symlink=SPEC     create symlinks to the profile according to SPEC"
 msgstr ""
 
-#: guix/scripts/pack.scm:1326
+#: guix/scripts/pack.scm:1335
 msgid ""
 "\n"
 "  -m, --manifest=FILE    create a pack with the manifest from FILE"
 msgstr ""
 
-#: guix/scripts/pack.scm:1328
+#: guix/scripts/pack.scm:1337
 msgid ""
 "\n"
 "      --entry-point=PROGRAM\n"
 "                         use PROGRAM as the entry point of the pack"
 msgstr ""
 
-#: guix/scripts/pack.scm:1333
+#: guix/scripts/pack.scm:1342
 msgid ""
 "\n"
 "      --localstatedir    include /var/guix in the resulting pack"
 msgstr ""
 
-#: guix/scripts/pack.scm:1335
+#: guix/scripts/pack.scm:1344
 msgid ""
 "\n"
 "      --profile-name=NAME\n"
 "                         populate /var/guix/profiles/.../NAME"
 msgstr ""
 
-#: guix/scripts/pack.scm:1341
+#: guix/scripts/pack.scm:1350
 msgid ""
 "\n"
 "  -d, --derivation       return the derivation of the pack"
 msgstr ""
 
-#: guix/scripts/pack.scm:1345
+#: guix/scripts/pack.scm:1354
 msgid ""
 "\n"
 "      --bootstrap        use the bootstrap binaries to build the pack"
 msgstr ""
 
-#: guix/scripts/pack.scm:1399
+#: guix/scripts/pack.scm:1408
 #, scheme-format
 msgid "could not determine provenance of package ~a~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1408
+#: guix/scripts/pack.scm:1417
 #, scheme-format
 msgid "both a manifest and a package list were given~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1425
+#: guix/scripts/pack.scm:1434
 #, scheme-format
 msgid "file provided with option ~a does not exist: ~a~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1486
+#: guix/scripts/pack.scm:1495
 #, scheme-format
 msgid "~a: unknown pack format~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1513
+#: guix/scripts/pack.scm:1522
 #, scheme-format
 msgid "no packages specified; building an empty pack~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1517
+#: guix/scripts/pack.scm:1526
 #, scheme-format
 msgid "Singularity requires you to provide a shell~%"
 msgstr ""
 
-#: guix/scripts/pack.scm:1518
+#: guix/scripts/pack.scm:1527
 msgid "Add @code{bash} or @code{bash-minimal} to your package list."
 msgstr ""
 
-#: guix/scripts/weather.scm:94
+#: guix/scripts/weather.scm:96
 msgid "computing ~h package derivations for ~a...~%"
 msgstr ""
 
 #. TRANSLATORS: it is quite possible zero store items are
 #. looked for.
-#: guix/scripts/weather.scm:195
+#: guix/scripts/weather.scm:197
 msgid "looking for ~h store items on ~a...~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:216
+#: guix/scripts/weather.scm:218
 msgid "  ~,1f% substitutes available (~h out of ~h)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:222
+#: guix/scripts/weather.scm:224
 #, scheme-format
 msgid "  unknown substitute sizes~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:225
+#: guix/scripts/weather.scm:227
 msgid "  ~,1h MiB of nars (compressed)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:226
+#: guix/scripts/weather.scm:228
 msgid "  at least ~,1h MiB of nars (compressed)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:228
+#: guix/scripts/weather.scm:230
 msgid "  ~,1h MiB on disk (uncompressed)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:231
+#: guix/scripts/weather.scm:233
 msgid "  ~,3h seconds per request (~,1h seconds in total)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:233
+#: guix/scripts/weather.scm:235
 msgid "  ~,1h requests per second~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:239
+#: guix/scripts/weather.scm:241
 #, scheme-format
 msgid "  (continuous integration information unavailable)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:242
+#: guix/scripts/weather.scm:244
 #, scheme-format
 msgid "  '~a' returned ~a (~s)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:259
+#: guix/scripts/weather.scm:261
 msgid "  ~,1f% (~h out of ~h) of the missing items are queued~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:265
+#: guix/scripts/weather.scm:267
 msgid "  at least ~h queued builds~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:266
+#: guix/scripts/weather.scm:268
 msgid "  ~h queued builds~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:269
+#: guix/scripts/weather.scm:271
 #, scheme-format
 msgid "      ~a: ~a (~0,1f%)~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:275
+#: guix/scripts/weather.scm:277
 #, scheme-format
 msgid "  build rate: ~1,2f builds per hour~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:279
+#: guix/scripts/weather.scm:281
 #, scheme-format
 msgid "      ~a: ~,2f builds per hour~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:287
+#: guix/scripts/weather.scm:289
 #, scheme-format
 msgid "Substitutes are missing for the following items:~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:302
+#: guix/scripts/weather.scm:304
 msgid "unknown system"
 msgstr ""
 
-#: guix/scripts/weather.scm:317
+#: guix/scripts/weather.scm:319
 msgid ""
 "Usage: guix weather [OPTIONS] [PACKAGES ...]\n"
 "Report the availability of substitutes.\n"
 msgstr ""
 
-#: guix/scripts/weather.scm:319
+#: guix/scripts/weather.scm:321
 msgid ""
 "\n"
 "      --substitute-urls=URLS\n"
 "                         check for available substitutes at URLS"
 msgstr ""
 
-#: guix/scripts/weather.scm:322
+#: guix/scripts/weather.scm:324
 msgid ""
 "\n"
 "  -m, --manifest=MANIFEST\n"
 "                         look up substitutes for packages specified in MANIFEST"
 msgstr ""
 
-#: guix/scripts/weather.scm:325
+#: guix/scripts/weather.scm:327
 msgid ""
 "\n"
 "  -c, --coverage[=COUNT]\n"
@@ -4498,31 +5092,31 @@ msgid ""
 "                         COUNT dependents"
 msgstr ""
 
-#: guix/scripts/weather.scm:329
+#: guix/scripts/weather.scm:331
 msgid ""
 "\n"
 "      --display-missing  display the list of missing substitutes"
 msgstr ""
 
-#: guix/scripts/weather.scm:331
+#: guix/scripts/weather.scm:333
 msgid ""
 "\n"
 "  -s, --system=SYSTEM    consider substitutes for SYSTEM--e.g., \"i686-linux\""
 msgstr ""
 
-#: guix/scripts/weather.scm:355
+#: guix/scripts/weather.scm:357
 #, scheme-format
 msgid "~a: invalid URL~%"
 msgstr ""
 
-#: guix/scripts/weather.scm:488
+#: guix/scripts/weather.scm:490
 #, scheme-format
 msgid "The following ~a package is missing from '~a' for '~a':~%"
 msgid_plural "The following ~a packages are missing from '~a' for '~a':~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/scripts/weather.scm:494
+#: guix/scripts/weather.scm:496
 #, scheme-format
 msgid "~a package is missing from '~a' for '~a':~%"
 msgid_plural "~a packages are missing from '~a' for '~a', among which:~%"
@@ -4670,12 +5264,12 @@ msgstr ""
 msgid "missing deployment file argument~%"
 msgstr ""
 
-#: guix/gexp.scm:442
+#: guix/gexp.scm:465
 #, scheme-format
 msgid "resolving '~a' relative to current directory~%"
 msgstr ""
 
-#: guix/gexp.scm:834
+#: guix/gexp.scm:858
 #, scheme-format
 msgid "importing module~{ ~a~} from the host~%"
 msgid_plural "importing modules~{ ~a~} from the host~%"
@@ -4761,165 +5355,189 @@ msgstr ""
 msgid "exec failed with status ~d~%"
 msgstr ""
 
-#: guix/transformations.scm:178 guix/transformations.scm:246
+#: guix/transformations.scm:185 guix/transformations.scm:253
 #, scheme-format
 msgid "invalid replacement specification: ~s"
 msgstr ""
 
-#: guix/transformations.scm:227
+#: guix/transformations.scm:234
 #, scheme-format
 msgid "the source of ~a is not a Git reference"
 msgstr ""
 
-#: guix/transformations.scm:319
+#: guix/transformations.scm:337
 #, scheme-format
 msgid "~a: invalid Git URL replacement specification"
 msgstr ""
 
-#: guix/transformations.scm:397
+#: guix/transformations.scm:415
 #, scheme-format
 msgid "~a: invalid toolchain replacement specification"
 msgstr ""
 
-#: guix/transformations.scm:528
+#: guix/transformations.scm:517
+msgid "failed to determine which compiler is used"
+msgstr ""
+
+#: guix/transformations.scm:523
+#, scheme-format
+msgid "failed to determine whether ~a supports ~a"
+msgstr ""
+
+#: guix/transformations.scm:529
+#, scheme-format
+msgid "compiler ~a does not support micro-architecture ~a"
+msgstr ""
+
+#: guix/transformations.scm:581
+#, scheme-format
+msgid "tuning ~a for CPU ~a~%"
+msgstr ""
+
+#: guix/transformations.scm:721
 #, scheme-format
 msgid "~a: invalid package patch specification"
 msgstr ""
 
-#: guix/transformations.scm:551
+#: guix/transformations.scm:744
 #, scheme-format
 msgid "could not determine latest upstream release of '~a'~%"
 msgstr ""
 
-#: guix/transformations.scm:559
+#: guix/transformations.scm:752
 #, scheme-format
 msgid "cannot authenticate source of '~a', version ~a~%"
 msgstr ""
 
-#: guix/transformations.scm:643
+#: guix/transformations.scm:833
+#, scheme-format
+msgid "building for ~a instead of ~a, so tuning cannot be guessed~%"
+msgstr ""
+
+#: guix/transformations.scm:859
 #, scheme-format
 msgid "Available package transformation options:~%"
 msgstr ""
 
-#: guix/transformations.scm:649
+#: guix/transformations.scm:865
 msgid ""
 "\n"
 "      --with-source=[PACKAGE=]SOURCE\n"
 "                         use SOURCE when building the corresponding package"
 msgstr ""
 
-#: guix/transformations.scm:652
+#: guix/transformations.scm:868
 msgid ""
 "\n"
 "      --with-input=PACKAGE=REPLACEMENT\n"
 "                         replace dependency PACKAGE by REPLACEMENT"
 msgstr ""
 
-#: guix/transformations.scm:655
+#: guix/transformations.scm:871
 msgid ""
 "\n"
 "      --with-graft=PACKAGE=REPLACEMENT\n"
 "                         graft REPLACEMENT on packages that refer to PACKAGE"
 msgstr ""
 
-#: guix/transformations.scm:658
+#: guix/transformations.scm:874
 msgid ""
 "\n"
 "      --with-branch=PACKAGE=BRANCH\n"
 "                         build PACKAGE from the latest commit of BRANCH"
 msgstr ""
 
-#: guix/transformations.scm:661
+#: guix/transformations.scm:877
 msgid ""
 "\n"
 "      --with-commit=PACKAGE=COMMIT\n"
 "                         build PACKAGE from COMMIT"
 msgstr ""
 
-#: guix/transformations.scm:664
+#: guix/transformations.scm:880
 msgid ""
 "\n"
 "      --with-git-url=PACKAGE=URL\n"
 "                         build PACKAGE from the repository at URL"
 msgstr ""
 
-#: guix/transformations.scm:667
+#: guix/transformations.scm:883
 msgid ""
 "\n"
 "      --with-patch=PACKAGE=FILE\n"
 "                         add FILE to the list of patches of PACKAGE"
 msgstr ""
 
-#: guix/transformations.scm:670
+#: guix/transformations.scm:886
 msgid ""
 "\n"
 "      --with-latest=PACKAGE\n"
 "                         use the latest upstream release of PACKAGE"
 msgstr ""
 
-#: guix/transformations.scm:673
+#: guix/transformations.scm:889
 msgid ""
 "\n"
 "      --with-c-toolchain=PACKAGE=TOOLCHAIN\n"
 "                         build PACKAGE and its dependents with TOOLCHAIN"
 msgstr ""
 
-#: guix/transformations.scm:676
+#: guix/transformations.scm:892
 msgid ""
 "\n"
 "      --with-debug-info=PACKAGE\n"
 "                         build PACKAGE and preserve its debug info"
 msgstr ""
 
-#: guix/transformations.scm:679
+#: guix/transformations.scm:895
 msgid ""
 "\n"
 "      --without-tests=PACKAGE\n"
 "                         build PACKAGE without running its tests"
 msgstr ""
 
-#: guix/transformations.scm:685
+#: guix/transformations.scm:901
 msgid ""
 "\n"
 "      --help-transform   list package transformation options not shown here"
 msgstr ""
 
-#: guix/transformations.scm:734
+#: guix/transformations.scm:950
 #, scheme-format
 msgid "transformation '~a' had no effect on ~a~%"
 msgstr ""
 
-#: guix/upstream.scm:348
+#: guix/upstream.scm:359
 #, scheme-format
 msgid "failed to download detached signature from ~a~%"
 msgstr ""
 
-#: guix/upstream.scm:352
+#: guix/upstream.scm:363
 #, scheme-format
 msgid "signature verification failed for '~a' (key: ~a)~%"
 msgstr ""
 
-#: guix/upstream.scm:356
+#: guix/upstream.scm:367
 #, scheme-format
 msgid "missing public key ~a for '~a'~%"
 msgstr ""
 
-#: guix/upstream.scm:370
+#: guix/upstream.scm:380
 #, scheme-format
 msgid "failed to fetch source from '~a'"
 msgstr ""
 
-#: guix/upstream.scm:454
+#: guix/upstream.scm:503
 #, scheme-format
 msgid "cannot download for this method: ~s"
 msgstr ""
 
-#: guix/upstream.scm:519
+#: guix/upstream.scm:584
 #, scheme-format
 msgid "~a: could not locate source file"
 msgstr ""
 
-#: guix/upstream.scm:523
+#: guix/upstream.scm:588
 #, scheme-format
 msgid "~a: no `version' field in source; skipping~%"
 msgstr ""
@@ -4966,7 +5584,7 @@ msgstr ""
 msgid "~a: file is empty~%"
 msgstr ""
 
-#: guix/ui.scm:369 guix/ui.scm:419 guix/ui.scm:427 guix/ui.scm:431
+#: guix/ui.scm:369 guix/ui.scm:420 guix/ui.scm:428 guix/ui.scm:432
 #, scheme-format
 msgid "failed to load '~a': ~a~%"
 msgstr ""
@@ -4976,27 +5594,38 @@ msgstr ""
 msgid "~amissing closing parenthesis~%"
 msgstr ""
 
-#: guix/ui.scm:383
+#: guix/ui.scm:380
+#, scheme-format
+msgid "read error while loading '~a': ~a~%"
+msgstr ""
+
+#: guix/ui.scm:384
 #, scheme-format
 msgid "~s: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:399 guix/ui.scm:886
+#: guix/ui.scm:392 guix/ui.scm:423 guix/ui.scm:777 guix/ui.scm:827
+#: guix/ui.scm:878
+#, scheme-format
+msgid "~a~%"
+msgstr ""
+
+#: guix/ui.scm:400 guix/ui.scm:887
 #, scheme-format
 msgid "exception thrown: ~s~%"
 msgstr ""
 
-#: guix/ui.scm:403 guix/ui.scm:441
+#: guix/ui.scm:404 guix/ui.scm:442
 #, scheme-format
 msgid "failed to load '~a':~%"
 msgstr ""
 
-#: guix/ui.scm:438
+#: guix/ui.scm:439
 #, scheme-format
 msgid "failed to load '~a': exception thrown: ~s~%"
 msgstr ""
 
-#: guix/ui.scm:486
+#: guix/ui.scm:487
 msgid ""
 "Consider installing the @code{glibc-locales} package\n"
 "and defining @code{GUIX_LOCPATH}, along these lines:\n"
@@ -5012,15 +5641,15 @@ msgstr ""
 #. TRANSLATORS: Translate "(C)" to the copyright symbol
 #. (C-in-a-circle), if this symbol is available in the user's
 #. locale.  Otherwise, do not translate "(C)"; leave it as-is.  */
-#: guix/ui.scm:527
+#: guix/ui.scm:528
 msgid "(C)"
 msgstr ""
 
-#: guix/ui.scm:528
+#: guix/ui.scm:529
 msgid "the Guix authors\n"
 msgstr ""
 
-#: guix/ui.scm:529
+#: guix/ui.scm:530
 msgid ""
 "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
 "This is free software: you are free to change and redistribute it.\n"
@@ -5031,21 +5660,21 @@ msgstr ""
 #. package.  Please add another line saying "Report translation bugs to
 #. ...\n" with the address for translation bugs (typically your translation
 #. team's web or email address).
-#: guix/ui.scm:541
+#: guix/ui.scm:542
 #, scheme-format
 msgid ""
 "\n"
 "Report bugs to: ~a."
 msgstr ""
 
-#: guix/ui.scm:543
+#: guix/ui.scm:544
 #, scheme-format
 msgid ""
 "\n"
 "~a home page: <~a>"
 msgstr ""
 
-#: guix/ui.scm:545
+#: guix/ui.scm:546
 #, scheme-format
 msgid ""
 "\n"
@@ -5054,149 +5683,149 @@ msgstr ""
 
 #. TRANSLATORS: Change the "/en" bit of this URL appropriately if
 #. the web site is translated in your language.
-#: guix/ui.scm:549
+#: guix/ui.scm:550
 msgid "https://guix.gnu.org/en/help/"
 msgstr ""
 
-#: guix/ui.scm:603
+#: guix/ui.scm:604
 #, scheme-format
 msgid "'~a' is not a valid regular expression: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:609
+#: guix/ui.scm:610
 #, scheme-format
 msgid "~a: invalid number~%"
 msgstr ""
 
-#: guix/ui.scm:627
+#: guix/ui.scm:628
 #, scheme-format
 msgid "invalid number: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:650
+#: guix/ui.scm:651
 #, scheme-format
 msgid "unknown unit: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:665
+#: guix/ui.scm:666
 #, scheme-format
 msgid ""
 "You cannot have two different versions\n"
 "or variants of @code{~a} in the same profile."
 msgstr ""
 
-#: guix/ui.scm:668
+#: guix/ui.scm:669
 #, scheme-format
 msgid ""
 "Try upgrading both @code{~a} and @code{~a},\n"
 "or remove one of them from the profile."
 msgstr ""
 
-#: guix/ui.scm:699
+#: guix/ui.scm:700
 #, scheme-format
 msgid "~a:~a:~a: package `~a' has an invalid input: ~s~%"
 msgstr ""
 
-#: guix/ui.scm:706
+#: guix/ui.scm:707
 #, scheme-format
 msgid "~a: ~a: build system `~a' does not support cross builds~%"
 msgstr ""
 
-#: guix/ui.scm:712
+#: guix/ui.scm:713
 #, scheme-format
 msgid "~s: invalid G-expression input~%"
 msgstr ""
 
-#: guix/ui.scm:715
+#: guix/ui.scm:716
 #, scheme-format
 msgid "profile '~a' does not exist~%"
 msgstr ""
 
-#: guix/ui.scm:718
+#: guix/ui.scm:719
 #, scheme-format
 msgid "generation ~a of profile '~a' does not exist~%"
 msgstr ""
 
-#: guix/ui.scm:723
+#: guix/ui.scm:724
 #, scheme-format
 msgid "package '~a~@[@~a~]~@[:~a~]' not found in profile~%"
 msgstr ""
 
-#: guix/ui.scm:735
+#: guix/ui.scm:736
 #, scheme-format
 msgid "   ... propagated from ~a@~a~%"
 msgstr ""
 
-#: guix/ui.scm:745
+#: guix/ui.scm:746
 #, scheme-format
 msgid "profile contains conflicting entries for ~a~a~%"
 msgstr ""
 
-#: guix/ui.scm:748
+#: guix/ui.scm:749
 #, scheme-format
 msgid "  first entry: ~a@~a~a ~a~%"
 msgstr ""
 
-#: guix/ui.scm:754
+#: guix/ui.scm:755
 #, scheme-format
 msgid "  second entry: ~a@~a~a ~a~%"
 msgstr ""
 
-#: guix/ui.scm:766
+#: guix/ui.scm:767
 #, scheme-format
 msgid "corrupt input while restoring '~a' from ~s~%"
 msgstr ""
 
-#: guix/ui.scm:768
+#: guix/ui.scm:769
 #, scheme-format
 msgid "corrupt input while restoring archive from ~s~%"
 msgstr ""
 
-#: guix/ui.scm:771
+#: guix/ui.scm:772
 #, scheme-format
 msgid "failed to connect to `~a': ~a~%"
 msgstr ""
 
-#: guix/ui.scm:779
+#: guix/ui.scm:780
 #, scheme-format
 msgid "reference to invalid output '~a' of derivation '~a'~%"
 msgstr ""
 
-#: guix/ui.scm:783
+#: guix/ui.scm:784
 #, scheme-format
 msgid "file '~a' could not be found in these directories:~{ ~a~}~%"
 msgstr ""
 
-#: guix/ui.scm:788
+#: guix/ui.scm:789
 #, scheme-format
 msgid "program exited~@[ with non-zero exit status ~a~]~@[ terminated by signal ~a~]~@[ stopped by signal ~a~]: ~s~%"
 msgstr ""
 
-#: guix/ui.scm:865
+#: guix/ui.scm:866
 #, scheme-format
 msgid "failed to read expression ~s: ~s~%"
 msgstr ""
 
-#: guix/ui.scm:871
+#: guix/ui.scm:872
 #, scheme-format
 msgid "failed to evaluate expression '~a':~%"
 msgstr ""
 
-#: guix/ui.scm:874
+#: guix/ui.scm:875
 #, scheme-format
 msgid "syntax error: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:898
+#: guix/ui.scm:899
 #, scheme-format
 msgid "expression ~s does not evaluate to a package~%"
 msgstr ""
 
-#: guix/ui.scm:925
+#: guix/ui.scm:926
 msgid "at least ~,1h MB needed but only ~,1h MB available in ~a~%"
 msgstr ""
 
-#: guix/ui.scm:1034
+#: guix/ui.scm:1035
 #, scheme-format
 msgid "~:[The following derivation would be built:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following derivations would be built:~%~{   ~a~%~}~;~]"
@@ -5205,25 +5834,25 @@ msgstr[1] ""
 
 #. TRANSLATORS: "MB" is for "megabyte"; it should be
 #. translated to the corresponding abbreviation.
-#: guix/ui.scm:1043
+#: guix/ui.scm:1044
 msgid "~:[~,1h MB would be downloaded:~%~{   ~a~%~}~;~]"
 msgstr ""
 
-#: guix/ui.scm:1049
+#: guix/ui.scm:1050
 #, scheme-format
 msgid "~:[The following file would be downloaded:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following files would be downloaded:~%~{   ~a~%~}~;~]"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1056
+#: guix/ui.scm:1057
 #, scheme-format
 msgid "~:[The following graft would be made:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following grafts would be made:~%~{   ~a~%~}~;~]"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1061
+#: guix/ui.scm:1062
 #, scheme-format
 msgid "~:[The following profile hook would be built:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following profile hooks would be built:~%~{   ~a~%~}~;~]"
@@ -5232,17 +5861,17 @@ msgstr[1] ""
 
 #. TRANSLATORS: "MB" is for "megabyte"; it should be
 #. translated to the corresponding abbreviation.
-#: guix/ui.scm:1073
+#: guix/ui.scm:1074
 msgid "~:[~,1h MB would be downloaded~%~;~]"
 msgstr ""
 
-#: guix/ui.scm:1077
+#: guix/ui.scm:1078
 msgid "~:[~h item would be downloaded~%~;~]"
 msgid_plural "~:[~h items would be downloaded~%~;~]"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1085
+#: guix/ui.scm:1086
 #, scheme-format
 msgid "~:[The following derivation will be built:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following derivations will be built:~%~{   ~a~%~}~;~]"
@@ -5251,25 +5880,25 @@ msgstr[1] ""
 
 #. TRANSLATORS: "MB" is for "megabyte"; it should be
 #. translated to the corresponding abbreviation.
-#: guix/ui.scm:1094
+#: guix/ui.scm:1095
 msgid "~:[~,1h MB will be downloaded:~%~{   ~a~%~}~;~]"
 msgstr ""
 
-#: guix/ui.scm:1100
+#: guix/ui.scm:1101
 #, scheme-format
 msgid "~:[The following file will be downloaded:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following files will be downloaded:~%~{   ~a~%~}~;~]"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1107
+#: guix/ui.scm:1108
 #, scheme-format
 msgid "~:[The following graft will be made:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following grafts will be made:~%~{   ~a~%~}~;~]"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1112
+#: guix/ui.scm:1113
 #, scheme-format
 msgid "~:[The following profile hook will be built:~%~{   ~a~%~}~;~]"
 msgid_plural "~:[The following profile hooks will be built:~%~{   ~a~%~}~;~]"
@@ -5278,82 +5907,87 @@ msgstr[1] ""
 
 #. TRANSLATORS: "MB" is for "megabyte"; it should be
 #. translated to the corresponding abbreviation.
-#: guix/ui.scm:1124
+#: guix/ui.scm:1125
 msgid "~:[~,1h MB will be downloaded~%~;~]"
 msgstr ""
 
-#: guix/ui.scm:1128
+#: guix/ui.scm:1129
 msgid "~:[~h item will be downloaded~%~;~]"
 msgid_plural "~:[~h items will be downloaded~%~;~]"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1247
+#: guix/ui.scm:1248
 msgid "(dependencies or package changed)"
 msgstr ""
 
-#: guix/ui.scm:1266
+#: guix/ui.scm:1267
 #, scheme-format
 msgid "The following package would be removed:~%~{~a~%~}~%"
 msgid_plural "The following packages would be removed:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1271
+#: guix/ui.scm:1272
 #, scheme-format
 msgid "The following package will be removed:~%~{~a~%~}~%"
 msgid_plural "The following packages will be removed:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1284
+#: guix/ui.scm:1285
 #, scheme-format
 msgid "The following package would be downgraded:~%~{~a~%~}~%"
 msgid_plural "The following packages would be downgraded:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1289
+#: guix/ui.scm:1290
 #, scheme-format
 msgid "The following package will be downgraded:~%~{~a~%~}~%"
 msgid_plural "The following packages will be downgraded:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1302
+#: guix/ui.scm:1303
 #, scheme-format
 msgid "The following package would be upgraded:~%~{~a~%~}~%"
 msgid_plural "The following packages would be upgraded:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1307
+#: guix/ui.scm:1308
 #, scheme-format
 msgid "The following package will be upgraded:~%~{~a~%~}~%"
 msgid_plural "The following packages will be upgraded:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1318
+#: guix/ui.scm:1319
 #, scheme-format
 msgid "The following package would be installed:~%~{~a~%~}~%"
 msgid_plural "The following packages would be installed:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1323
+#: guix/ui.scm:1324
 #, scheme-format
 msgid "The following package will be installed:~%~{~a~%~}~%"
 msgid_plural "The following packages will be installed:~%~{~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/ui.scm:1859
+#: guix/ui.scm:1442
+#, scheme-format
+msgid "~a: invalid Texinfo markup~%"
+msgstr ""
+
+#: guix/ui.scm:1873
 #, scheme-format
 msgid "invalid syntax: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:1868
+#: guix/ui.scm:1882
 #, scheme-format
 msgid "Generation ~a\t~a"
 msgstr ""
@@ -5363,7 +5997,7 @@ msgstr ""
 #. usual way of presenting dates in your locale.
 #. See https://www.gnu.org/software/guile/manual/html_node/SRFI_002d19-Date-to-string.html
 #. for details.
-#: guix/ui.scm:1878
+#: guix/ui.scm:1892
 #, scheme-format
 msgid "~b ~d ~Y ~T"
 msgstr ""
@@ -5371,62 +6005,74 @@ msgstr ""
 #. TRANSLATORS: The word "current" here is an adjective for
 #. "Generation", as in "current generation".  Use the appropriate
 #. gender where applicable.
-#: guix/ui.scm:1884
+#: guix/ui.scm:1898
 #, scheme-format
 msgid "~a\t(current)~%"
 msgstr ""
 
-#: guix/ui.scm:1918
+#: guix/ui.scm:1932
 #, scheme-format
 msgid "cannot lock profile ~a: ~a~%"
 msgstr ""
 
-#: guix/ui.scm:1920
+#: guix/ui.scm:1934
 #, scheme-format
 msgid "profile ~a is locked by another process~%"
 msgstr ""
 
-#: guix/ui.scm:1949
+#: guix/ui.scm:1963
 #, scheme-format
 msgid "switched from generation ~a to ~a~%"
 msgstr ""
 
-#: guix/ui.scm:1965
+#: guix/ui.scm:1979
 #, scheme-format
 msgid "deleting ~a~%"
 msgstr ""
 
-#: guix/ui.scm:1996
+#: guix/ui.scm:2010
 #, scheme-format
 msgid "Try `guix --help' for more information.~%"
 msgstr ""
 
-#: guix/ui.scm:2088
+#: guix/ui.scm:2102
+msgid ""
+"Usage: guix OPTION | COMMAND ARGS...\n"
+"Run COMMAND with ARGS, if given.\n"
+msgstr ""
+
+#: guix/ui.scm:2105
+msgid ""
+"\n"
+"  -h, --help             display this helpful text again and exit"
+msgstr ""
+
+#: guix/ui.scm:2107
 msgid ""
-"Usage: guix COMMAND ARGS...\n"
-"Run COMMAND with ARGS.\n"
+"\n"
+"  -V, --version          display version and copyright information and exit"
 msgstr ""
 
-#: guix/ui.scm:2091
+#: guix/ui.scm:2112
 msgid "COMMAND must be one of the sub-commands listed below:\n"
 msgstr ""
 
-#: guix/ui.scm:2133
+#: guix/ui.scm:2154
 #, scheme-format
 msgid "guix: ~a: command not found~%"
 msgstr ""
 
-#: guix/ui.scm:2135
+#: guix/ui.scm:2156
 #, scheme-format
 msgid "Did you mean @code{~a}?"
 msgstr ""
 
-#: guix/ui.scm:2169
+#: guix/ui.scm:2190
 #, scheme-format
 msgid "guix: missing command name~%"
 msgstr ""
 
-#: guix/ui.scm:2177
+#: guix/ui.scm:2198
 #, scheme-format
 msgid "guix: unrecognized option '~a'~%"
 msgstr ""
@@ -5456,127 +6102,131 @@ msgid "listing Emacs sub-directories..."
 msgstr ""
 
 #: guix/status.scm:385
-msgid "generating GLib schema cache..."
+msgid "generating GdkPixbuf loaders cache..."
 msgstr ""
 
 #: guix/status.scm:387
-msgid "creating GTK+ icon theme cache..."
+msgid "generating GLib schema cache..."
 msgstr ""
 
 #: guix/status.scm:389
-msgid "building cache files for GTK+ input methods..."
+msgid "creating GTK+ icon theme cache..."
 msgstr ""
 
 #: guix/status.scm:391
-msgid "building XDG desktop file cache..."
+msgid "building cache files for GTK+ input methods..."
 msgstr ""
 
 #: guix/status.scm:393
-msgid "building XDG MIME database..."
+msgid "building XDG desktop file cache..."
 msgstr ""
 
 #: guix/status.scm:395
-msgid "building fonts directory..."
+msgid "building XDG MIME database..."
 msgstr ""
 
 #: guix/status.scm:397
-msgid "building TeX Live configuration..."
+msgid "building fonts directory..."
 msgstr ""
 
 #: guix/status.scm:399
-msgid "building database for manual pages..."
+msgid "building TeX Live configuration..."
 msgstr ""
 
 #: guix/status.scm:401
+msgid "building database for manual pages..."
+msgstr ""
+
+#: guix/status.scm:403
 msgid "building package cache..."
 msgstr ""
 
-#: guix/status.scm:481
+#: guix/status.scm:483
 #, scheme-format
 msgid "applying ~a graft for ~a ..."
 msgid_plural "applying ~a grafts for ~a ..."
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/status.scm:489
+#: guix/status.scm:491
 #, scheme-format
 msgid "building profile with ~a package..."
 msgid_plural "building profile with ~a packages..."
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/status.scm:498
+#: guix/status.scm:500
 #, scheme-format
 msgid "running profile hook of type '~a'..."
 msgstr ""
 
-#: guix/status.scm:501
+#: guix/status.scm:503
 #, scheme-format
 msgid "building ~a..."
 msgstr ""
 
-#: guix/status.scm:506
+#: guix/status.scm:508
 #, scheme-format
 msgid "successfully built ~a"
 msgstr ""
 
-#: guix/status.scm:512
+#: guix/status.scm:514
 #, scheme-format
 msgid "The following build is still in progress:~%~{  ~a~%~}~%"
 msgid_plural "The following builds are still in progress:~%~{  ~a~%~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/status.scm:518
+#: guix/status.scm:520
 #, scheme-format
 msgid "build of ~a failed"
 msgstr ""
 
-#: guix/status.scm:522
+#: guix/status.scm:524
 #, scheme-format
 msgid "Could not find build log for '~a'."
 msgstr ""
 
-#: guix/status.scm:525
+#: guix/status.scm:527
 #, scheme-format
 msgid "View build log at '~a'."
 msgstr ""
 
-#: guix/status.scm:530
+#: guix/status.scm:532
 #, scheme-format
 msgid "substituting ~a..."
 msgstr ""
 
-#: guix/status.scm:535
+#: guix/status.scm:537
 #, scheme-format
 msgid "downloading from ~a ..."
 msgstr ""
 
-#: guix/status.scm:561
+#: guix/status.scm:563
 #, scheme-format
 msgid "substitution of ~a complete"
 msgstr ""
 
-#: guix/status.scm:569
+#: guix/status.scm:571
 #, scheme-format
 msgid "substitution of ~a failed"
 msgstr ""
 
 #. TRANSLATORS: The final string looks like "sha256 hash mismatch for
 #. /gnu/store/…-sth:", where "sha256" is the hash algorithm.
-#: guix/status.scm:574
+#: guix/status.scm:576
 #, scheme-format
 msgid "~a hash mismatch for ~a:"
 msgstr ""
 
-#: guix/status.scm:576
+#: guix/status.scm:578
 #, scheme-format
 msgid ""
 "  expected hash: ~a\n"
 "  actual hash:   ~a~%"
 msgstr ""
 
-#: guix/status.scm:581
+#: guix/status.scm:583
 #, scheme-format
 msgid "offloading build of ~a to '~a'"
 msgstr ""
@@ -5658,24 +6308,24 @@ msgstr ""
 msgid "invalid format of the signature field: ~a~%"
 msgstr ""
 
-#: guix/channels.scm:275
+#: guix/channels.scm:276
 msgid "unsupported '.guix-channel' version"
 msgstr ""
 
-#: guix/channels.scm:281
+#: guix/channels.scm:282
 msgid "invalid '.guix-channel' file"
 msgstr ""
 
-#: guix/channels.scm:340
+#: guix/channels.scm:341
 msgid "Authenticating channel '~a', commits ~a to ~a (~h new commits)...~%"
 msgstr ""
 
-#: guix/channels.scm:404
+#: guix/channels.scm:405
 #, scheme-format
 msgid "channel '~a' lacks an introduction and cannot be authenticated~%"
 msgstr ""
 
-#: guix/channels.scm:409
+#: guix/channels.scm:410
 msgid ""
 "Add the missing introduction to your\n"
 "channels file to address the issue.  Alternatively, you can pass\n"
@@ -5683,23 +6333,23 @@ msgid ""
 "thus potentially malicious code."
 msgstr ""
 
-#: guix/channels.scm:413
+#: guix/channels.scm:414
 #, scheme-format
 msgid "channel authentication disabled~%"
 msgstr ""
 
-#: guix/channels.scm:438
+#: guix/channels.scm:439
 #, scheme-format
 msgid "aborting update of channel '~a' to commit ~a, which is not a descendant of ~a"
 msgstr ""
 
-#: guix/channels.scm:449 guix/scripts/system/reconfigure.scm:317
+#: guix/channels.scm:450 guix/scripts/system/reconfigure.scm:323
 msgid ""
 "Use @option{--allow-downgrades} to force\n"
 "this downgrade."
 msgstr ""
 
-#: guix/channels.scm:453
+#: guix/channels.scm:454
 msgid ""
 "This could indicate that the channel has\n"
 "been tampered with and is trying to force a roll-back, preventing you from\n"
@@ -5707,106 +6357,227 @@ msgid ""
 "allow non-forward updates."
 msgstr ""
 
-#: guix/channels.scm:506
+#: guix/channels.scm:507
 #, scheme-format
 msgid "Updating channel '~a' from Git repository at '~a'...~%"
 msgstr ""
 
-#: guix/channels.scm:527
+#: guix/channels.scm:528
 #, scheme-format
 msgid "pulled channel '~a' from a mirror of ~a, which might be stale~%"
 msgstr ""
 
-#: guix/channels.scm:779
+#: guix/channels.scm:780
 msgid "'guix' channel is lacking"
 msgstr ""
 
-#: guix/channels.scm:781
+#: guix/channels.scm:782
 msgid ""
 "Make sure your list of channels\n"
 "contains one channel named @code{guix} providing the core of Guix."
 msgstr ""
 
-#: guix/channels.scm:1058
+#: guix/channels.scm:1060
 msgid "invalid channel news entry"
 msgstr ""
 
-#: guix/channels.scm:1076
+#: guix/channels.scm:1078
 msgid "syntactically invalid channel news file"
 msgstr ""
 
-#: guix/channels.scm:1079
+#: guix/channels.scm:1081
 msgid "invalid channel news file"
 msgstr ""
 
-#: guix/profiles.scm:591
+#: guix/packages.scm:335
+msgid "no SHA256 hash for origin"
+msgstr ""
+
+#: guix/profiles.scm:610
 msgid "unsupported manifest format"
 msgstr ""
 
-#: guix/profiles.scm:2167
+#: guix/profiles.scm:2242
 #, scheme-format
 msgid "while creating directory `~a': ~a"
 msgstr ""
 
-#: guix/profiles.scm:2172
+#: guix/profiles.scm:2247
 #, scheme-format
 msgid "Please create the @file{~a} directory, with you as the owner."
 msgstr ""
 
-#: guix/profiles.scm:2181
+#: guix/profiles.scm:2256
 #, scheme-format
 msgid "directory `~a' is not owned by you"
 msgstr ""
 
-#: guix/profiles.scm:2185
+#: guix/profiles.scm:2260
 #, scheme-format
 msgid "Please change the owner of @file{~a} to user ~s."
 msgstr ""
 
-#: guix/git.scm:140
+#: guix/remote.scm:76 guix/ssh.scm:188
+#, scheme-format
+msgid "remote command '~{~a~^ ~}' failed with status ~a"
+msgstr ""
+
+#: guix/ssh.scm:95
+#, scheme-format
+msgid "server at '~a' returned host key '~a' of type '~a' instead of '~a' of type '~a'~%"
+msgstr ""
+
+#: guix/ssh.scm:153
+#, scheme-format
+msgid "failed to authenticate server at '~a': ~a"
+msgstr ""
+
+#: guix/ssh.scm:172
+#, scheme-format
+msgid "SSH authentication failed for '~a': ~a~%"
+msgstr ""
+
+#: guix/ssh.scm:176
+#, scheme-format
+msgid "SSH connection to '~a' failed: ~a~%"
+msgstr ""
+
+#: guix/ssh.scm:225
+#, scheme-format
+msgid "failed to start 'guix repl' on '~a'"
+msgstr ""
+
+#: guix/ssh.scm:321
+#, scheme-format
+msgid "failed to connect over SSH to daemon at '~a', socket ~a"
+msgstr ""
+
+#: guix/ssh.scm:460
+msgid "sending ~a store item (~h MiB) to '~a'...~%"
+msgid_plural "sending ~a store items (~h MiB) to '~a'...~%"
+msgstr[0] ""
+msgstr[1] ""
+
+#: guix/ssh.scm:556
+msgid "unknown error while sending files over SSH"
+msgstr ""
+
+#: guix/ssh.scm:601
+#, scheme-format
+msgid "failed to connect to '~A' on remote host '~A': ~a"
+msgstr ""
+
+#: guix/ssh.scm:604
+#, scheme-format
+msgid "no such item on remote host '~A':~{ ~a~}"
+msgid_plural "no such items on remote host '~A':~{ ~a~}"
+msgstr[0] ""
+msgstr[1] ""
+
+#: guix/ssh.scm:609
+#, scheme-format
+msgid "protocol error on remote host '~A': ~a"
+msgstr ""
+
+#: guix/ssh.scm:612
+#, scheme-format
+msgid "failed to retrieve store items from '~a'"
+msgstr ""
+
+#: guix/ssh.scm:625
+#, scheme-format
+msgid "retrieving ~a store item from '~a'...~%"
+msgid_plural "retrieving ~a store items from '~a'...~%"
+msgstr[0] ""
+msgstr[1] ""
+
+#: guix/ssh.scm:655
+#, scheme-format
+msgid "failed to start Guile on remote host '~A'"
+msgstr ""
+
+#: guix/ssh.scm:656
+#, scheme-format
+msgid ""
+"Make sure @command{guile} can be found in\n"
+"@code{$PATH} on the remote host.  Run @command{ssh ~A guile --version} to\n"
+"check."
+msgstr ""
+
+#: guix/ssh.scm:663
+#, scheme-format
+msgid "exception occurred on remote host '~A': ~s"
+msgstr ""
+
+#: guix/git.scm:149
 msgid "receiving objects"
 msgstr ""
 
-#: guix/git.scm:142
+#: guix/git.scm:151
 msgid "indexing objects"
 msgstr ""
 
-#: guix/git.scm:274
+#: guix/git.scm:304
+#, scheme-format
+msgid "Git error ~a~%"
+msgstr ""
+
+#: guix/git.scm:306 guix/git.scm:566
+#, scheme-format
+msgid "Git error: ~a~%"
+msgstr ""
+
+#: guix/git.scm:321
+#, scheme-format
+msgid "updating submodule '~a'...~%"
+msgstr ""
+
+#: guix/git.scm:390
+#, scheme-format
+msgid "revision ~a of ~a could not be fetched from Software Heritage~%"
+msgstr ""
+
+#: guix/git.scm:706
+#, scheme-format
+msgid "cannot fetch commit ~a from ~a: ~a"
+msgstr ""
+
+#: guix/git.scm:709
 #, scheme-format
-msgid "Git error ~a~%"
+msgid "cannot fetch branch '~a' from ~a: ~a"
 msgstr ""
 
-#: guix/git.scm:276 guix/git.scm:499
+#: guix/git.scm:712
 #, scheme-format
-msgid "Git error: ~a~%"
+msgid "Git failure while fetching ~a: ~a"
 msgstr ""
 
-#: guix/git.scm:291
+#: guix/substitutes.scm:100
 #, scheme-format
-msgid "updating submodule '~a'...~%"
+msgid "'~a' does not name a store item~%"
 msgstr ""
 
-#: guix/git.scm:593
+#: guix/substitutes.scm:144
 #, scheme-format
-msgid "cannot fetch commit ~a from ~a: ~a"
+msgid "~a: host not found: ~a~%"
 msgstr ""
 
-#: guix/git.scm:596
+#: guix/substitutes.scm:150
 #, scheme-format
-msgid "cannot fetch branch '~a' from ~a: ~a"
+msgid "~a: connection failed: ~a~%"
 msgstr ""
 
-#: guix/git.scm:599
+#: guix/substitutes.scm:262
 #, scheme-format
-msgid "Git failure while fetching ~a: ~a"
+msgid "~s: unsupported server URI scheme~%"
 msgstr ""
 
-#: guix/deprecation.scm:37
+#: guix/deprecation.scm:39
 #, scheme-format
 msgid "'~a' is deprecated, use '~a' instead~%"
 msgstr ""
 
-#: guix/deprecation.scm:39
+#: guix/deprecation.scm:41
 #, scheme-format
 msgid "'~a' is deprecated~%"
 msgstr ""
@@ -5936,77 +6707,96 @@ msgstr ""
 msgid "either '--export' or '--import' must be specified~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:88
+#: guix/scripts/discover.scm:37
 msgid ""
-"Usage: guix environment [OPTION]... PACKAGE... [-- COMMAND...]\n"
-"Build an environment that includes the dependencies of PACKAGE and execute\n"
-"COMMAND or an interactive shell in that environment.\n"
+"Usage: guix discover [OPTION]...\n"
+"Discover Guix related services using Avahi.\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:91
+#: guix/scripts/discover.scm:39
 msgid ""
 "\n"
-"  -e, --expression=EXPR  create environment for the package that EXPR\n"
-"                         evaluates to"
+"  -c, --cache=DIRECTORY     cache discovery results in DIRECTORY"
 msgstr ""
 
-#: guix/scripts/environment.scm:94
+#: guix/scripts/discover.scm:41
 msgid ""
 "\n"
-"  -l, --load=FILE        create environment for the package that the code within\n"
-"                         FILE evaluates to"
+"  -h, --help                display this help and exit"
 msgstr ""
 
-#: guix/scripts/environment.scm:97
+#: guix/scripts/discover.scm:43
+msgid ""
+"\n"
+"  -V, --version             display version information and exit"
+msgstr ""
+
+#: guix/scripts/discover.scm:149
+#, scheme-format
+msgid "Avahi daemon is not running, cannot auto-discover substitutes servers.~%"
+msgstr ""
+
+#: guix/scripts/discover.scm:152
+#, scheme-format
+msgid "an Avahi error was raised by `~a': ~a~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:82
+msgid ""
+"\n"
+"  -e, --expression=EXPR  create environment for the package that EXPR\n"
+"                         evaluates to"
+msgstr ""
+
+#: guix/scripts/environment.scm:85
 msgid ""
 "\n"
 "  -m, --manifest=FILE    create environment with the manifest from FILE"
 msgstr ""
 
-#: guix/scripts/environment.scm:99
+#: guix/scripts/environment.scm:87
 msgid ""
 "\n"
 "  -p, --profile=PATH     create environment from profile at PATH"
 msgstr ""
 
-#: guix/scripts/environment.scm:101
+#: guix/scripts/environment.scm:89
 msgid ""
 "\n"
-"      --ad-hoc           include all specified packages in the environment instead\n"
-"                         of only their inputs"
+"      --check            check if the shell clobbers environment variables"
 msgstr ""
 
-#: guix/scripts/environment.scm:104
+#: guix/scripts/environment.scm:91
 msgid ""
 "\n"
 "      --pure             unset existing environment variables"
 msgstr ""
 
-#: guix/scripts/environment.scm:106
+#: guix/scripts/environment.scm:93
 msgid ""
 "\n"
 "  -E, --preserve=REGEXP  preserve environment variables that match REGEXP"
 msgstr ""
 
-#: guix/scripts/environment.scm:108
+#: guix/scripts/environment.scm:95
 msgid ""
 "\n"
 "      --search-paths     display needed environment variable definitions"
 msgstr ""
 
-#: guix/scripts/environment.scm:115
+#: guix/scripts/environment.scm:102
 msgid ""
 "\n"
 "  -C, --container        run command within an isolated container"
 msgstr ""
 
-#: guix/scripts/environment.scm:117
+#: guix/scripts/environment.scm:104
 msgid ""
 "\n"
 "  -N, --network          allow containers to access the network"
 msgstr ""
 
-#: guix/scripts/environment.scm:119
+#: guix/scripts/environment.scm:106
 #, scheme-format
 msgid ""
 "\n"
@@ -6014,7 +6804,7 @@ msgid ""
 "                         an isolated container"
 msgstr ""
 
-#: guix/scripts/environment.scm:122
+#: guix/scripts/environment.scm:109
 msgid ""
 "\n"
 "  -u, --user=USER        instead of copying the name and home of the current\n"
@@ -6022,92 +6812,309 @@ msgid ""
 "                         with home directory /home/USER"
 msgstr ""
 
-#: guix/scripts/environment.scm:126
+#: guix/scripts/environment.scm:113
 msgid ""
 "\n"
 "      --no-cwd           do not share current working directory with an\n"
 "                         isolated container"
 msgstr ""
 
-#: guix/scripts/environment.scm:130
+#: guix/scripts/environment.scm:117
 msgid ""
 "\n"
 "      --share=SPEC       for containers, share writable host file system\n"
 "                         according to SPEC"
 msgstr ""
 
-#: guix/scripts/environment.scm:133
+#: guix/scripts/environment.scm:120
 msgid ""
 "\n"
 "      --expose=SPEC      for containers, expose read-only host file system\n"
 "                         according to SPEC"
 msgstr ""
 
-#: guix/scripts/environment.scm:138
+#: guix/scripts/environment.scm:125
 msgid ""
 "\n"
 "      --bootstrap        use bootstrap binaries to build the environment"
 msgstr ""
 
-#: guix/scripts/environment.scm:192
+#: guix/scripts/environment.scm:129
+msgid ""
+"Usage: guix environment [OPTION]... PACKAGE... [-- COMMAND...]\n"
+"Build an environment that includes the dependencies of PACKAGE and execute\n"
+"COMMAND or an interactive shell in that environment.\n"
+msgstr ""
+
+#: guix/scripts/environment.scm:132
+msgid "This command is deprecated in favor of 'guix shell'.\n"
+msgstr ""
+
+#: guix/scripts/environment.scm:136
+msgid ""
+"\n"
+"  -l, --load=FILE        create environment for the package that the code within\n"
+"                         FILE evaluates to"
+msgstr ""
+
+#: guix/scripts/environment.scm:139
+msgid ""
+"\n"
+"      --ad-hoc           include all specified packages in the environment instead\n"
+"                         of only their inputs"
+msgstr ""
+
+#: guix/scripts/environment.scm:199
 #, scheme-format
 msgid "'--inherit' is deprecated, use '--preserve' instead~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:596
+#: guix/scripts/environment.scm:478
+#, scheme-format
+msgid "checking the environment variables visible from shell '~a'...~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:482
+#, scheme-format
+msgid "failed to determine environment of shell '~a'~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:489
+#, scheme-format
+msgid "variable '~a' is missing from shell environment~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:496
+#, scheme-format
+msgid "variable '~a' has unexpected suffix '~a'~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:502
+#, scheme-format
+msgid "variable '~a' is clobbered: '~a'~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:509
+#, scheme-format
+msgid "'GUIX_ENVIRONMENT' is missing from the shell environment~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:513
+#, scheme-format
+msgid "'GUIX_ENVIRONMENT' is set to '~a' instead of '~a'~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:522
+#, scheme-format
+msgid "'PS1' is the same in sub-shell~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:523
+#, scheme-format
+msgid ""
+"Consider setting a different prompt for\n"
+"environment shells to make them distinguishable.\n"
+"\n"
+"If you are using Bash, you can do that by adding these lines to\n"
+"@file{~/.bashrc}:\n"
+"\n"
+"@example\n"
+"if [ -n \"$GUIX_ENVIRONMENT\" ]\n"
+"then\n"
+"  export PS1=\"\\u@@\\h \\w [env]\\$ \"\n"
+"fi\n"
+"@end example\n"
+msgstr ""
+
+#: guix/scripts/environment.scm:539
+#, scheme-format
+msgid ""
+"One or more environment variables have a\n"
+"different value in the shell than the one we set.  This means that you may\n"
+"find yourself running code in an environment different from the one you asked\n"
+"Guix to prepare.\n"
+"\n"
+"This usually indicates that your shell startup files are unexpectedly\n"
+"modifying those environment variables.  For example, if you are using Bash,\n"
+"make sure that environment variables are set or modified in\n"
+"@file{~/.bash_profile} and @emph{not} in @file{~/.bashrc}.  For more\n"
+"information on Bash startup files, run:\n"
+"\n"
+"@example\n"
+"info \"(bash) Bash Startup Files\"\n"
+"@end example\n"
+"\n"
+"Alternatively, you can avoid the problem by passing the @option{--container}\n"
+"or @option{-C} option.  That will give you a fully isolated environment\n"
+"running in a \"container\", immune to the issue described above."
+msgstr ""
+
+#: guix/scripts/environment.scm:558
+#, scheme-format
+msgid "All is good!  The shell gets correct environment variables.~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:579
+#, scheme-format
+msgid "Did you mean '~a'?~%"
+msgstr ""
+
+#: guix/scripts/environment.scm:587
+#, fuzzy, scheme-format
+#| msgid "module ~a not found"
+msgid "~a: command not found~%"
+msgstr "modul ~a pas trobat"
+
+#: guix/scripts/environment.scm:794
 #, scheme-format
 msgid "cannot link profile: '~a' already exists within container~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:634
+#: guix/scripts/environment.scm:832
 msgid "cannot create container: user namespaces unavailable\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:635
+#: guix/scripts/environment.scm:833
 msgid "is your kernel version < 3.10?\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:638
+#: guix/scripts/environment.scm:836
 msgid "cannot create container: unprivileged user cannot create user namespaces\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:639
+#: guix/scripts/environment.scm:837
 msgid "please set /proc/sys/kernel/unprivileged_userns_clone to \"1\"\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:642
+#: guix/scripts/environment.scm:840
 msgid "cannot create container: /proc/self/setgroups does not exist\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:643
+#: guix/scripts/environment.scm:841
 msgid "is your kernel version < 3.19?\n"
 msgstr ""
 
-#: guix/scripts/environment.scm:696
+#: guix/scripts/environment.scm:918
 #, scheme-format
 msgid "'--link-profile' cannot be used without '--container'~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:698
+#: guix/scripts/environment.scm:920
 #, scheme-format
 msgid "'--user' cannot be used without '--container'~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:700
+#: guix/scripts/environment.scm:922
 #, scheme-format
 msgid "--no-cwd cannot be used without --container~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:721
+#: guix/scripts/environment.scm:937
 #, scheme-format
 msgid "'--profile' cannot be used with package options~%"
 msgstr ""
 
-#: guix/scripts/environment.scm:724
+#: guix/scripts/environment.scm:940 guix/scripts/shell.scm:275
 #, scheme-format
 msgid "no packages specified; creating an empty environment~%"
 msgstr ""
 
+#: guix/scripts/home/import.scm:179
+msgid ""
+";; This \"home-environment\" file can be passed to 'guix home reconfigure'\n"
+";; to reproduce the content of your profile.  This is \"symbolic\": it only\n"
+";; specifies package names.  To reproduce the exact same profile, you also\n"
+";; need to capture the channels being used, as returned by \"guix describe\".\n"
+";; See the \"Replicating Guix\" section in the manual.\n"
+msgstr ""
+
+#: guix/scripts/home.scm:65
+msgid ""
+"Usage: guix home [OPTION ...] ACTION [ARG ...] [FILE]\n"
+"Build the home environment declared in FILE according to ACTION.\n"
+"Some ACTIONS support additional ARGS.\n"
+msgstr ""
+
+#: guix/scripts/home.scm:71
+msgid "   search             search for existing service types\n"
+msgstr ""
+
+#: guix/scripts/home.scm:73
+msgid "   reconfigure        switch to a new home environment configuration\n"
+msgstr ""
+
+#: guix/scripts/home.scm:75
+msgid "   roll-back          switch to the previous home environment configuration\n"
+msgstr ""
+
+#: guix/scripts/home.scm:77
+msgid "   describe           describe the current home environment\n"
+msgstr ""
+
+#: guix/scripts/home.scm:79
+msgid "   list-generations   list the home environment generations\n"
+msgstr ""
+
+#: guix/scripts/home.scm:81
+msgid "   switch-generation  switch to an existing home environment configuration\n"
+msgstr ""
+
+#: guix/scripts/home.scm:83
+msgid "   delete-generations delete old home environment generations\n"
+msgstr ""
+
+#: guix/scripts/home.scm:85
+msgid "   build              build the home environment without installing anything\n"
+msgstr ""
+
+#: guix/scripts/home.scm:87
+msgid "   import             generates a home environment definition from dotfiles\n"
+msgstr ""
+
+#: guix/scripts/home.scm:91
+msgid ""
+"\n"
+"  -e, --expression=EXPR  consider the home-environment EXPR evaluates to\n"
+"                         instead of reading FILE, when applicable"
+msgstr ""
+
+#: guix/scripts/home.scm:196
+#, scheme-format
+msgid "'~a' does not return a home environment ~%"
+msgstr ""
+
+#: guix/scripts/home.scm:280
+#, scheme-format
+msgid "'~a' populated with all the Home configuration files~%"
+msgstr ""
+
+#: guix/scripts/home.scm:282
+#, scheme-format
+msgid ""
+"Run @command{guix home reconfigure ~a/home-configuration.scm} to effectively\n"
+"deploy the home environment described by these files.\n"
+msgstr ""
+
+#: guix/scripts/home.scm:289
+#, scheme-format
+msgid "no home environment generation, nothing to describe~%"
+msgstr ""
+
+#: guix/scripts/home.scm:358
+#, scheme-format
+msgid "guix home: missing command name~%"
+msgstr ""
+
+#: guix/scripts/home.scm:360
+#, scheme-format
+msgid "Try 'guix home --help' for more information.~%"
+msgstr ""
+
+#: guix/scripts/home.scm:528
+#, scheme-format
+msgid "cannot switch to home environment generation '~a'~%"
+msgstr ""
+
 #: guix/scripts/time-machine.scm:51
 msgid ""
 "Usage: guix time-machine [OPTION] -- COMMAND ARGS...\n"
@@ -6139,8 +7146,8 @@ msgid ""
 msgstr ""
 
 #: guix/scripts/import/cpan.scm:83 guix/scripts/import/crate.scm:97
-#: guix/scripts/import/egg.scm:98 guix/scripts/import/gem.scm:98
-#: guix/scripts/import/opam.scm:107 guix/scripts/import/pypi.scm:98
+#: guix/scripts/import/egg.scm:100 guix/scripts/import/gem.scm:98
+#: guix/scripts/import/opam.scm:107 guix/scripts/import/pypi.scm:100
 #, scheme-format
 msgid "failed to download meta-data for package '~a'~%"
 msgstr ""
@@ -6151,7 +7158,7 @@ msgid ""
 "Import and convert the crates.io package for PACKAGE-NAME.\n"
 msgstr ""
 
-#: guix/scripts/import/egg.scm:42
+#: guix/scripts/import/egg.scm:43
 msgid ""
 "Usage: guix import egg PACKAGE-NAME\n"
 "Import and convert the egg package for PACKAGE-NAME.\n"
@@ -6175,7 +7182,7 @@ msgid ""
 "Return a package declaration template for PACKAGE, a GNU package.\n"
 msgstr ""
 
-#: guix/scripts/import/gnu.scm:44 guix/scripts/refresh.scm:177
+#: guix/scripts/import/gnu.scm:44 guix/scripts/refresh.scm:178
 msgid ""
 "\n"
 "      --key-download=POLICY\n"
@@ -6184,7 +7191,7 @@ msgid ""
 "                         used when 'key-download' is not specified"
 msgstr ""
 
-#: guix/scripts/import/gnu.scm:73 guix/scripts/refresh.scm:118
+#: guix/scripts/import/gnu.scm:73 guix/scripts/refresh.scm:119
 #, scheme-format
 msgid "unsupported policy: ~a~%"
 msgstr ""
@@ -6217,7 +7224,7 @@ msgstr ""
 
 #: guix/scripts/import/go.scm:117
 #, scheme-format
-msgid "failed to download meta-data for module '~a'~%"
+msgid "failed to download meta-data for module '~a'.~%"
 msgstr ""
 
 #: guix/scripts/import/hackage.scm:49
@@ -6307,7 +7314,7 @@ msgid ""
 "                         can be used more than once"
 msgstr ""
 
-#: guix/scripts/import/pypi.scm:43
+#: guix/scripts/import/pypi.scm:44
 msgid ""
 "Usage: guix import pypi PACKAGE-NAME\n"
 "Import and convert the PyPI package for PACKAGE-NAME.\n"
@@ -6332,141 +7339,141 @@ msgid ""
 "Import and convert the Texlive package for PACKAGE-NAME.\n"
 msgstr ""
 
-#: guix/scripts/offload.scm:127
+#: guix/scripts/offload.scm:130
 #, scheme-format
 msgid "The 'system' field is deprecated, please use 'systems' instead.~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:135
+#: guix/scripts/offload.scm:138
 msgid ""
 "The build-machine object lacks a value for its 'systems'\n"
 "field."
 msgstr ""
 
-#: guix/scripts/offload.scm:176
+#: guix/scripts/offload.scm:179
 #, scheme-format
 msgid "'~a' did not return a list of build machines; ignoring it~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:187
+#: guix/scripts/offload.scm:190
 #, scheme-format
 msgid "failed to open machine file '~a': ~a~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:194
+#: guix/scripts/offload.scm:197
 #, scheme-format
 msgid "failed to load machine file '~a': ~s~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:204
+#: guix/scripts/offload.scm:207
 #, scheme-format
 msgid "failed to load SSH private key from '~a': ~a"
 msgstr ""
 
-#: guix/scripts/offload.scm:245
+#: guix/scripts/offload.scm:251
 #, scheme-format
 msgid "SSH public key authentication failed for '~a': ~a~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:256
+#: guix/scripts/offload.scm:262
 #, scheme-format
 msgid "failed to connect to '~a': ~a~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:365
+#: guix/scripts/offload.scm:371
 #, scheme-format
 msgid "derivation '~a' offloaded to '~a' failed: ~a~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:381
+#: guix/scripts/offload.scm:387
 #, scheme-format
 msgid "build failure may have been caused by lack of free disk space on '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:550
+#: guix/scripts/offload.scm:556
 #, scheme-format
 msgid "timeout expired while offloading '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:623
+#: guix/scripts/offload.scm:574
+msgid "Guile-SSH lacks zlib support"
+msgstr ""
+
+#: guix/scripts/offload.scm:575
+msgid "data transfers will *not* be compressed!"
+msgstr ""
+
+#: guix/scripts/offload.scm:640
 #, scheme-format
 msgid "'~a' is running GNU Guile ~a~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:630
+#: guix/scripts/offload.scm:647
 #, scheme-format
 msgid "failed to run 'guix repl' on '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:637
+#: guix/scripts/offload.scm:654
 #, scheme-format
 msgid "(guix) module not usable on remote host '~a'"
 msgstr ""
 
-#: guix/scripts/offload.scm:647
+#: guix/scripts/offload.scm:664
 #, scheme-format
 msgid "Guix is usable on '~a' (test returned ~s)~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:650
+#: guix/scripts/offload.scm:667
 #, scheme-format
 msgid "failed to talk to guix-daemon on '~a' (test returned ~s)~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:670
+#: guix/scripts/offload.scm:687
 #, scheme-format
 msgid "'~a' successfully imported '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:672
+#: guix/scripts/offload.scm:689
 #, scheme-format
 msgid "'~a' was not properly imported on '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:682
+#: guix/scripts/offload.scm:699
 #, scheme-format
 msgid "successfully imported '~a' from '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:684
+#: guix/scripts/offload.scm:701
 #, scheme-format
 msgid "failed to import '~a' from '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:699
+#: guix/scripts/offload.scm:716
 #, scheme-format
 msgid "testing ~a build machines defined in '~a'...~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:723
+#: guix/scripts/offload.scm:740
 #, scheme-format
 msgid "getting status of ~a build machines defined in '~a'...~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:731
+#: guix/scripts/offload.scm:748
 #, scheme-format
 msgid "failed to run 'guix repl' on machine '~a'~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:742
+#: guix/scripts/offload.scm:759
 #, scheme-format
 msgid "machine '~a' is ~a seconds behind~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:788
-msgid "Guile-SSH lacks zlib support"
-msgstr ""
-
-#: guix/scripts/offload.scm:789
-msgid "data transfers will *not* be compressed!"
-msgstr ""
-
-#: guix/scripts/offload.scm:814
+#: guix/scripts/offload.scm:824
 #, scheme-format
 msgid "invalid request line: ~s~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:843
+#: guix/scripts/offload.scm:853
 #, scheme-format
 msgid ""
 "Usage: guix offload SYSTEM MAX-SILENT-TIME PRINT-BUILD-TRACE? BUILD-TIMEOUT\n"
@@ -6474,13 +7481,13 @@ msgid ""
 "offloading builds to the machines listed in '~a'.~%"
 msgstr ""
 
-#: guix/scripts/offload.scm:848
+#: guix/scripts/offload.scm:858
 msgid ""
 "\n"
 "This tool is meant to be used internally by 'guix-daemon'.\n"
 msgstr ""
 
-#: guix/scripts/offload.scm:852
+#: guix/scripts/offload.scm:862
 #, scheme-format
 msgid "invalid arguments: ~{~s ~}~%"
 msgstr ""
@@ -6505,12 +7512,12 @@ msgstr ""
 msgid "fixed-output derivation and output file name expected~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:75
+#: guix/scripts/refresh.scm:76
 #, scheme-format
 msgid "~a: invalid selection; expected `core' or `non-core'~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:143
+#: guix/scripts/refresh.scm:144
 msgid ""
 "Usage: guix refresh [OPTION]... [PACKAGE]...\n"
 "Update package definitions to match the latest upstream version.\n"
@@ -6520,87 +7527,87 @@ msgid ""
 "specified with `--select'.\n"
 msgstr ""
 
-#: guix/scripts/refresh.scm:151
+#: guix/scripts/refresh.scm:152
 msgid ""
 "\n"
 "  -u, --update           update source files in place"
 msgstr ""
 
-#: guix/scripts/refresh.scm:153
+#: guix/scripts/refresh.scm:154
 msgid ""
 "\n"
 "  -s, --select=SUBSET    select all the packages in SUBSET, one of\n"
 "                         `core' or `non-core'"
 msgstr ""
 
-#: guix/scripts/refresh.scm:156
+#: guix/scripts/refresh.scm:157
 msgid ""
 "\n"
 "  -m, --manifest=FILE    select all the packages from the manifest in FILE"
 msgstr ""
 
-#: guix/scripts/refresh.scm:158
+#: guix/scripts/refresh.scm:159
 msgid ""
 "\n"
 "  -t, --type=UPDATER,... restrict to updates from the specified updaters\n"
 "                         (e.g., 'gnu')"
 msgstr ""
 
-#: guix/scripts/refresh.scm:161
+#: guix/scripts/refresh.scm:162
 msgid ""
 "\n"
 "  -L, --list-updaters    list available updaters and exit"
 msgstr ""
 
-#: guix/scripts/refresh.scm:163
+#: guix/scripts/refresh.scm:164
 msgid ""
 "\n"
 "  -l, --list-dependent   list top-level dependent packages that would need to\n"
 "                         be rebuilt as a result of upgrading PACKAGE..."
 msgstr ""
 
-#: guix/scripts/refresh.scm:166
+#: guix/scripts/refresh.scm:167
 msgid ""
 "\n"
 "  -r, --recursive        check the PACKAGE and its inputs for upgrades"
 msgstr ""
 
-#: guix/scripts/refresh.scm:168
+#: guix/scripts/refresh.scm:169
 msgid ""
 "\n"
 "      --list-transitive  list all the packages that PACKAGE depends on"
 msgstr ""
 
-#: guix/scripts/refresh.scm:171
+#: guix/scripts/refresh.scm:172
 msgid ""
 "\n"
 "      --keyring=FILE     use FILE as the keyring of upstream OpenPGP keys"
 msgstr ""
 
-#: guix/scripts/refresh.scm:173
+#: guix/scripts/refresh.scm:174
 msgid ""
 "\n"
 "      --key-server=HOST  use HOST as the OpenPGP key server"
 msgstr ""
 
-#: guix/scripts/refresh.scm:175
+#: guix/scripts/refresh.scm:176
 msgid ""
 "\n"
 "      --gpg=COMMAND      use COMMAND as the GnuPG 2.x command"
 msgstr ""
 
-#: guix/scripts/refresh.scm:183
+#: guix/scripts/refresh.scm:184
 msgid ""
 "\n"
 "      --load-path=DIR    prepend DIR to the package module search path"
 msgstr ""
 
-#: guix/scripts/refresh.scm:276
+#: guix/scripts/refresh.scm:277
 #, scheme-format
 msgid "~a: no such updater~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:280
+#: guix/scripts/refresh.scm:281
 #, scheme-format
 msgid "Available updaters:~%"
 msgstr ""
@@ -6608,106 +7615,106 @@ msgstr ""
 #. TRANSLATORS: The parenthetical expression here is rendered
 #. like "(42% coverage)" and denotes the fraction of packages
 #. covered by the given updater.
-#: guix/scripts/refresh.scm:292
+#: guix/scripts/refresh.scm:293
 #, scheme-format
 msgid "  - ~a: ~a (~2,1f% coverage)~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:301
+#: guix/scripts/refresh.scm:302
 #, scheme-format
 msgid "~2,1f% of the packages are covered by these updaters.~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:307
+#: guix/scripts/refresh.scm:308
 #, scheme-format
 msgid "no updater for ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:327
+#: guix/scripts/refresh.scm:328
 #, scheme-format
 msgid "~a: updating from version ~a to version ~a...~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:336
+#: guix/scripts/refresh.scm:349
 #, scheme-format
 msgid "~a: consider adding this input: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:338
+#: guix/scripts/refresh.scm:352
 #, scheme-format
 msgid "~a: consider adding this native input: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:340
+#: guix/scripts/refresh.scm:355
 #, scheme-format
 msgid "~a: consider adding this propagated input: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:342
+#: guix/scripts/refresh.scm:358
 #, scheme-format
 msgid "~a: consider removing this input: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:344
+#: guix/scripts/refresh.scm:361
 #, scheme-format
 msgid "~a: consider removing this native input: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:346
+#: guix/scripts/refresh.scm:364
 #, scheme-format
 msgid "~a: consider removing this propagated input: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:353
+#: guix/scripts/refresh.scm:369
 #, scheme-format
 msgid "~a: version ~a could not be downloaded and authenticated; not updating~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:370
+#: guix/scripts/refresh.scm:386
 #, scheme-format
 msgid "~a would be upgraded from ~a to ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:376
+#: guix/scripts/refresh.scm:392
 #, scheme-format
 msgid "~a is already the latest version of ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:382
+#: guix/scripts/refresh.scm:398
 #, scheme-format
 msgid "~a is greater than the latest known version of ~a (~a)~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:393
+#: guix/scripts/refresh.scm:409
 #, scheme-format
 msgid "'~a' updater failed to determine available releases for ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:432
+#: guix/scripts/refresh.scm:448
 #, scheme-format
 msgid "No dependents other than itself: ~{~a~}~%"
 msgid_plural "No dependents other than themselves: ~{~a~^ ~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/scripts/refresh.scm:439
+#: guix/scripts/refresh.scm:455
 #, scheme-format
 msgid "A single dependent package: ~a~%"
 msgstr ""
 
-#: guix/scripts/refresh.scm:443
+#: guix/scripts/refresh.scm:459
 #, scheme-format
 msgid "Building the following ~d package would ensure ~d dependent packages are rebuilt: ~{~a~^ ~}~%"
 msgid_plural "Building the following ~d packages would ensure ~d dependent packages are rebuilt: ~{~a~^ ~}~%"
 msgstr[0] ""
 msgstr[1] ""
 
-#: guix/scripts/refresh.scm:467
+#: guix/scripts/refresh.scm:483
 #, scheme-format
 msgid "~a depends on the following ~d packages: ~{~a~^ ~}~%."
 msgstr ""
 
-#: guix/scripts/refresh.scm:471
+#: guix/scripts/refresh.scm:487
 #, scheme-format
 msgid "The following ~d packages all are dependent packages: ~{~a~^ ~}~%"
 msgstr ""
@@ -6768,17 +7775,136 @@ msgstr ""
 msgid "~a: unknown type of REPL~%"
 msgstr ""
 
-#: guix/scripts/system/reconfigure.scm:311
+#: guix/scripts/shell.scm:46
+msgid ""
+"Usage: guix shell [OPTION] PACKAGES... [-- COMMAND...]\n"
+"Build an environment that includes PACKAGES and execute COMMAND or an\n"
+"interactive shell in that environment.\n"
+msgstr ""
+
+#: guix/scripts/shell.scm:52
+msgid ""
+"\n"
+"  -D, --development      include the development inputs of the next package"
+msgstr ""
+
+#: guix/scripts/shell.scm:54
+msgid ""
+"\n"
+"  -f, --file=FILE        add to the environment the package FILE evaluates to"
+msgstr ""
+
+#: guix/scripts/shell.scm:56
+msgid ""
+"\n"
+"  -q                     inhibit loading of 'guix.scm' and 'manifest.scm'"
+msgstr ""
+
+#: guix/scripts/shell.scm:58
+msgid ""
+"\n"
+"      --rebuild-cache    rebuild cached environment, if any"
+msgstr ""
+
+#: guix/scripts/shell.scm:199
+#, scheme-format
+msgid "ignoring invalid file name: '~a'~%"
+msgstr ""
+
+#: guix/scripts/shell.scm:280
+#, scheme-format
+msgid "loading environment from '~a'...~%"
+msgstr ""
+
+#: guix/scripts/shell.scm:286
+#, scheme-format
+msgid "not loading '~a' because not authorized to do so~%"
+msgstr ""
+
+#: guix/scripts/shell.scm:288
+#, scheme-format
+msgid ""
+"To allow automatic loading of\n"
+"@file{~a} when running @command{guix shell}, you must explicitly authorize its\n"
+"directory, like so:\n"
+"\n"
+"@example\n"
+"echo ~a >> ~a\n"
+"@end example\n"
+msgstr ""
+
+#: guix/scripts/shell.scm:386
+msgid ""
+"Consider passing the @option{--check} option once\n"
+"to make sure your shell does not clobber environment variables."
+msgstr ""
+
+#: guix/scripts/style.scm:241
+#, scheme-format
+msgid "~a: complex expression, bailing out~%"
+msgstr ""
+
+#: guix/scripts/style.scm:259
+#, scheme-format
+msgid "~a: input label '~a' does not match package name, bailing out~%"
+msgstr ""
+
+#: guix/scripts/style.scm:264
+#, scheme-format
+msgid "~a: non-trivial input, bailing out~%"
+msgstr ""
+
+#: guix/scripts/style.scm:288
+#, scheme-format
+msgid "~a: input expression is too short~%"
+msgstr ""
+
+#: guix/scripts/style.scm:380
+#, scheme-format
+msgid "~a: unsupported input style, bailing out~%"
+msgstr ""
+
+#: guix/scripts/style.scm:392
+#, scheme-format
+msgid "would be edited~%"
+msgstr ""
+
+#: guix/scripts/style.scm:482
+#, scheme-format
+msgid "~a: invalid input simplification policy~%"
+msgstr ""
+
+#: guix/scripts/style.scm:496
+msgid ""
+"Usage: guix style [OPTION]... [PACKAGE]...\n"
+"Update package definitions to the latest style.\n"
+msgstr ""
+
+#: guix/scripts/style.scm:498
+msgid ""
+"\n"
+"  -n, --dry-run          display files that would be edited but do nothing"
+msgstr ""
+
+#: guix/scripts/style.scm:504
+msgid ""
+"\n"
+"      --input-simplification=POLICY\n"
+"                         follow POLICY for package input simplification, one\n"
+"                         of 'silent', 'safe', or 'always'"
+msgstr ""
+
+#: guix/scripts/system/reconfigure.scm:317
 #, scheme-format
 msgid "aborting reconfiguration because commit ~a of channel '~a' is not a descendant of ~a"
 msgstr ""
 
-#: guix/scripts/system/reconfigure.scm:371
+#: guix/scripts/system/reconfigure.scm:377
 #, scheme-format
 msgid "cannot determine provenance for current system~%"
 msgstr ""
 
-#: guix/scripts/system/reconfigure.scm:373
+#: guix/scripts/system/reconfigure.scm:379
 #, scheme-format
 msgid "cannot determine provenance of ~a~%"
 msgstr ""