pub enum ActivationPhaseKind {
ResolveSystemBuildToplevel,
GenerateSystemdUnits,
GenerateLaunchdPlists,
GenerateEtcSymlinks,
ResolveSecretRefs,
ComposeActivationScript,
WriteActivationDerivation,
AttestClosureToChain,
}Expand description
Closed set of activation phases. Adding a variant IS extending the spec language.
Variants§
ResolveSystemBuildToplevel
Evaluate <config>.system.build.toplevel for the host —
the entry point for everything else. Requires the module
system (see crate::module_system).
GenerateSystemdUnits
Generate the systemd unit set from services.* modules.
NixOS + home-manager (linux user) only.
GenerateLaunchdPlists
Generate launchd plists (/Library/LaunchDaemons/*.plist,
~/Library/LaunchAgents/*.plist). Darwin + home-manager
(mac user) only.
GenerateEtcSymlinks
Generate the /etc symlink farm for the new generation.
NixOS + Darwin only.
ResolveSecretRefs
Resolve any SecretRef value into its materialised cipher
path before they cross into the activation script.
ComposeActivationScript
Compose the activation script text — concatenate per-module activation snippets in topological order.
WriteActivationDerivation
Write the activation script + closure as a sui-built derivation, returning the store path.
AttestClosureToChain
Hash the final activation closure for the OutcomeChain. Optional — not every host attaches; per-cluster policy.
Trait Implementations§
Source§impl Clone for ActivationPhaseKind
impl Clone for ActivationPhaseKind
Source§fn clone(&self) -> ActivationPhaseKind
fn clone(&self) -> ActivationPhaseKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ActivationPhaseKind
Source§impl Debug for ActivationPhaseKind
impl Debug for ActivationPhaseKind
Source§impl<'de> Deserialize<'de> for ActivationPhaseKind
impl<'de> Deserialize<'de> for ActivationPhaseKind
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for ActivationPhaseKind
Source§impl PartialEq for ActivationPhaseKind
impl PartialEq for ActivationPhaseKind
Source§fn eq(&self, other: &ActivationPhaseKind) -> bool
fn eq(&self, other: &ActivationPhaseKind) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for ActivationPhaseKind
impl Serialize for ActivationPhaseKind
impl StructuralPartialEq for ActivationPhaseKind
Auto Trait Implementations§
impl Freeze for ActivationPhaseKind
impl RefUnwindSafe for ActivationPhaseKind
impl Send for ActivationPhaseKind
impl Sync for ActivationPhaseKind
impl Unpin for ActivationPhaseKind
impl UnsafeUnpin for ActivationPhaseKind
impl UnwindSafe for ActivationPhaseKind
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.