mirror of
https://github.com/NixOS/nix
synced 2025-07-07 01:51:47 +02:00
nix describe-stores: Remove
This command was intended for docs generation, but it was never used for that and we don't need it.
This commit is contained in:
parent
8d6d59cb1b
commit
7704118d28
4 changed files with 3 additions and 54 deletions
|
@ -1,44 +0,0 @@
|
|||
#include "command.hh"
|
||||
#include "common-args.hh"
|
||||
#include "shared.hh"
|
||||
#include "store-api.hh"
|
||||
|
||||
#include <nlohmann/json.hpp>
|
||||
|
||||
using namespace nix;
|
||||
|
||||
struct CmdDescribeStores : Command, MixJSON
|
||||
{
|
||||
std::string description() override
|
||||
{
|
||||
return "show registered store types and their available options";
|
||||
}
|
||||
|
||||
Category category() override { return catUtility; }
|
||||
|
||||
void run() override
|
||||
{
|
||||
auto res = nlohmann::json::object();
|
||||
for (auto & implem : *Implementations::registered) {
|
||||
auto storeConfig = implem.getConfig();
|
||||
auto storeName = storeConfig->name();
|
||||
res[storeName]["settings"] = storeConfig->toJSON();
|
||||
}
|
||||
if (json) {
|
||||
logger->cout("%s", res);
|
||||
} else {
|
||||
for (auto & [storeName, storeConfig] : res.items()) {
|
||||
std::cout << "## " << storeName << std::endl << std::endl;
|
||||
for (auto & [optionName, optionDesc] : storeConfig.items()) {
|
||||
std::cout << "### " << optionName << std::endl << std::endl;
|
||||
std::cout << optionDesc["description"].get<std::string>() << std::endl;
|
||||
std::cout << "default: " << optionDesc["defaultValue"] << std::endl <<std::endl;
|
||||
if (!optionDesc["aliases"].empty())
|
||||
std::cout << "aliases: " << optionDesc["aliases"] << std::endl << std::endl;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
static auto rDescribeStore = registerCommand<CmdDescribeStores>("describe-stores");
|
Loading…
Add table
Add a link
Reference in a new issue