add descriptive output when creating templates
this includes a `welcomeText` attribute which can be set in the template, as well as outputing which files were created.
This commit is contained in:
parent
5b809f9e0e
commit
f3a2940e70
|
@ -37,6 +37,10 @@ A flake can declare templates through its `templates` and
|
|||
|
||||
* `path`: The path of the directory to be copied.
|
||||
|
||||
* `welcomeText`: A block of text to display when a user initializes a new flake
|
||||
based on this template.
|
||||
|
||||
|
||||
Here is an example:
|
||||
|
||||
```
|
||||
|
@ -45,6 +49,10 @@ outputs = { self }: {
|
|||
templates.rust = {
|
||||
path = ./rust;
|
||||
description = "A simple Rust/Cargo project";
|
||||
welcomeText = ''
|
||||
You've created a simple Rust/Cargo template.
|
||||
Visit https://www.rust-lang.org/ for more info.
|
||||
'';
|
||||
};
|
||||
|
||||
templates.defaultTemplate = self.templates.rust;
|
||||
|
|
|
@ -728,6 +728,7 @@ struct CmdFlakeInitCommon : virtual Args, EvalCommand
|
|||
else
|
||||
throw Error("file '%s' has unsupported type", from2);
|
||||
files.push_back(to2);
|
||||
notice("wrote: %s", to2);
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -738,6 +739,11 @@ struct CmdFlakeInitCommon : virtual Args, EvalCommand
|
|||
for (auto & s : files) args.push_back(s);
|
||||
runProgram("git", true, args);
|
||||
}
|
||||
auto welcomeText = cursor->maybeGetAttr("welcomeText");
|
||||
if (welcomeText) {
|
||||
notice("\n----------\n");
|
||||
notice(welcomeText->getString());
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue