about summary refs log tree commit diff
path: root/src/download-via-ssh/local.mk
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2014-02-08T05·05-0500
committerShea Levy <shea@shealevy.com>2014-02-08T05·13-0500
commit64e23d0a38f316a07cef0960d0ed74a450214283 (patch)
tree5c1e75efbe703e4163f087cb05356bcaa27a9999 /src/download-via-ssh/local.mk
parent5671188eb2822b7392a6affa5ebe2f1eb8f521a0 (diff)
Add download-via-ssh substituter
This substituter connects to a remote host, runs nix-store --serve
there, and then forwards substituter commands on to the remote host and
sends their results to the calling program. The ssh-substituter-hosts
option can be specified as a list of hosts to try.

This is an initial implementation and, while it works, it has some
limitations:

* Only the first host is used
* There is no caching of query results (all queries are sent to the
  remote machine)
* There is no informative output (such as progress bars)
* Some failure modes may cause unhelpful error messages
* There is no concept of trusted-ssh-substituter-hosts

Signed-off-by: Shea Levy <shea@shealevy.com>
Diffstat (limited to 'src/download-via-ssh/local.mk')
-rw-r--r--src/download-via-ssh/local.mk9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/download-via-ssh/local.mk b/src/download-via-ssh/local.mk
new file mode 100644
index 000000000000..92bf1159469d
--- /dev/null
+++ b/src/download-via-ssh/local.mk
@@ -0,0 +1,9 @@
+programs += download-via-ssh
+
+download-via-ssh_DIR := $(d)
+
+download-via-ssh_SOURCES := $(d)/download-via-ssh.cc
+
+download-via-ssh_INSTALL_DIR := $(libexecdir)/nix/substituters
+
+download-via-ssh_LIBS = libmain libstore libutil libformat