aboutsummaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorDuckonaut <duckonaut@#gmail.com>2026-11-09 17:47:58 +0100
committerDuckonaut <duckonaut@#gmail.com>2026-11-09 17:47:58 +0100
commit0b6f1e3a7153be49ea4dd86bf6a7cb2746aafe6f (patch)
treebcdba4754df8d0f7db69bda69fb7da0fed9ba2b0 /src/main.rs
parent8e2efbc931870811cf2069b32bcd38025b251edf (diff)
fix: actually add pid file
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs
index 181ee5a..7ba049c 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -108,7 +108,7 @@ async fn main() -> color_eyre::Result<()> {
color_eyre::install().unwrap();
let args = Args::parse();
- match args {
+ let res = match args {
Args::Serve {
change_dir,
address,
@@ -172,7 +172,16 @@ async fn main() -> color_eyre::Result<()> {
}
Args::New { name } => create_project(&name),
Args::Init => init_project(),
+ };
+
+ if let Ok(xdg_run_dir) = std::env::var("XDG_RUNTIME_DIR") {
+ let pid_path: PathBuf = PathBuf::from(xdg_run_dir);
+ let pid_path = pid_path.join("reluax.pid");
+
+ std::fs::remove_file(pid_path)?;
}
+
+ res
}
async fn serve_locally(
@@ -273,6 +282,11 @@ async fn serve(dev_mode: bool, address: &str, public_dir: Option<PathBuf>) -> Re
let pid_path: PathBuf = PathBuf::from(xdg_run_dir);
let pid_path = pid_path.join("reluax.pid");
+ let pid = std::process::id();
+ let pid_str = format!("{}", pid);
+
+ std::fs::write(&pid_path, pid_str)?;
+
println!("🪪 PID File: {}", pid_path.display());
}