guix-play/guix/scripts
Ludovic Courtès 8af9a2aa5f
substitute: If a server's nar URL is 404, try the next one(s).
If a substitute server advertises in its narinfo, for example, both a
/zstd and a /lzip URL but the /zstd URL is unreachable, try the /lzip
URL.

Fixes <https://issues.guix.gnu.org/63634>.

* guix/narinfo.scm (narinfo-preferred-uris): New procedure.
(narinfo-best-uri): Rebase on top of it.
* guix/scripts/substitute.scm (download-nar)[try-fetch]: New procedure.
Use 'narinfo-preferred-uris' and 'try-fetch' to attempt all the URLs of
NARINFO.
* tests/substitute.scm (request-substitution): Remove 'parameterize'.
Delete DESTINATION.
("substitute, preferred nar URL is 404, other is 200"): New test.
2023-05-30 00:15:29 +02:00
..
container container: Correctly report exit status. 2023-01-30 22:24:27 +01:00
git
home ui: 'display-hint' quotes extra arguments for Texinfo. 2023-02-27 23:40:43 +01:00
import scripts: import: elpa: Return consistent error code. 2023-05-17 22:22:22 +02:00
system Merge remote-tracking branch 'savannah/master' into core-updates 2023-03-02 10:55:08 +00:00
archive.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
authenticate.scm
build.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
challenge.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
container.scm
copy.scm
deploy.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
describe.scm ui: 'display-hint' quotes extra arguments for Texinfo. 2023-02-27 23:40:43 +01:00
discover.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
download.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
edit.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
environment.scm environment: Really auto-load (guix scripts pack). 2023-04-19 20:12:19 -04:00
gc.scm
git.scm
graph.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
hash.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
home.scm Merge remote-tracking branch 'origin/master' into core-updates 2023-03-20 18:49:06 +01:00
import.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
install.scm
lint.scm
offload.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
pack.scm pack: "fakechroot" engine passes the recursive RUNPATH to ld.so. 2023-03-17 23:20:35 +01:00
package.scm Merge remote-tracking branch 'origin/master' into core-updates 2023-03-20 18:49:06 +01:00
perform-download.scm
processes.scm
publish.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
pull.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
refresh.scm refresh: Honor '--key-server'. 2023-05-18 19:20:58 +02:00
remove.scm
repl.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
search.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
shell.scm environment: Add '--nesting'. 2023-04-06 18:34:15 +02:00
show.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
size.scm
style.scm style: Add 'arguments' styling rule. 2023-05-18 20:01:32 +02:00
substitute.scm substitute: If a server's nar URL is 404, try the next one(s). 2023-05-30 00:15:29 +02:00
system.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
time-machine.scm guix: Strip #:use-module lists. 2023-03-13 15:08:33 +01:00
upgrade.scm
weather.scm