diff --git a/Cargo.toml b/Cargo.toml index 4c1c554f8..bdbc17801 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -81,6 +81,7 @@ futures = "0.1.21" clap = "2.31" reqwest = "0.8.6" influx_db_client = "0.3.4" +dirs = "1.0.2" [dev-dependencies] criterion = "0.2" diff --git a/src/bin/fullnode-config.rs b/src/bin/fullnode-config.rs index 5d9bc2387..2e8235c1b 100644 --- a/src/bin/fullnode-config.rs +++ b/src/bin/fullnode-config.rs @@ -1,4 +1,5 @@ extern crate clap; +extern crate dirs; extern crate serde_json; extern crate solana; @@ -7,7 +8,6 @@ use solana::crdt::{get_ip_addr, parse_port_or_addr}; use solana::fullnode::Config; use solana::nat::get_public_ip_addr; use solana::signature::read_pkcs8; -use std::env; use std::io; use std::net::SocketAddr; @@ -64,7 +64,7 @@ fn main() { bind_addr }; - let mut path = env::home_dir().expect("home directory"); + let mut path = dirs::home_dir().expect("home directory"); let id_path = if matches.is_present("keypair") { matches.value_of("keypair").unwrap() } else { diff --git a/src/bin/keygen.rs b/src/bin/keygen.rs index e77614d78..6974ced7b 100644 --- a/src/bin/keygen.rs +++ b/src/bin/keygen.rs @@ -1,11 +1,11 @@ extern crate clap; +extern crate dirs; extern crate ring; extern crate serde_json; use clap::{App, Arg}; use ring::rand::SystemRandom; use ring::signature::Ed25519KeyPair; -use std::env; use std::error; use std::fs::{self, File}; use std::io::Write; @@ -27,7 +27,7 @@ fn main() -> Result<(), Box> { let pkcs8_bytes = Ed25519KeyPair::generate_pkcs8(&rnd)?; let serialized = serde_json::to_string(&pkcs8_bytes.to_vec())?; - let mut path = env::home_dir().expect("home directory"); + let mut path = dirs::home_dir().expect("home directory"); let outfile = if matches.is_present("outfile") { matches.value_of("outfile").unwrap() } else { diff --git a/src/bin/wallet.rs b/src/bin/wallet.rs index 0b320fd8a..cb48d3275 100644 --- a/src/bin/wallet.rs +++ b/src/bin/wallet.rs @@ -2,6 +2,7 @@ extern crate atty; extern crate bincode; extern crate bs58; extern crate clap; +extern crate dirs; extern crate env_logger; extern crate serde_json; extern crate solana; @@ -13,7 +14,6 @@ use solana::drone::DroneRequest; use solana::fullnode::Config; use solana::signature::{read_keypair, KeyPair, KeyPairUtil, PublicKey, Signature}; use solana::thin_client::ThinClient; -use std::env; use std::error; use std::fmt; use std::fs::File; @@ -148,7 +148,7 @@ fn parse_args() -> Result> { leader = NodeInfo::new_leader(&server_addr); }; - let mut path = env::home_dir().expect("home directory"); + let mut path = dirs::home_dir().expect("home directory"); let id_path = if matches.is_present("keypair") { matches.value_of("keypair").unwrap() } else {