Nix 2.93.3
Lix: A modern, delicious implementation of the Nix package manager; unstable internal interfaces
Loading...
Searching...
No Matches
nix::Common Struct Reference
Inheritance diagram for nix::Common:
nix::InstallableCommand nix::MixProfile nix::Args nix::SourceExprCommand nix::StoreCommand nix::Args nix::MixFlakeOptions nix::Command nix::Args nix::EvalCommand nix::Args nix::StoreCommand nix::MixEvalArgs nix::Command nix::Args nix::MixRepair nix::Args nix::Args nix::CmdDevelop nix::CmdPrintDevEnv

Public Member Functions

std::string makeRcScript (EvalState &state, ref< Store > store, const BuildEnvironment &buildEnvironment, const Path &tmpDir, const Path &outputsDir=absPath(".")+"/outputs")
void fixupStructuredAttrs (const std::string &ext, const std::string &envVar, const std::string &content, StringMap &rewrites, const BuildEnvironment &buildEnvironment, const Path &tmpDir)
Strings getDefaultFlakeAttrPaths () override
Strings getDefaultFlakeAttrPathPrefixes () override
StorePath getShellOutPath (EvalState &state, ref< Store > store, ref< Installable > installable)
std::pair< BuildEnvironment, std::string > getBuildEnvironment (EvalState &state, ref< Store > store, ref< Installable > installable)
Public Member Functions inherited from nix::InstallableCommand
virtual void run (ref< Store > store, ref< Installable > installable)=0
void run (ref< Store > store) override
std::vector< FlakeRefgetFlakeRefsForCompletion () override
Public Member Functions inherited from nix::Args
virtual std::string description ()
virtual bool forceImpureByDefault ()
virtual std::string doc ()
virtual AsyncIoRootaio ()=0
void addFlag (Flag &&flag)
void removeFlag (const std::string &longName)
void expectArgs (ExpectedArg &&arg)
void expectArg (const std::string &label, std::string *dest, bool optional=false)
void expectArgs (const std::string &label, std::vector< std::string > *dest)
virtual JSON toJSON ()
RootArgs & getRoot ()
Public Member Functions inherited from nix::SourceExprCommand
ref< eval_cache::CachingEvaluatorgetEvaluator () override
Installables parseInstallables (EvalState &state, ref< Store > store, std::vector< std::string > ss)
ref< InstallableparseInstallable (EvalState &state, ref< Store > store, const std::string &installable)
void completeInstallable (EvalState &state, AddCompletions &completions, std::string_view prefix)
CompleterClosure getCompleteInstallable ()
Public Member Functions inherited from nix::EvalCommand
ref< StoregetEvalStore ()
Public Member Functions inherited from nix::StoreCommand
void run () override
ref< StoregetStore ()
virtual ref< StorecreateStore ()
Public Member Functions inherited from nix::Command
virtual std::optional< ExperimentalFeatureexperimentalFeature ()
virtual Category category ()
Public Member Functions inherited from nix::MixEvalArgs
BindingsgetAutoArgs (Evaluator &state)
Public Member Functions inherited from nix::MixProfile
void updateProfile (const StorePath &storePath)
void updateProfile (const BuiltPaths &buildables)

Public Attributes

std::set< std::string > ignoreVars
std::vector< std::pair< std::string, std::string > > redirects
Public Attributes inherited from nix::Args
MultiCommand * parent = nullptr
Public Attributes inherited from nix::SourceExprCommand
std::optional< Pathfile
std::optional< std::string > expr
Public Attributes inherited from nix::MixFlakeOptions
flake::LockFlags lockFlags
Public Attributes inherited from nix::EvalCommand
bool startReplOnEvalErrors = false
bool ignoreExceptionsDuringTry = false
Public Attributes inherited from nix::MixEvalArgs
SearchPath searchPath
std::optional< std::string > evalStoreUrl
Public Attributes inherited from nix::MixRepair
RepairFlag repair = NoRepair
Public Attributes inherited from nix::MixProfile
std::optional< Pathprofile

Additional Inherited Members

Public Types inherited from nix::Command
typedef int Category
Static Public Attributes inherited from nix::Args
static CompleterFun completePath
static CompleterFun completeDir
Static Public Attributes inherited from nix::Command
static constexpr Category catDefault = 0
static constexpr Category catCustom = 1000
Static Public Attributes inherited from nix::MixEvalArgs
static constexpr auto category = "Common evaluation options"
Protected Types inherited from nix::Args
typedef void CompleterFun(AddCompletions &, size_t, std::string_view)
typedef std::function< CompleterFunCompleterClosure
Protected Member Functions inherited from nix::Args
virtual bool processFlag (Strings::iterator &pos, Strings::iterator end)
virtual bool processArgs (const Strings &args, bool finish)
virtual Strings::iterator rewriteArgs (Strings &args, Strings::iterator pos)
virtual void initialFlagsProcessed ()
virtual std::optional< std::reference_wrapper< RootArgs > > asRootArgs ()
Protected Attributes inherited from nix::Args
std::map< std::string, Flag::ptr > longFlags
std::map< char, Flag::ptr > shortFlags
std::list< ExpectedArgexpectedArgs
std::list< ExpectedArgprocessedArgs
std::set< std::string > hiddenCategories
Static Protected Attributes inherited from nix::Args
static const size_t ArityAny = std::numeric_limits<size_t>::max()

Member Function Documentation

◆ fixupStructuredAttrs()

void nix::Common::fixupStructuredAttrs ( const std::string & ext,
const std::string & envVar,
const std::string & content,
StringMap & rewrites,
const BuildEnvironment & buildEnvironment,
const Path & tmpDir )
inline

Replace the value of NIX_ATTRS_*_FILE (/build/.attrs.*) with a tmp file that's accessible from the interactive shell session.

◆ getDefaultFlakeAttrPathPrefixes()

Strings nix::Common::getDefaultFlakeAttrPathPrefixes ( )
inlineoverridevirtual

Reimplemented from nix::SourceExprCommand.

◆ getDefaultFlakeAttrPaths()

Strings nix::Common::getDefaultFlakeAttrPaths ( )
inlineoverridevirtual

Reimplemented from nix::SourceExprCommand.

Member Data Documentation

◆ ignoreVars

std::set<std::string> nix::Common::ignoreVars
Initial value:
{
"BASHOPTS",
"HOME",
"NIX_BUILD_TOP",
"NIX_ENFORCE_PURITY",
"NIX_LOG_FD",
"NIX_REMOTE",
"PPID",
"SHELLOPTS",
"SSL_CERT_FILE",
"TEMP",
"TEMPDIR",
"TERM",
"TMP",
"TMPDIR",
"TZ",
"UID",
}

The documentation for this struct was generated from the following file:
  • lix/nix/develop.cc