Nix 2.26.3
Nix, the purely functional package manager; unstable internal interfaces
 
Loading...
Searching...
No Matches
common-ssh-store-config.hh
Go to the documentation of this file.
1#pragma once
3
4#include "store-api.hh"
5
6namespace nix {
7
8class SSHMaster;
9
10struct CommonSSHStoreConfig : virtual StoreConfig
11{
12 using StoreConfig::StoreConfig;
13
14 CommonSSHStoreConfig(std::string_view scheme, std::string_view host, const Params & params);
15
16 const Setting<Path> sshKey{this, "", "ssh-key",
17 "Path to the SSH private key used to authenticate to the remote machine."};
18
19 const Setting<std::string> sshPublicHostKey{this, "", "base64-ssh-public-host-key",
20 "The public host key of the remote machine."};
21
22 const Setting<bool> compress{this, false, "compress",
23 "Whether to enable SSH compression."};
24
25 const Setting<std::string> remoteStore{this, "", "remote-store",
26 R"(
27 [Store URL](@docroot@/store/types/index.md#store-url-format)
28 to be used on the remote machine. The default is `auto`
29 (i.e. use the Nix daemon or `/nix/store` directly).
30 )"};
31
49 std::string host;
50
58 bool useMaster,
59 Descriptor logFD = INVALID_DESCRIPTOR);
60};
61
62}
Definition ssh.hh:11
Definition config.hh:320
int Descriptor
Definition file-descriptor.hh:20
std::string host
Definition common-ssh-store-config.hh:49
SSHMaster createSSHMaster(bool useMaster, Descriptor logFD=INVALID_DESCRIPTOR)
Definition common-ssh-store-config.cc:31