diff options
Diffstat (limited to 'src/cli.rs')
| -rw-r--r-- | src/cli.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/cli.rs b/src/cli.rs new file mode 100644 index 0000000..f43bda4 --- /dev/null +++ b/src/cli.rs @@ -0,0 +1,20 @@ +use std::path::PathBuf; +use clap::{Parser, Subcommand}; + +#[derive(Parser)] +#[clap(author = "Max Bossing", version, about = "System-agnostic dotfile deployer", long_about = None)] +pub struct Cli { + #[arg(short, long, default_value = "dots.toml")] + pub config: Option<PathBuf>, + + #[command(subcommand)] + pub command: CliCommand +} + +#[derive(Subcommand)] +pub enum CliCommand { + #[clap(about = "Deploys a dots set")] + Deploy, + #[clap(about = "Unlinks (tries to remove) a dots deployment")] + Unlink +}
\ No newline at end of file |
