1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2024-09-20 23:28:26 -04:00
nix/src/libexpr/primops
Eelco Dolstra 462421d345 Backport libfetchers from the flakes branch
This provides a pluggable mechanism for defining new fetchers. It adds
a builtin function 'fetchTree' that generalizes existing fetchers like
'fetchGit', 'fetchMercurial' and 'fetchTarball'. 'fetchTree' takes a
set of attributes, e.g.

  fetchTree {
    type = "git";
    url = "https://example.org/repo.git";
    ref = "some-branch";
    rev = "abcdef...";
  }

The existing fetchers are just wrappers around this. Note that the
input attributes to fetchTree are the same as flake input
specifications and flake lock file entries.

All fetchers share a common cache stored in
~/.cache/nix/fetcher-cache-v1.sqlite. This replaces the ad hoc caching
mechanisms in fetchGit and download.cc (e.g. ~/.cache/nix/{tarballs,git-revs*}).

This also adds support for Git worktrees (c169ea5904).
2020-04-07 09:03:14 +02:00
..
context.cc Make the Store API more type-safe 2019-12-10 22:06:05 +01:00
fetchGit.cc Backport libfetchers from the flakes branch 2020-04-07 09:03:14 +02:00
fetchMercurial.cc Backport libfetchers from the flakes branch 2020-04-07 09:03:14 +02:00
fetchTree.cc Backport libfetchers from the flakes branch 2020-04-07 09:03:14 +02:00
fromTOML.cc Remove global -I flags 2020-03-30 15:30:19 +02:00