// Prevents additional console window on Windows in release, DO NOT REMOVE!! #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] use serde::{Deserialize, Serialize}; use std::env; use std::fs::{create_dir_all, File, OpenOptions}; use std::io::Write; use std::path::Path; use std::process::{Command, Stdio}; use std::sync::Mutex; use tauri::{Manager, Window}; pub mod drive; use drive::Drive::; // Learn more about Tauri commands at https://tauri.app/develop/calling-rust/ #[tauri::command] fn greet(name: &str) -> String { format!("Hello, {}! You've been greeted from Rust!", name) } #[cfg_attr(mobile, tauri::mobile_entry_point)] pub fn run() { tauri::Builder::default() .manage(AppState { sync_processes: Mutex::new(Vec::new()), sync_active: Mutex::new(false), }) .plugin(tauri_plugin_opener::init()) .invoke_handler(tauri::generate_handler![ save_config, list_files, start_sync, stop_sync, get_status ]) .run(tauri::generate_context!()) .expect("error while running tauri application"); }