mirror of
https://github.com/NixOS/nix.git
synced 2025-11-20 09:19:36 +01:00
libstore: Correct getUri methods for all stores
Previously `getUri` didn't include store query parameters, `ssh-ng` didn't include any information at all and the local store didn't have the path: ``` $ nix store info --store "local?root=/tmp/aaa&require-sigs=false" Store URL: local Version: 2.31.0 Trusted: 1 $ nix store info --store "ssh-ng://localhost?remote-program=nix-daemon" Store URL: ssh-ng:// Version: 2.31.0 Trusted: 1 $ nix store info --store "ssh://localhost?remote-program=nix-store" Store URL: ssh://localhost ``` This commit changes this to: ``` $ nix store info --store "local?root=/tmp/aaa&require-sigs=false" Store URL: local?require-sigs=false&root=/tmp/aaa Version: 2.31.0 Trusted: 1 $ nix store info --store "ssh-ng://localhost?remote-program=nix-daemon" Store URL: ssh-ng://localhost?remote-program=nix-daemon Version: 2.31.0 Trusted: 1 $ nix store info --store "ssh://localhost?remote-program=nix-store" Store URL: ssh://localhost?remote-program=nix-store ```
This commit is contained in:
parent
73ebdf2497
commit
41af531392
7 changed files with 58 additions and 16 deletions
|
|
@ -43,7 +43,9 @@ struct SSHStore : virtual RemoteStore
|
|||
|
||||
std::string getUri() override
|
||||
{
|
||||
return *Config::uriSchemes().begin() + "://" + host;
|
||||
return ParsedURL{
|
||||
.scheme = *Config::uriSchemes().begin(), .authority = config->authority, .query = config->getQueryParams()}
|
||||
.to_string();
|
||||
}
|
||||
|
||||
// FIXME extend daemon protocol, move implementation to RemoteStore
|
||||
|
|
@ -66,8 +68,6 @@ protected:
|
|||
|
||||
ref<RemoteStore::Connection> openConnection() override;
|
||||
|
||||
std::string host;
|
||||
|
||||
std::vector<std::string> extraRemoteProgramArgs;
|
||||
|
||||
SSHMaster master;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue