Théophane Hufschmitt
7ebd6f1093
Merge pull request #5758 from mschwaig/fix-git-workspace-dirty-detection
...
git fetcher: fix detection of dirty git workspaces
2022-03-11 09:35:01 +01:00
Nicholas Sielicki
314852a10e
Point to new github oauth docs url
...
Previous URL was 404'ing.
2022-03-06 17:01:14 -06:00
John Ericson
ea71da395f
Move some stuff from Settings
to a new FetchSettings
.
...
Starting work on #5638
The exact boundary between `FetchSettings` and `EvalSettings` is not
clear to me, but that's fine. First lets clean out `libstore`, and then
worry about what, if anything, should be the separation between those
two.
2022-03-01 01:39:25 +00:00
Eelco Dolstra
df552ff53e
Remove std::string alias (for real this time)
...
Also use std::string_view in a few more places.
2022-02-25 16:13:02 +01:00
Eelco Dolstra
8518cebfce
libfetchers: Rename immutable -> locked
...
This is more consistent with flake terminology.
2022-02-24 18:09:00 +01:00
Théophane Hufschmitt
6524eb4b77
Merge pull request #5342 from Misterio77/add-sourcehut
...
Add support for sourcehut input scheme
2022-02-24 09:09:21 +01:00
Martin Schwaighofer
53523c0ab8
git fetcher: set locale for rev-parse
2022-02-19 22:58:23 +01:00
Martin Schwaighofer
9504445cab
git fetcher: distinguish errors more precisely
2022-02-19 22:58:23 +01:00
Martin Schwaighofer
c7e527b82b
git fetcher: invoke diff instead of diff-index
...
diff-index operates on the view that git has of the working tree,
which might be outdated. The higher-level diff command does this
automatically. This change also adds handling for submodules.
fixes #4140
Alternative fixes would be invoking update-index before diff-index or
matching more closely what require_clean_work_tree from git-sh-setup.sh
does, but both those options make it more difficult to reason about
correctness.
2022-02-19 22:58:23 +01:00
Martin Schwaighofer
0bfa0cdea1
git fetcher: improve check for valid repository
...
The .git/refs/heads directory might be empty for a valid
usable git repository. This often happens in CI environments,
which might only fetch commits, not branches.
Therefore instead we let git itself check if HEAD points to
something that looks like a commit.
fixes #5302
2022-02-19 22:58:22 +01:00
Eelco Dolstra
aa5b83d93c
InputScheme::fetch(): Return a StorePath instead of a Tree
2022-02-16 11:14:01 +01:00
Gabriel Fontes
72e8f94081
add sourcehut input scheme
2022-02-14 23:53:01 -03:00
Eelco Dolstra
d62a9390fc
Get rid of std::shared_ptr<std::string> and ref<std::string>
...
These were needed back in the pre-C++11 era because we didn't have
move semantics. But now we do.
2022-01-18 11:12:30 +01:00
Connor Baker
52f5fa948a
Add support for .tar.gz shorthand (.tgz) to TarballInputScheme
2021-12-03 22:16:02 -05:00
David Arnold
7489811736
Fix parent path check boundary
...
- Previous to this commit the boundary was exclusive of the
top level flake.
- This is wrong since the top level flake is still a valid
relative reference.
- Now, the check boundary is inclusive of the top level flake.
Signed-off-by: Timothy DeHerrera <tim.deh@pm.me>
2021-12-01 17:01:48 -07:00
Eelco Dolstra
ec608e3def
Merge pull request #5452 from Kha/git-extend-lock
...
git: extend cache dir lock over all mutating operations
2021-11-16 12:55:12 +01:00
kloenk
79d07d0980
libfetchers: set free gitlab headers
2021-11-14 12:23:46 +01:00
Sebastian Ullrich
b459a3e856
git: extend cache dir lock over all mutating operations
2021-11-01 09:14:56 +01:00
Timothy
8919b81dad
Support building flakes from a Git repo url with submodules query parameter
2021-10-26 20:02:37 +07:00
oxalica
81b8e910a0
Explicitly set initial branch name for git
2021-09-24 22:09:49 +08:00
Eelco Dolstra
d1bf7431bb
Revert "Merge pull request #4922 from nrdxp/default-submodules"
...
This reverts commit 6678e98411
, reversing
changes made to 90b2dd570c
.
2021-09-22 17:25:25 +02:00
Eelco Dolstra
06557299b3
Allow relative paths anywhere into the parent's store path
2021-09-21 13:45:11 +02:00
Eelco Dolstra
5cbb9c5406
path fetcher: Fix relative path check
2021-09-21 13:19:26 +02:00
Eelco Dolstra
fda4efff87
Rename unnecessary git@
2021-09-14 22:53:31 +02:00
Eelco Dolstra
07996c4810
github fetcher: Don't use HEAD branch when cloning
...
Fixes #4394 .
2021-09-14 13:38:45 +02:00
Eelco Dolstra
d72d31d529
github fetcher: Use git+https for cloning
...
git+ssh only works if you have SSH access.
2021-09-14 13:38:05 +02:00
Eelco Dolstra
76e368a3b4
Fix macOS build
2021-09-14 10:07:31 +02:00
Eelco Dolstra
4ed66735b6
RunOptions: Use designated initializers
...
Also get rid of _killStderr because it wasn't actually checked
anywhere.
2021-09-13 23:31:04 +02:00
Eelco Dolstra
c3e9acd1c0
Remove tabs
2021-09-13 23:06:33 +02:00
Shea Levy
6678e98411
Merge pull request #4922 from nrdxp/default-submodules
...
libfetchers/git: fetch submodules by default
2021-09-07 05:48:23 -04:00
Eelco Dolstra
eda0fee160
Merge pull request #5175 from Pamplemousse/make
...
Don't overwrite user provided `lib*_LDFLAGS`
2021-08-30 12:44:29 +02:00
Pamplemousse
a4c6d319a8
Don't overwrite user provided lib*_LDFLAGS
...
Signed-off-by: Pamplemousse <xav.maso@gmail.com>
2021-08-25 08:59:19 -07:00
Eelco Dolstra
af94b54db3
Coding style
2021-08-23 13:05:42 +02:00
Alex Zero
b3c424f5a6
Fix follows paths in subordinate lockfiles
2021-08-17 15:25:42 +01:00
Michael Fellinger
5c99ec374c
fix git init race condition
2021-08-02 13:47:59 +02:00
Alyssa Ross
ae0c026fe9
Enable pthreads for new libraries
...
Otherwise the lack of pthread causes linking to fail for NetBSD.
2021-07-24 09:15:01 +00:00
Eelco Dolstra
8648143120
Merge pull request #4988 from NixOS/fetchgit-name-attribute
...
Add a name attribute to the fetchers
2021-07-08 14:33:49 +02:00
Eelco Dolstra
3b3e6bb1e5
Style tweaks
2021-07-07 10:02:55 +02:00
regnat
2c8240677e
allow fetchFromGitHub to take a name
argument
2021-07-06 08:43:19 +02:00
regnat
e4b082a52b
allow fetchMercurial to take a name
argument
2021-07-06 08:43:06 +02:00
regnat
a487a652ed
allow fetchTarball to take a name
argument
2021-07-06 08:42:47 +02:00
regnat
83615fcf8f
Allow fetchGit
to take a name
argument
...
Fix #3388
2021-07-06 08:41:52 +02:00
Alexander Bantyev
811f3e8605
nix registry pin: add a way to pin to a custom locked
2021-06-30 22:16:40 +03:00
Timothy DeHerrera
769ca4e26d
libfetchers/git: fetch submodules by default
2021-06-17 12:00:26 -06:00
keke
50dc88a56c
fix error: 'optional' in namespace 'std' does not name a template type
2021-06-02 18:09:03 +08:00
Timothy Klim
4da9ec772c
Add .tar.zst support for TarballInputScheme
2021-05-29 16:03:26 +07:00
Alyssa Ross
9ac6534f7c
Include sys/wait.h everywhere WIFEXITED etc is used
...
This is required on NetBSD, and I think FreeBSD too.
2021-04-19 18:31:58 +00:00
Eelco Dolstra
42f0246698
Revert "libfetchers/tarball: Lock on effectiveUrl"
...
This reverts commit fc6bfb261d
.
Fixes #4672 .
2021-04-09 13:51:57 +02:00
Bjørn Forsman
edd606ae62
fetchGit: don't prefix "refs/heads/" on ref = "HEAD"
...
This fixes builtins.fetchGit { url = ...; ref = "HEAD"; }, that works in
stable nix (v2.3.10), but is broken in nix master:
$ ./result/bin/nix repl
Welcome to Nix version 2.4pre19700101_dd77f71. Type :? for help.
nix-repl> builtins.fetchGit { url = "https://github.com/NixOS/nix "; ref = "HEAD"; }
fetching Git repository 'https://github.com/NixOS/nix'fatal : couldn't find remote ref refs/heads/HEAD
error: program 'git' failed with exit code 128
The documentation for builtins.fetchGit says ref = "HEAD" is the
default, so it should also be supported to explicitly pass it.
I came across this issue because poetry2nix can use ref = "HEAD" in some
situations.
Fixes #4674 .
2021-03-30 11:21:38 +02:00
Samuel Dionne-Riel
66b857244f
Use the appropriate config dir for the registry
2021-03-19 15:20:47 -04:00