summaryrefslogtreecommitdiff
path: root/guix/scripts
AgeCommit message (Collapse)Author
2023-11-15locate: Accept ‘--clear’ without additional arguments.Ludovic Courtès
Fixes a bug whereby ‘guix locate --clear’ would end with the “no files to search for” error. Fixes <https://issues.guix.gnu.org/66799>. * guix/scripts/locate.scm (guix-locate): Do not emit “no files to search for” error when 'clear? is set in OPTS. * tests/guix-locate.sh: Test it. Reported-by: Maciej Kalandyk <m.kalandyk@outlook.com> Change-Id: Ib8fa125c18481d7f5408bd89df9503713527641d
2023-11-05time-machine: Warn when no command is given.Ludovic Courtès
* guix/scripts/time-machine.scm (guix-time-machine): Emit a warning when COMMAND-LINE is false. Change-Id: I26e6b608915ecaf6d9372f9b03dc5ebd1b4c68f9
2023-11-05time-machine: Make target commit check cheaper.Ludovic Courtès
Commit 79ec651a286c71a3d4c72be33a1f80e76a560031 introduced a check to error out when attempting to use ‘time-machine’ to travel to a commit before ‘v1.0.0’. This commit fixes a performance issue with the strategy used in 79ec651a286c71a3d4c72be33a1f80e76a560031 (the repository was opened, updated, and traversed a second time by ‘validate-guix-channel’) as well as a user interface issue (“Updating channel” messages would be printed too late). This patch reimplements the check in terms of the existing #:validate-pull mechanism, which is designed to avoid extra repository operations. Fixes <https://issues.guix.gnu.org/65788>. * guix/inferior.scm (cached-channel-instance): Change default value of #:validate-channels. Remove call to VALIDATE-CHANNELS; pass it as #:validate-pull to ‘latest-channel-instances’. * guix/scripts/time-machine.scm (%reference-channels): New variable. (validate-guix-channel): New procedure, written as a simplification of… (guix-time-machine)[validate-guix-channel]: … this. Remove. Pass #:reference-channels to ‘cached-channel-instance’. Reported-by: Simon Tournier <zimon.toutoune@gmail.com> Change-Id: I9b0ec61fba7354fe08b04a91f4bd32b72a35460c
2023-11-05scripts: edit: Fix relative file-name with 'load-path' option.Simon Tournier
* guix/scripts/edit.scm (search-path*): Return 'file' if exists when 'search-path' fails. Change-Id: I891d63d0d28577a7d1732fc59435828ecc0a5c5a
2023-10-28environment: Fix typo in error messages.Ludovic Courtès
* guix/scripts/environment.scm (guix-environment*): Fix typo in error messages. Change-Id: I0b8669cb43267d0456a70f3b157514a6bcc725e8
2023-10-28environment: Parameterize ‘%graft?’ early on.Ludovic Courtès
Previously, ‘%graft?’ would be parameterized after ‘package-derivation’ had been called for ‘%guile-for-build’, which is too late. * guix/scripts/environment.scm (guix-environment*)[with-store/maybe]: Parameterize ‘%graft?’. Remove ‘%graft?’ parameterization from body. Change-Id: I65ef4a8c5f27e19a49196005871e5f7057fabaec
2023-10-28environment: Honor ‘-s’ for guile-for-build.Ludovic Courtès
Partly fixes <https://issues.guix.gnu.org/65225>. * guix/scripts/environment.scm (guix-environment*): Pass SYSTEM to ‘package-derivation’ when defining ‘%guile-for-build’. Reported-by: Simon Tournier <zimon.toutoune@gmail.com> Change-Id: I9d883f1e61fac72754fdc9dee9b7c8a3dea32add
2023-10-18locate: Do not return the system database when it is too old.Ludovic Courtès
Fixes a bug whereby ‘guix locate’ would pick the system database, then decide it’s too old, try to update it, and fail because it’s not writable by unprivileged users. Fixes <https://issues.guix.gnu.org/66612>. * guix/scripts/locate.scm (file-age): New procedure. (suitable-database): Add ‘age-update-threshold’ parameter and honor it. (guix-locate): Remove ‘file-age’. Pass ‘age-update-threshold’ to the ‘database’ option. Reported-by: Matt Wette <matt.wette@gmail.com>
2023-10-17scripts: weather: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/weather.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: upgrade: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/upgrade.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: time-machine: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/time-machine.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: substitute: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/substitute.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: system: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/system.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: style: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/style.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: size: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/size.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: show: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/show.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: shell: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/shell.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: search: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/search.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: repl: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/repl.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: remove: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/remove.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: refresh: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/refresh.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: pull: Handle EPIPE errors when displaying help.Simon Tournier
Reported by Mathieu Othacehe <othacehe@gnu.org>. * guix/scripts/pull.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: publish: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/publish.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: processes: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/processes.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: package: Handle EPIPE errors when displaying help.Simon Tournier
Reported by Mathieu Othacehe <othacehe@gnu.org>. * guix/scripts/package.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: pack: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/pack.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: offload: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/offload.scm (guix-offload): Handle EPIPE errors when displaying help.
2023-10-17scripts: locate: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/locate.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: lint: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/lint.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: install: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/install.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: import: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/import.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: home: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/home.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: hash: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/hash.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: graph: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/graph.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: git: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/git.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: gc: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/gc.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: edit: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/edit.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: download: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/download.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: discover: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/discover.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: describe: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/describe.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: deploy: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/deploy.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: copy: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/copy.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: container: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/container.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: challenge: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/challenge.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: build: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/build.scm (%options): Handle EPIPE errors when displaying help.
2023-10-17scripts: archive: Handle EPIPE errors when displaying help.Simon Tournier
* guix/scripts/archive.scm (%options): Handle EPIPE errors when displaying help.
2023-10-16pack: Allow setting a custom image tag for Docker imagesSören Tempel
Previously, the image repository name was automatically computed from the packages in the manifest without allowing the user to set a custom one. As such, changing the packages in the manifest would result in a new image name. Thereby requiring updating documentation et cetera when using `docker load` directory on the resulting image. Inspired by `docker build -t`, this commit adds a new Docker-specific option to `guix pack` which allows setting a custom repository name for the resulting image. If this option is not specified, pack falls back to computing the name from the manifest. Therefore, this change is entirely backwards compatible. Documentation has been added with: 373ec2cf8ce97d5f89191c3d9211ee3a5c2067dc. * guix/scripts/pack.scm (guix-pack): Add --image-tag option. (%docker-format-options): New constant. (show-docker-format-options): New procedure. (show-docker-format-options/detailed): New procedure. (docker-image): Allow setting a custom repository name for the created docker image via extra-options. Signed-off-by: Sören Tempel <soeren@soeren-tempel.net> Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2023-10-12shell: Take grafting into account when caching.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/64856>. * guix/scripts/shell.scm (profile-file-cache-key) (profile-spec-cache-key): Take (%graft?) into account. Reported-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-10-05perform-download: Set PATH before invoking ‘git’.Ludovic Courtès
Fixes <https://issues.guix.gnu.org/66305>. Reported by Guillaume Le Vaillant <glv@posteo.net>. * guix/scripts/perform-download.scm (perform-git-download): Add call to ‘setenv’.
2023-10-05refresh: Fix sorting of updates by file and line number.Ricardo Wurmus
* guix/scripts/refresh.scm (guix-refresh): Add cascade-sort procedure and use it to sort specs by package location.