2023-12-18 23:14:42 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "source-path.hh"
|
|
|
|
#include "store-api.hh"
|
|
|
|
#include "file-system.hh"
|
|
|
|
#include "repair-flag.hh"
|
|
|
|
#include "file-content-address.hh"
|
|
|
|
|
|
|
|
namespace nix {
|
|
|
|
|
2024-02-20 11:36:36 +02:00
|
|
|
enum struct FetchMode { DryRun, Copy };
|
|
|
|
|
2023-12-18 23:14:42 +02:00
|
|
|
/**
|
|
|
|
* Copy the `path` to the Nix store.
|
|
|
|
*/
|
|
|
|
StorePath fetchToStore(
|
|
|
|
Store & store,
|
|
|
|
const SourcePath & path,
|
2024-02-20 11:36:36 +02:00
|
|
|
FetchMode mode,
|
2023-12-18 23:14:42 +02:00
|
|
|
std::string_view name = "source",
|
|
|
|
ContentAddressMethod method = FileIngestionMethod::Recursive,
|
|
|
|
PathFilter * filter = nullptr,
|
|
|
|
RepairFlag repair = NoRepair);
|
|
|
|
|
|
|
|
}
|