summaryrefslogtreecommitdiff
path: root/guix/download.scm
AgeCommit message (Collapse)Author
2021-10-15download: "GUIX_DOWNLOAD_FALLBACK_TEST=none" disables fallback mechanisms.Ludovic Courtès
* guix/download.scm (url-fetch*): Handle (%download-fallback-test) set to 'none.
2021-10-14download: Add parameter to test download fallback mechanisms.Ludovic Courtès
This allows you to run, say: GUIX_DOWNLOAD_FALLBACK_TEST=disarchive-mirrors guix build -S r-ebimage --check or: GUIX_DOWNLOAD_FALLBACK_TEST=content-addressed-mirrors ./pre-inst-env guix build -S r-ebimage --check to check whether these fallback mechanisms work as expected. * guix/download.scm (%no-mirrors-file, %no-disarchive-mirrors-file) (%download-fallback-test): New variables. (url-fetch*): Honor (%download-fallback-test).
2021-10-14download: Add disarchive.guix.gnu.org.Ludovic Courtès
* guix/download.scm (%disarchive-mirrors): Add disarchive.guix.gnu.org.
2021-09-14download: Disarchive mirrors can be URL-returning procedures.Ludovic Courtès
As discussed at <https://issues.guix.gnu.org/47336#16>. * guix/build/download.scm (url-fetch)[disarchive-uris]: Accept MIRROR as a procedure. * guix/download.scm (%disarchive-mirrors): Add comment. This change can only be made once a 'guix perform-download' that understands procedures is widely deployed.
2021-09-14download: Remove obsolete workaround.Ludovic Courtès
* guix/download.scm (%content-addressed-mirrors): Use (guix base16) unconditionally.
2021-07-27download: Remove defunct GNOME mirrors.Leo Famulari
* guix/download.scm (%mirrors): Remove defunct GNOME mirrors, and try the canonical site first.
2021-05-22lint: archival: Lookup content in Disarchive database.Ludovic Courtès
* guix/lint.scm (lookup-disarchive-spec): New procedure. (check-archival): When 'lookup-content' returns #f, call 'lookup-disarchive-spec'. Call 'lookup-directory' on the result of 'lookup-directory'. * guix/download.scm (%disarchive-mirrors): Make public. * tests/lint.scm ("archival: missing content"): Set '%disarchive-mirrors'. ("archival: content unavailable but disarchive available"): New test.
2021-04-29download: Use Disarchive as a last resort.Timothy Sample
This is a fixed version of 66b14dccdd0d83c875ce3a8d50ceab8b6f0a3ce2, which was reverted in e74250c3c535b75dd2225a26df51febb7ed94654. * guix/download.scm (%disarchive-mirrors): New variable. (%disarchive-mirror-file): New variable. (built-in-download): Add 'disarchive-mirrors' keyword argument and pass its value along to the 'builtin:download' derivation. (url-fetch): Pass '%disarchive-mirror-file' to 'built-in-download'. * guix/scripts/perform-download.scm (perform-download): Read Disarchive mirrors from the environment and pass them to 'url-fetch'. * guix/build/download.scm (disarchive-fetch/any): New procedure. (url-fetch): Add 'disarchive-mirrors' keyword argument, use it to make a list of URIs, and use the new procedure to fetch the file if all other methods fail. * build-aux/build-self.scm (build-program)[select?]: Exclude '(guix build download)'. * guix/self.scm (compiled-guix)[*core-modules*]: Add 'guile-json' to the list of extensions.
2021-04-28Revert "download: Use Disarchive as a last resort."Timothy Sample
This reverts commit 66b14dccdd0d83c875ce3a8d50ceab8b6f0a3ce2, which broke 'guix pull'.
2021-04-27download: Use Disarchive as a last resort.Timothy Sample
* guix/download.scm (%disarchive-mirrors): New variable. (%disarchive-mirror-file): New variable. (built-in-download): Add 'disarchive-mirrors' keyword argument and pass its value along to the 'builtin:download' derivation. (url-fetch): Pass '%disarchive-mirror-file' to 'built-in-download'. * guix/scripts/perform-download.scm (perform-download): Read Disarchive mirrors from the environment and pass them to 'url-fetch'. * guix/build/download.scm (disarchive-fetch/any): New procedure. (url-fetch): Add 'disarchive-mirrors' keyword argument, use it to make a list of URIs, and use the new procedure to fetch the file if all other methods fail.
2021-03-19download: Autoload (guix build download).Ludovic Courtès
* guix/download.scm: Autoload (guix build download). (url-fetch): Rename to... (url-fetch*): ... this, locally, to allow for #:autoload. * guix/status.scm: Autoload (guix build download).
2021-03-05download: 'url-fetch/tarbomb' and 'url-fetch/zipbomb' refer to native tools.Ludovic Courtès
* guix/download.scm (url-fetch/tarbomb, url-fetch/zipbomb): Use 'ungexp-native' instead of 'ungexp' when referring to the decompression tools.
2020-12-13download: Update ImageMagick mirror list.Marius Bakke
* guix/download.scm (%mirrors): Remove defunct ImageMagick mirrors, update URLs for directory structure changes (/releases instead of /legacy). Move official site last.
2020-10-20download: Update docstring.Ludovic Courtès
* guix/download.scm (url-fetch): Update docstring to match what's in the manual.
2020-07-20download: Add Savannah mirror.Ludovic Courtès
* guix/download.scm (%mirrors): Add nongnu.freemirror.org.
2020-07-05download: Replace misconfigured Apache mirror.Tobias Geerinckx-Rice
E.g. <http://apache.belnet.be/jakarta/oro/jakarta-oro-2.0.8.tar.gz> redirects to a bogus 200 HTML page. * guix/download.scm (%mirrors): Replace apache.belnet.be with ftp.nluug.nl.
2020-06-15download: Remove usa-mirror.go-parts.com mirror.Tobias Geerinckx-Rice
It incorrectly redirects 404s (at least) to the commercial home page. * guix/download.scm (%mirrors): Remove usa-mirror.go-parts.com URLs.
2020-06-12download: Add more apache mirrors.Efraim Flashner
* guix/download.scm (%mirrors): Add more apache mirrors.
2020-04-08download: Use correct system and guile in 'url-fetch/tarbomb' and ↵Diego Nicola Barbato
'url-fetch/zipbomb'. Fixes <https://bugs.gnu.org/40115>. Previously the result of `guix build -s $system $package' would depend on the system Guix was built for if $package or one of its dependencies used 'url-fetch/tarbomb' or 'url-fetch/zipbomb' as the origin method of its source (e.g. `guix build -s i686-linux ffmpeg' on i686-linux would build a different derivation than on x86_64-linux). This patch fixes this by explicitly passing the correct system and guile to 'gexp->derivation'. * guix/download.scm (url-fetch/tarbomb): Pass #:system system and #:guile-for-build guile to 'gexp->derivation', where guile is the derivation of guile for system. (url-fetch/zipbomb): Likewise. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-03-09download: Remove misbehaving kvin.lv mirror.Tobias Geerinckx-Rice
It issues bogus redirections instead of returning 404. * guix/download.scm (%mirrors): Remove kvin.lv from CPAN.
2019-12-18download: Remove ramses.wh2.tu-dresden.de kernel mirror.Mark H Weaver
* guix/download.scm (%mirrors): Remove ramses.wh2.tu-dresden.de, which seems to no longer work.
2019-07-17Merge branch 'master' into core-updatesLudovic Courtès
2019-07-15download: Use the new 'derivation' calling convention.Ludovic Courtès
* guix/download.scm (built-in-download): Pass MIRRORS and CONTENT-ADDRESSED-MIRRORS as #:sources, not #:inputs.
2019-07-02Merge branch 'staging' into core-updatesMarius Bakke
2019-06-29download: Remove hydra from content-addressed URL listTobias Geerinckx-Rice
* guix/build/download-nar.scm (urls-for-item): Remove mirror.hydra.gnu.org. * guix/download.scm (%content-addressed-mirrors): Likewise.
2019-06-14download: Add 'url-fetch/executable'.Ludovic Courtès
* guix/download.scm (built-in-download): Add #:executable? parameter. Pass #:recursive? to 'raw-derivation' and add "executable" to the #:env-vars alist when EXECUTABLE? is true. (url-fetch): Add #:executable? and pass it to 'built-in-download'. (url-fetch/executable): New procedure.
2019-06-10download: Update list of content-addressed mirrors.Ludovic Courtès
* guix/download.scm (%content-addressed-mirrors): Change "berlin.guixsd.org" to "ci.guix.gnu.org" and move it first.
2019-04-16store: Memoize 'built-in-builders' call directly in <store-connection>.Ludovic Courtès
The caching strategy introduced in 40cc850aebb497faed0a11d867d8fcee729023df was ineffective since we regularly start from an empty object cache. For example, "guix build inkscape -n" would make 241 'built-in-builders' RPCs. * guix/store.scm (<store-connection>)[built-in-builders]: New field. (open-connection): Adjust '%make-store-connection' call accordingly. (port->connection): Likewise. (built-in-builders): Rename to... (%built-in-builders): ... this. (built-in-builders): New procedure. * guix/download.scm (built-in-builders*): Remove 'mcached' call.
2019-03-15download: Add MATE mirrors.Guy Fleury Iteriteka
* guix/download.scm (%mirrors): Add mirrors for the MATE Desktop.
2018-12-19download: 'built-in-builders*' relies on the functional cache.Ludovic Courtès
The previous caching strategy, which used STORE as an 'eq?' key, would no longer work when the functional cache is used because subsequent store values are not 'eq?'. * guix/download.scm (built-in-builders*): Rewrite in terms of 'mcached'.
2018-11-28download: Add berlin.guixsd.org as a content-addressed mirror.Ludovic Courtès
* guix/download.scm (%content-addressed-mirrors)[guix-publish]: New procedure. Use it for "mirror.hydra.gnu.org" and add "berlin.guixsd.org" too.
2018-11-28download: Make (guix base16) a soft dependency.Ludovic Courtès
Fixes <https://bugs.gnu.org/33542>. Reported by Mark H Weaver <mhw@netris.org>. * guix/download.scm (%content-addressed-mirrors): Autoload (guix base16).
2018-11-14download: Access content-addressed mirrors over HTTPS.Ludovic Courtès
Bug <http://bugs.gnu.org/22774> is no longer relevant now that we use "builtin:download" exclusively. * guix/download.scm (%content-addressed-mirrors): Use "https", not "http".
2018-11-14download: Add Software Heritage as a content-addressed mirror.Ludovic Courtès
* guix/download.scm (%content-addressed-mirrors): Add Software Heritage.
2018-05-29Merge branch 'master' into core-updatesRicardo Wurmus
2018-05-29download: Remove unused procedure.Ludovic Courtès
* guix/download.scm (gnutls-package): Remove.
2018-04-30Merge branch 'master' into core-updatesMark H Weaver
2018-04-23download: Use ungrafted tools in 'url-fetch/tarbomb' and 'url-fetch/zipbomb'.Ludovic Courtès
Fixes <https://bugs.gnu.org/31085>. Reported by Diego Nicola Barbato <dnbarbato@posteo.de>. * guix/download.scm (url-fetch/tarbomb): Pass #:graft? #f to 'gexp->derivation'. (url-fetch/zipbomb): Likewise.
2018-04-17download: Fix 'url-fetch/tarbomb' and 'url-fetch/zipbomb'.Mark H Weaver
Fixes a regression introduced in 20927c9331b493eaf94211ad9f8a5055e11b4588. Reported by Eric Bavier <ericbavier@centurylink.net>. * guix/download.scm (url-fetch/tarbomb, url-fetch/zipbomb): Within the gexp, import (guix build utils) for 'invoke'.
2018-03-20Merge branch 'master' into core-updatesMark H Weaver
2018-03-17download: Remove TU Wien mirror.Mark H Weaver
* guix/download.scm (%mirrors): Remove gd.tuwien.ac.at, which no longer seems to exist.
2018-03-16download: Use invoke instead of system*.Mark H Weaver
* guix/download.scm (url-fetch/tarbomb, url-fetch/zipbomb): Use invoke.
2017-11-19Merge branch 'master' into core-updatesMarius Bakke
2017-11-12download: Use HTTPS for the first ImageMagick mirror.Leo Famulari
* guix/download.scm (%mirrors)[imagemagick]: Use HTTPS for <sunsite.icm.edu.pl>.
2017-11-12download: Try FTP servers last.Leo Famulari
* guix/download.scm (%mirrors)[savannah, kernel.org, apache, xorg, imagemagick]: Re-arrange so that FTP is last.
2017-11-01Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2017-11-01download: Refresh the cpan.org mirror list.Tobias Geerinckx-Rice
* guix/download.scm (%mirrors)[cpan]: Update the list of CPAN mirrors (of which several are dead) with a more-or-less geographically diverse selection.
2017-10-10Merge branch 'master' into core-updatesMarius Bakke
2017-10-10guix: mirrors: Add kde archive mirror.Efraim Flashner
* guix/download.scm (%mirrors)[kde]: Add kde-attic mirror.
2017-10-01Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner