diff options
| author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-07-20 14:18:36 +0200 |
|---|---|---|
| committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-07-20 14:18:36 +0200 |
| commit | 63a0ec3901a863fb07d18f4b814a98a813644382 (patch) | |
| tree | c94b7b501601b5df05cf654e9f9c9b5bc66a239e /crates/daemon/src/server.rs | |
| parent | chore: Commit (diff) | |
| download | atuin-63a0ec3901a863fb07d18f4b814a98a813644382.zip | |
chore: Commit
Diffstat (limited to '')
| -rw-r--r-- | crates/daemon/src/server.rs | 73 |
1 files changed, 34 insertions, 39 deletions
diff --git a/crates/daemon/src/server.rs b/crates/daemon/src/server.rs index 97c4fe48..7ba8312c 100644 --- a/crates/daemon/src/server.rs +++ b/crates/daemon/src/server.rs @@ -1,14 +1,17 @@ +use std::os::unix::net::SocketAddr; +use std::path::PathBuf; + use eyre::Result; +use eyre::{OptionExt, WrapErr}; +#[cfg(unix)] +use crate::api::server::{control::ControlService, history::HistoryGrpcService}; use crate::{ aclient::settings::Settings, - components::{history::HistoryGrpcService, semantic::SemanticGrpcService}, - daemon::DaemonHandle, - generated::{ - control::{ControlService, control_server::ControlServer}, - history::history_server::HistoryServer, - semantic::semantic_server::SemanticServer, + api::generated::{ + control::control_server::ControlServer, history::history_server::HistoryServer, }, + daemon::DaemonHandle, }; /// Run the gRPC server with the given services. @@ -19,7 +22,6 @@ use crate::{ pub(crate) fn run_grpc_server( settings: &Settings, history_service: HistoryServer<HistoryGrpcService>, - semantic_service: SemanticServer<SemanticGrpcService>, control_service: ControlServer<ControlService>, handle: DaemonHandle, ) -> Result<()> { @@ -28,42 +30,36 @@ pub(crate) fn run_grpc_server( let socket_path = settings.daemon.socket_path.clone(); - let (uds, cleanup) = if cfg!(target_os = "linux") && settings.daemon.systemd_socket { - #[cfg(target_os = "linux")] - { - use eyre::{OptionExt, WrapErr}; - use std::os::unix::net::SocketAddr; - use std::path::PathBuf; - tracing::info!("getting systemd socket"); - let listener = listenfd::ListenFd::from_env() - .take_unix_listener(0)? - .ok_or_eyre("missing systemd socket")?; - listener.set_nonblocking(true)?; - let actual_path: Result<PathBuf, eyre::Report> = listener - .local_addr() - .context("getting systemd socket's path") - .and_then(|addr: SocketAddr| { - addr.as_pathname() - .ok_or_eyre("systemd socket missing path") - .map(|path: &std::path::Path| path.to_owned()) - }); - match actual_path { - Ok(actual_path) => { - tracing::info!("listening on systemd socket: {actual_path:?}"); - if actual_path != std::path::Path::new(&socket_path) { - tracing::warn!( - "systemd socket is not at configured client path: {socket_path:?}" - ); - } - } - Err(err) => { + let (uds, cleanup) = if settings.daemon.systemd_socket { + tracing::info!("getting systemd socket"); + let listener = listenfd::ListenFd::from_env() + .take_unix_listener(0)? + .ok_or_eyre("missing systemd socket")?; + listener.set_nonblocking(true)?; + let actual_path: Result<PathBuf, eyre::Report> = listener + .local_addr() + .context("getting systemd socket's path") + .and_then(|addr: SocketAddr| { + addr.as_pathname() + .ok_or_eyre("systemd socket missing path") + .map(|path: &std::path::Path| path.to_owned()) + }); + match actual_path { + Ok(actual_path) => { + tracing::info!("listening on systemd socket: {actual_path:?}"); + if actual_path != std::path::Path::new(&socket_path) { tracing::warn!( - "could not detect systemd socket path, ensure that it's at the configured path: {socket_path:?}, error: {err:?}" + "systemd socket is not at configured client path: {socket_path:?}" ); } } - (UnixListener::from_std(listener)?, false) + Err(err) => { + tracing::warn!( + "could not detect systemd socket path, ensure that it's at the configured path: {socket_path:?}, error: {err:?}" + ); + } } + (UnixListener::from_std(listener)?, false) } else { tracing::info!("listening on unix socket {socket_path:?}"); (UnixListener::bind(socket_path.clone())?, true) @@ -101,7 +97,6 @@ pub(crate) fn run_grpc_server( if let Err(e) = Server::builder() .add_service(history_service) - .add_service(semantic_service) .add_service(control_service) .serve_with_incoming_shutdown(uds_stream, shutdown_signal) .await |
