lix/src/libutil
Tony Olagbaiye 5b8c1deb18 fetchTree: Allow fetching plain files
Add a new `file` fetcher type, which will fetch a plain file over
http(s), or from the local file.

Because plain `http(s)://` or `file://` urls can already correspond to
`tarball` inputs (if the path ends-up with a know archive extension),
the URL parsing logic is a bit convuluted in that:

- {http,https,file}:// urls will be interpreted as either a tarball or a
  file input, depending on the extensions of the path part (so
  `https://foo.com/bar` will be a `file` input and
  `https://foo.com/bar.tar.gz` as a `tarball` input)
- `file+{something}://` urls will be interpreted as `file` urls (with
  the `file+` part removed)
- `tarball+{something}://` urls will be interpreted as `tarball` urls (with
  the `tarball+` part removed)

Fix #3785

Co-Authored-By: Tony Olagbaiye <me@fron.io>
2022-05-19 18:24:49 +02:00
..
tests Fix the parsing of the sourcehut refs file 2022-05-04 14:38:59 +02:00
abstract-setting-to-json.hh reproducibility: hide non-reproducible settings from manual 2021-12-01 17:25:58 +01:00
ansicolor.hh Change warnings from yellow to magenta 2021-09-14 10:42:29 +02:00
archive.cc libfetchers/path: set lastModified to path's mtime 2022-03-15 12:32:11 +01:00
archive.hh libfetchers/path: set lastModified to path's mtime 2022-03-15 12:32:11 +01:00
args.cc Merge pull request #6128 from ncfavier/fix-completion 2022-04-19 13:45:33 +02:00
args.hh Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
callback.hh Move Callback into its own header 2020-09-21 18:42:21 +02:00
chunked-vector.hh Fix the darwin build 2022-04-22 10:56:56 +02:00
closure.hh Extract a generic computeClosure function 2021-05-19 11:44:58 +02:00
comparator.hh Recursively substitute the realisations 2021-05-26 18:44:17 +02:00
compression.cc Get rid of std::shared_ptr<std::string> and ref<std::string> 2022-01-18 11:12:30 +01:00
compression.hh Get rid of std::shared_ptr<std::string> and ref<std::string> 2022-01-18 11:12:30 +01:00
compute-levels.cc Add x86_64 compute levels as additional system types 2021-02-22 09:11:15 +01:00
compute-levels.hh Add x86_64 compute levels as additional system types 2021-02-22 09:11:15 +01:00
config.cc Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
config.hh reproducibility: hide non-reproducible settings from manual 2021-12-01 17:25:58 +01:00
error.cc Remove unused Error.name field 2022-04-08 11:31:51 +02:00
error.hh don't use Symbol in Pos to represent a path 2022-04-21 21:46:10 +02:00
experimental-features.cc Get rid of most .at calls (#6393) 2022-05-04 07:44:32 +02:00
experimental-features.hh nix profile: Support overriding outputs 2022-05-03 15:00:34 +02:00
finally.hh make Finally more local 2022-03-09 00:16:50 +01:00
fmt.hh Move hiliteMatches into a separate header 2022-04-21 12:06:29 +02:00
git.cc Fix the parsing of the sourcehut refs file 2022-05-04 14:38:59 +02:00
git.hh Fix the parsing of the sourcehut refs file 2022-05-04 14:38:59 +02:00
hash.cc don't assume that rev is a SHA1 hash 2022-04-07 19:49:47 +02:00
hash.hh don't assume that rev is a SHA1 hash 2022-04-07 19:49:47 +02:00
hilite.cc Move hiliteMatches into a separate header 2022-04-21 12:06:29 +02:00
hilite.hh Move hiliteMatches into a separate header 2022-04-21 12:06:29 +02:00
json-utils.hh Move json stuff out of util.cc 2022-05-04 11:22:06 +02:00
json.cc avoid ostream sentries per json string character 2022-01-07 06:53:47 +01:00
json.hh Make std::uncaught_exception warning less noisy 2019-10-09 23:04:11 +02:00
local.mk Don't overwrite user provided lib*_LDFLAGS 2021-08-25 08:59:19 -07:00
logging.cc libstore/derivation-goal: avoid double-parsing of JSON messages 2022-02-28 17:27:52 +01:00
logging.hh logging.hh: json.hpp -> json_fwd.hpp 2022-02-28 17:27:52 +01:00
lru-cache.hh Missing #include <cassert> in lru-cache.hh (#3654) 2020-06-03 10:15:22 +00:00
monitor-fd.hh monitor-fds: Fix on macOS. 2018-02-14 18:26:37 -05:00
pool.hh RemoteStore: Close connection if an exception occurs 2018-10-16 23:36:15 +02:00
ref.hh remove pos<T> 2022-04-21 21:56:34 +02:00
serialise.cc Remove unused Error.name field 2022-04-08 11:31:51 +02:00
serialise.hh Remove std::string alias (for real this time) 2022-02-25 16:13:02 +01:00
split.hh Typo 2020-09-17 20:21:04 +02:00
suggestions.cc Implement operator<< for Suggestions 2022-03-07 10:09:10 +01:00
suggestions.hh Merge or-suggestions.hh into suggestions.hh 2022-03-07 17:49:02 +01:00
sync.hh sync.hh: return cv_status instead of dropping it, in case useful. 2018-06-18 17:31:00 -05:00
tarfile.cc Revert "TarArchive: Small refactoring" 2022-03-24 22:30:46 +01:00
tarfile.hh Revert "TarArchive: Small refactoring" 2022-03-24 22:30:46 +01:00
thread-pool.cc Remove CPU locking 2021-12-22 15:56:25 +01:00
thread-pool.hh Fix extra ; warnings involving MakeError 2019-11-10 11:24:47 -05:00
topo-sort.hh Add missing #pragma once 2020-10-06 10:40:07 +02:00
types.hh Move ChunkedVector to its own header 2022-04-22 10:01:02 +02:00
url-parts.hh Allow empty path segments in urls 2022-04-08 16:09:49 +02:00
url.cc fetchTree: Allow fetching plain files 2022-05-19 18:24:49 +02:00
url.hh fetchTree: Allow fetching plain files 2022-05-19 18:24:49 +02:00
util.cc Move json stuff out of util.cc 2022-05-04 11:22:06 +02:00
util.hh Move json stuff out of util.cc 2022-05-04 11:22:06 +02:00
xml-writer.cc xml-writer: Remove std aliases 2022-02-25 16:13:02 +01:00
xml-writer.hh xml-writer: Remove std aliases 2022-02-25 16:13:02 +01:00