guix-kreyren/guix/scripts
Ludovic Courtès 9da5ec7099
substitute: Choose compression method based on past CPU usage.
This stems from the observation that substitute download can be
CPU-bound when high-speed networks are in use:

  https://lists.gnu.org/archive/html/guix-devel/2020-12/msg00177.html

* guix/narinfo.scm (decompresses-faster?): New procedure.
(narinfo-best-uri): Add #:fast-decompression?.
* guix/scripts/substitute.scm (%prefer-fast-decompression?): New
variable.
(call-with-cpu-usage-monitoring): New procedure.
(with-cpu-usage-monitoring): New macro.
(display-narinfo-data, process-substitution): Pass #:fast-decompression?
to 'narinfo-best-uri'.
(process-substitution): Wrap 'restore-file' call in
'with-cpu-usage-monitoring'.  Set '%prefer-fast-decompression?'.
2021-03-21 23:41:01 +01:00
..
container scripts: container: Fix typo. 2019-09-23 11:56:40 -07:00
git Add 'guix git authenticate'. 2020-07-11 12:33:01 +02:00
import import: Add Go importer. 2021-03-10 18:01:48 +01:00
system guix system: Adjust 'upgrade-shepherd-services' to shepherd service change. 2021-01-30 18:23:52 +01:00
archive.scm archive: Note service type in ACL hint. 2021-01-20 18:49:29 +01:00
authenticate.scm authenticate: Encode strings as ISO-8859-1. 2020-09-15 14:40:20 +02:00
build.scm guix package: Autoload Guile-JSON and (guix describe). 2021-03-19 13:23:27 +01:00
challenge.scm guix: Split (guix substitutes) from (guix scripts substitute). 2021-03-05 21:06:03 +00:00
container.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
copy.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
deploy.scm deploy: Let key-and-args exceptions through. 2020-11-26 23:39:15 +01:00
describe.scm guix describe: Autoload Guile-JSON. 2021-03-19 13:23:27 +01:00
discover.scm scripts: discover: Remove previous cache file. 2020-12-20 10:56:45 +01:00
download.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
edit.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
environment.scm environment: Allow compilation with Guile 2.2. 2021-03-01 17:45:50 +01:00
gc.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
git.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
graph.scm transformations: Show '--help-transform' only where applicable. 2020-11-21 12:39:14 +01:00
hash.scm guix hash: Honor '-H' when used alongside '-r'. 2021-01-04 11:51:48 +01:00
import.scm import: Add Go importer. 2021-03-10 18:01:48 +01:00
install.scm transformations: Show '--help-transform' only where applicable. 2020-11-21 12:39:14 +01:00
lint.scm scripts: lint: Display result of checkers on stdout. 2020-11-21 10:23:08 +00:00
offload.scm ssh: Use 'guix repl' instead of 'guile'. 2020-12-23 16:03:32 +01:00
pack.scm profiles: 'package->manifest-entry' preserves transformations by default. 2021-03-05 12:49:27 +01:00
package.scm guix package: Autoload Guile-JSON and (guix describe). 2021-03-19 13:23:27 +01:00
perform-download.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
processes.scm processes: Add '--format' and the "normalized" format. 2020-11-29 23:55:57 +01:00
publish.scm publish: Add support for zstd compression. 2021-01-13 22:24:19 +01:00
pull.scm pull: Expand help text for --{url,commit,branch}. 2021-03-05 19:07:31 +01:00
refresh.scm guix: refresh: Do not use argument jumping with ngettext. 2020-11-18 20:58:51 +01:00
remove.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
repl.scm describe: Save the original value of (program-arguments). 2020-09-19 22:52:36 +02:00
search.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
show.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
size.scm scripts: Use 'define-command' and have 'guix help' use that. 2020-09-10 12:27:24 +02:00
substitute.scm substitute: Choose compression method based on past CPU usage. 2021-03-21 23:41:01 +01:00
system.scm scripts: system: Activate system when switching generations. 2021-03-09 06:56:17 +01:00
time-machine.scm time-machine: Fail when unrecognized option. 2021-03-11 23:19:53 +01:00
upgrade.scm upgrade: Allow several regexps. 2020-12-01 11:34:10 +01:00
weather.scm weather: Only show request statistics when requests were made. 2021-03-17 23:12:31 +00:00