add tldr and base

This commit is contained in:
2022-12-17 21:51:41 +01:00
commit 6dc747f8b0
13 changed files with 764 additions and 0 deletions

37
src/prereqs.rs Normal file
View File

@@ -0,0 +1,37 @@
use clap::ArgMatches;
const DEPS: &[&str] = &["gh", "fzf"];
// -- List
//
pub fn ls() -> clap::Command {
clap::Command::new("ls")
}
pub fn ls_exec() -> eyre::Result<()> {
println!("Required packages\n---");
let mut deps: Vec<&str> = DEPS.into_iter().map(|d| d.clone()).collect();
deps.sort();
for dep in deps {
println!("{}", dep)
}
Ok(())
}
// -- Prereqs
//
pub fn prereqs() -> eyre::Result<clap::Command> {
let cmd = clap::Command::new("prereqs").subcommands([ls()]);
Ok(cmd)
}
pub fn prereqs_exec(matches: &ArgMatches) -> eyre::Result<()> {
match matches.subcommand() {
Some(("ls", _)) => ls_exec(),
_ => Err(eyre::anyhow!("not implemented")),
}
}