+10
-4
src/lib.rs
+10
-4
src/lib.rs
···
37
37
_ => {
38
38
info!("No PostgreSQL connection string found, using SQLite");
39
39
40
+
// Get the project root directory
41
+
let project_root = std::env::current_dir()?;
42
+
let data_dir = project_root.join("data");
43
+
40
44
// Create a data directory if it doesn't exist
41
-
let data_dir = std::path::Path::new("data");
42
45
if !data_dir.exists() {
43
-
std::fs::create_dir_all(data_dir)?;
46
+
std::fs::create_dir_all(&data_dir)?;
44
47
}
45
48
46
49
let db_path = data_dir.join("simplelink.db");
···
102
105
};
103
106
104
107
if user_count == 0 {
105
-
// Generate a random token using simple characters
106
108
let token: String = (0..32)
107
109
.map(|_| {
108
110
let idx = rand::thread_rng().gen_range(0..62);
···
114
116
})
115
117
.collect();
116
118
119
+
// Get the project root directory
120
+
let project_root = std::env::current_dir()?;
121
+
let token_path = project_root.join("admin-setup-token.txt");
122
+
117
123
// Save token to file
118
-
let mut file = File::create("admin-setup-token.txt")?;
124
+
let mut file = File::create(token_path)?;
119
125
writeln!(file, "{}", token)?;
120
126
121
127
info!("No users found - generated admin setup token");