forked from lix-project/lix
Remove git:// support in NIX_PATH
This didn't support specifying a revision/branch, and was restricted to git:// URIs (since https:// or ssh:// would be ambiguous).
This commit is contained in:
parent
ee6ac38848
commit
6cf7c6a6b0
|
@ -188,13 +188,6 @@
|
||||||
(38539b943a060d9cdfc24d6e5d997c0885b8aa2f)</para>
|
(38539b943a060d9cdfc24d6e5d997c0885b8aa2f)</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
<listitem>
|
|
||||||
<para>Git repositories can now be specified in the Nix search
|
|
||||||
path,
|
|
||||||
e.g. <literal>nixpkgs=git://github.com/NixOS/nixpkgs</literal>.
|
|
||||||
(d8bf0d4859e28ddd23401fbe89f4e528aa09ddb3)</para>
|
|
||||||
</listitem>
|
|
||||||
|
|
||||||
<listitem>
|
<listitem>
|
||||||
<para><literal><nix/fetchurl.nix></literal> now uses the
|
<para><literal><nix/fetchurl.nix></literal> now uses the
|
||||||
content-addressable tarball cache at
|
content-addressable tarball cache at
|
||||||
|
|
|
@ -523,7 +523,6 @@ formal
|
||||||
#include "eval.hh"
|
#include "eval.hh"
|
||||||
#include "download.hh"
|
#include "download.hh"
|
||||||
#include "store-api.hh"
|
#include "store-api.hh"
|
||||||
#include "primops/fetchgit.hh"
|
|
||||||
|
|
||||||
|
|
||||||
namespace nix {
|
namespace nix {
|
||||||
|
@ -665,11 +664,7 @@ std::pair<bool, std::string> EvalState::resolveSearchPathElem(const SearchPathEl
|
||||||
|
|
||||||
if (isUri(elem.second)) {
|
if (isUri(elem.second)) {
|
||||||
try {
|
try {
|
||||||
if (hasPrefix(elem.second, "git://") || hasSuffix(elem.second, ".git"))
|
res = { true, getDownloader()->downloadCached(store, elem.second, true) };
|
||||||
// FIXME: support specifying revision/branch
|
|
||||||
res = { true, exportGit(store, elem.second).storePath };
|
|
||||||
else
|
|
||||||
res = { true, getDownloader()->downloadCached(store, elem.second, true) };
|
|
||||||
} catch (DownloadError & e) {
|
} catch (DownloadError & e) {
|
||||||
printError(format("warning: Nix search path entry '%1%' cannot be downloaded, ignoring") % elem.second);
|
printError(format("warning: Nix search path entry '%1%' cannot be downloaded, ignoring") % elem.second);
|
||||||
res = { false, "" };
|
res = { false, "" };
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
#include "fetchgit.hh"
|
|
||||||
#include "primops.hh"
|
#include "primops.hh"
|
||||||
#include "eval-inline.hh"
|
#include "eval-inline.hh"
|
||||||
#include "download.hh"
|
#include "download.hh"
|
||||||
|
@ -15,6 +14,14 @@ using namespace std::string_literals;
|
||||||
|
|
||||||
namespace nix {
|
namespace nix {
|
||||||
|
|
||||||
|
struct GitInfo
|
||||||
|
{
|
||||||
|
Path storePath;
|
||||||
|
std::string rev;
|
||||||
|
std::string shortRev;
|
||||||
|
uint64_t revCount = 0;
|
||||||
|
};
|
||||||
|
|
||||||
GitInfo exportGit(ref<Store> store, const std::string & uri,
|
GitInfo exportGit(ref<Store> store, const std::string & uri,
|
||||||
std::experimental::optional<std::string> ref, const std::string & rev,
|
std::experimental::optional<std::string> ref, const std::string & rev,
|
||||||
const std::string & name)
|
const std::string & name)
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <string>
|
|
||||||
|
|
||||||
#include "util.hh"
|
|
||||||
|
|
||||||
namespace nix {
|
|
||||||
|
|
||||||
class Store;
|
|
||||||
|
|
||||||
struct GitInfo
|
|
||||||
{
|
|
||||||
Path storePath;
|
|
||||||
std::string rev;
|
|
||||||
std::string shortRev;
|
|
||||||
uint64_t revCount = 0;
|
|
||||||
};
|
|
||||||
|
|
||||||
GitInfo exportGit(ref<Store> store, const std::string & uri,
|
|
||||||
std::experimental::optional<std::string> ref = {},
|
|
||||||
const std::string & rev = "",
|
|
||||||
const std::string & name = "");
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in a new issue