Create data directory in XDG_DATA_HOME
This commit is contained in:
parent
9f4b8d5e7a
commit
64af383fc6
17
src/main.rs
17
src/main.rs
@ -18,6 +18,10 @@
|
|||||||
|
|
||||||
use structopt::StructOpt;
|
use structopt::StructOpt;
|
||||||
use structopt::clap::AppSettings;
|
use structopt::clap::AppSettings;
|
||||||
|
use std::env;
|
||||||
|
use std::path::PathBuf;
|
||||||
|
use std::fs;
|
||||||
|
//use std::result::Result;
|
||||||
|
|
||||||
mod habit;
|
mod habit;
|
||||||
mod habitmgr;
|
mod habitmgr;
|
||||||
@ -70,6 +74,19 @@ fn main()
|
|||||||
let opts = Opts::from_args();
|
let opts = Opts::from_args();
|
||||||
let mut hmgr = HabitMgr::new();
|
let mut hmgr = HabitMgr::new();
|
||||||
|
|
||||||
|
let mut data_dir = PathBuf::from(
|
||||||
|
env::var("XDG_DATA_HOME")
|
||||||
|
.unwrap_or("./".to_string()));
|
||||||
|
// TODO: don't add this if we use ./
|
||||||
|
data_dir.push("htracker");
|
||||||
|
|
||||||
|
if !data_dir.exists()
|
||||||
|
{
|
||||||
|
println!("Creating {} data directory.", data_dir.display());
|
||||||
|
fs::create_dir_all(data_dir)
|
||||||
|
.unwrap_or_else(|err| { panic!("Filesystem error: {}", err) });
|
||||||
|
}
|
||||||
|
|
||||||
match opts.cmd
|
match opts.cmd
|
||||||
{
|
{
|
||||||
None => hmgr.list(false, false),
|
None => hmgr.list(false, false),
|
||||||
|
Loading…
Reference in New Issue
Block a user