From dcaba9de64354fa699ee6b292efbedfb984582db Mon Sep 17 00:00:00 2001 From: Griffin Smith Date: Thu, 23 Jul 2020 12:35:52 -0400 Subject: feat(3p/nix): Add main function for grpc daemon Implement the main function for the new, proto-based nix daemon. This mostly replicates the behavior of the previous nix daemon - it starts a grpc server listening on the same nix socket path and supports the same set of options - with the exception of --stdio, which has been renamed to --pipe and documented in the man page. Change-Id: Ib729283c1d5d35c0e1b0a968bc1f052f5527f2d7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/1356 Tested-by: BuildkiteCI Reviewed-by: tazjin Reviewed-by: kanepyork --- third_party/nix/src/libstore/derivations.cc | 4 ++-- third_party/nix/src/libstore/derivations.hh | 2 +- third_party/nix/src/libstore/ssh-store.cc | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) (limited to 'third_party/nix/src/libstore') diff --git a/third_party/nix/src/libstore/derivations.cc b/third_party/nix/src/libstore/derivations.cc index 419fc584f1fe..18b313385ca5 100644 --- a/third_party/nix/src/libstore/derivations.cc +++ b/third_party/nix/src/libstore/derivations.cc @@ -31,11 +31,11 @@ void DerivationOutput::parseHashInfo(bool& recursive, Hash& hash) const { } BasicDerivation BasicDerivation::from_proto( - const nix::proto::Derivation* proto_derivation, const nix::Store* store) { + const nix::proto::Derivation* proto_derivation, const nix::Store& store) { BasicDerivation result; result.platform = proto_derivation->platform(); result.builder = proto_derivation->builder().path(); - store->assertStorePath(result.builder); + store.assertStorePath(result.builder); result.outputs.insert(proto_derivation->outputs().begin(), proto_derivation->outputs().end()); diff --git a/third_party/nix/src/libstore/derivations.hh b/third_party/nix/src/libstore/derivations.hh index d8a5dbf09246..21ef71372e05 100644 --- a/third_party/nix/src/libstore/derivations.hh +++ b/third_party/nix/src/libstore/derivations.hh @@ -59,7 +59,7 @@ struct BasicDerivation { // Convert the given proto derivation to a BasicDerivation in the given // nix::Store. static BasicDerivation from_proto( - const nix::proto::Derivation* proto_derivation, const nix::Store* store); + const nix::proto::Derivation* proto_derivation, const nix::Store& store); virtual ~BasicDerivation(){}; diff --git a/third_party/nix/src/libstore/ssh-store.cc b/third_party/nix/src/libstore/ssh-store.cc index eae8ee888bb9..48fea858a393 100644 --- a/third_party/nix/src/libstore/ssh-store.cc +++ b/third_party/nix/src/libstore/ssh-store.cc @@ -67,7 +67,7 @@ ref SSHStore::getFSAccessor() { ref SSHStore::openConnection() { auto conn = make_ref(); - conn->sshConn = master.startCommand("nix-daemon --stdio"); + conn->sshConn = master.startCommand("nix-daemon --pipe"); conn->to = FdSink(conn->sshConn->in.get()); conn->from = FdSource(conn->sshConn->out.get()); initConnection(*conn); -- cgit 1.4.1