29 lines
461 B
Rust
29 lines
461 B
Rust
mod cli;
|
|
mod db;
|
|
mod error;
|
|
mod repo;
|
|
|
|
use clap::Parser;
|
|
pub use error::{Result, ServerError};
|
|
use repo::RepoGroupManager;
|
|
use std::path::PathBuf;
|
|
use std::sync::{Arc, RwLock};
|
|
|
|
#[derive(Clone)]
|
|
pub struct Config {
|
|
repo_dir: PathBuf,
|
|
pkg_dir: PathBuf,
|
|
}
|
|
|
|
#[derive(Clone)]
|
|
pub struct Global {
|
|
config: Config,
|
|
repo_manager: Arc<RwLock<RepoGroupManager>>,
|
|
}
|
|
|
|
#[tokio::main]
|
|
async fn main() {
|
|
let cli = cli::Cli::parse();
|
|
cli.run().await;
|
|
}
|