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 | 
