From fe0d0196f133bd902b176aa02119b7f2a49ebc35 Mon Sep 17 00:00:00 2001 From: Joris Date: Wed, 26 Jan 2022 14:31:42 +0100 Subject: Read database path from arguments --- src/db/db.rs | 4 ++-- src/main.rs | 11 ++++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/db/db.rs b/src/db/db.rs index a3398e2..86614ec 100644 --- a/src/db/db.rs +++ b/src/db/db.rs @@ -9,8 +9,8 @@ use rusqlite::{params, Connection}; use rusqlite_migration::{Migrations, M}; use std::time::SystemTime; -pub fn init() -> Result { - let mut conn = Connection::open("database.db")?; +pub fn init(database: String) -> Result { + let mut conn = Connection::open(database)?; let migrations = Migrations::new(vec![M::up(include_str!("sql/1-init.sql"))]); migrations.to_latest(&mut conn)?; Ok(conn) diff --git a/src/main.rs b/src/main.rs index 4761366..ef47c73 100644 --- a/src/main.rs +++ b/src/main.rs @@ -6,9 +6,18 @@ mod space_repetition; mod util; use anyhow::Result; +use structopt::StructOpt; + +#[derive(StructOpt)] +#[structopt()] +struct Opt { + #[structopt(short, long, default_value = "database.db")] + database: String, +} fn main() -> Result<()> { - let conn = db::db::init()?; + let opt = Opt::from_args(); + let conn = db::db::init(opt.database)?; let entries = deck::read()?; db::db::add_missing_deck_entries(&conn, entries)?; gui::gui::start(&conn) -- cgit v1.2.3