Revert "fix: Change PID file path"

This reverts commit c5855119d8c97d2eee7c66c9ec115c6d3999e36a.
This commit is contained in:
MystiPanda 2023-12-12 15:59:00 +08:00
parent 4a5aa1bcc1
commit d4ab1df870

View File

@ -15,7 +15,6 @@ static VERGE_CONFIG: &str = "verge.yaml";
static PROFILE_YAML: &str = "profiles.yaml"; static PROFILE_YAML: &str = "profiles.yaml";
static mut RESOURCE_DIR: Option<PathBuf> = None; static mut RESOURCE_DIR: Option<PathBuf> = None;
static mut APP_HOME_DIR: Option<PathBuf> = None;
/// portable flag /// portable flag
#[allow(unused)] #[allow(unused)]
@ -43,27 +42,28 @@ pub unsafe fn init_portable_flag() -> Result<()> {
/// get the verge app home dir /// get the verge app home dir
pub fn app_home_dir() -> Result<PathBuf> { pub fn app_home_dir() -> Result<PathBuf> {
use tauri::utils::platform::current_exe; #[cfg(target_os = "windows")]
let app_exe = current_exe()?;
let app_exe = dunce::canonicalize(app_exe)?;
let app_dir = app_exe
.parent()
.ok_or(anyhow::anyhow!("failed to get the portable app dir"))?;
let portable_home_dir = PathBuf::from(app_dir).join(".config").join(APP_ID);
let home_dir = data_dir()
.ok_or(anyhow::anyhow!("failed to get app home dir"))?
.join(APP_ID);
unsafe { unsafe {
if PORTABLE_FLAG { use tauri::utils::platform::current_exe;
APP_HOME_DIR = Some(portable_home_dir.clone());
Ok(portable_home_dir) if !PORTABLE_FLAG {
Ok(data_dir()
.ok_or(anyhow::anyhow!("failed to get app home dir"))?
.join(APP_ID))
} else { } else {
APP_HOME_DIR = Some(home_dir.clone()); let app_exe = current_exe()?;
Ok(home_dir) let app_exe = dunce::canonicalize(app_exe)?;
let app_dir = app_exe
.parent()
.ok_or(anyhow::anyhow!("failed to get the portable app dir"))?;
Ok(PathBuf::from(app_dir).join(".config").join(APP_ID))
} }
} }
#[cfg(not(target_os = "windows"))]
Ok(data_dir()
.ok_or(anyhow::anyhow!("failed to get app home dir"))?
.join(APP_ID))
} }
/// get the resources dir /// get the resources dir
@ -116,9 +116,9 @@ pub fn app_res_dir() -> Result<PathBuf> {
pub fn clash_pid_path() -> Result<PathBuf> { pub fn clash_pid_path() -> Result<PathBuf> {
unsafe { unsafe {
Ok(APP_HOME_DIR Ok(RESOURCE_DIR
.clone() .clone()
.ok_or(anyhow::anyhow!("failed to get the app home dir"))? .ok_or(anyhow::anyhow!("failed to get the resource dir"))?
.join("clash.pid")) .join("clash.pid"))
} }
} }