Skip to main content

first_fill

Function first_fill 

Source
pub fn first_fill(
    engine: &Engine,
    home: &Home,
    user: HostUser,
) -> Result<(), EngineError>
Expand description

Gives a home its profile’s stored login when it has none of its own.

A terminal harness’s home is given it once, when the home was just made. A window’s home is given it every time the window opens, because a window’s login lives in a database the home has whether or not anyone signed in there: the copy looks for a login in it and leaves one it finds alone (Fill::Keep), so a workspace that was signed in to by hand keeps what it has.

A profile with no stored login gives nothing, and that is not a failure: the harness asks for its login the first time it runs, as it would on any machine. Nothing is made for it here, because a credentials volume that comes into being empty would read as a login from then on.

§Errors

When the engine cannot list its volumes or refuses the copy.