1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
use clap::{Parser, Subcommand};
#[derive(Debug, Parser)]
#[command(author, version, about, long_about = None)]
pub struct Opts {
#[command(subcommand)]
pub command: Option<AppCommand>,
}
#[derive(Debug, Subcommand)]
pub enum AppCommand {
/// Removes the cache folder
Clean,
/// Launches the Ri! Learn app
Learn,
/// Updates the launcher and apps
Update(UpdateCommand),
/*
/// Opens a link to the latest Stack version
Stack,
*/
}
impl Default for AppCommand {
fn default() -> Self {
Self::Learn
}
}
#[derive(Debug, Parser, Clone)]
pub struct UpdateCommand {
/// Override an operating system of downloading assets
#[clap(long, short)]
pub system: Option<String>,
/// Reload assets
#[clap(long, short)]
pub force: bool,
}