From b9ff96f24e59ba781f252e0de2f2136b19b4f0da Mon Sep 17 00:00:00 2001 From: salmon Date: Sun, 9 Aug 2026 23:20:23 +0200 Subject: Actual message when daemon could not be found --- src/daemon.rs | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/daemon.rs b/src/daemon.rs index ddd3b77..279620d 100644 --- a/src/daemon.rs +++ b/src/daemon.rs @@ -464,7 +464,28 @@ pub fn send_command(cmd: String) -> Result<(), Box> { fn send_command_raw(cmd: String) -> Result<(), Box> { let socket_path = Config::get_socket_path(); - let mut stream = UnixStream::connect(socket_path)?; + let mut stream = match UnixStream::connect(&socket_path) { + Ok(s) => s, + Err(e) => { + if e.kind() == std::io::ErrorKind::NotFound { + return Err(format!( + "RSPlayer daemon is not running (no socket at {}).\n\ + Start it with `rsp start-daemon` or `rsp restart`.", + socket_path.display() + ) + .into()); + } + if e.kind() == std::io::ErrorKind::ConnectionRefused { + return Err(format!( + "RSPlayer daemon is not responding (stale socket at {}).\n\ + Run `rsp restart` to clean up and start a fresh daemon.", + socket_path.display() + ) + .into()); + } + return Err(e.into()); + } + }; stream.write_all(cmd.as_bytes())?; let mut buf = [0u8; 4096]; -- cgit v1.2.3