modde-cli 0.1.0

CLI interface for modde
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use anyhow::{Context, Result};

use modde_core::profile::ProfileManager;
use modde_core::vfs;

use super::load_profile_or_default;

pub async fn handle(profile_name: Option<String>, game_id: Option<String>) -> Result<()> {
    let pm = ProfileManager::open().context("failed to open profile database")?;
    let profile = load_profile_or_default(&pm, profile_name.as_deref(), game_id.as_deref())?;
    let name = profile.name;
    vfs::rollback(&name).await?;
    println!("Rolled back profile: {name}");
    Ok(())
}