From d66871f2f5faef42e36bdb06f71ba62cf96fb767 Mon Sep 17 00:00:00 2001 From: Ethan Girouard Date: Tue, 14 Jul 2026 20:10:04 -0400 Subject: [PATCH] Add server host/port config --- src/server/config.rs | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/server/config.rs b/src/server/config.rs index cc31583..d178364 100644 --- a/src/server/config.rs +++ b/src/server/config.rs @@ -1,3 +1,4 @@ +use std::net::{IpAddr, Ipv4Addr, SocketAddr}; use std::path::PathBuf; use serde::Deserialize; @@ -146,6 +147,14 @@ impl KeyValStoreConfig { #[derive(Debug, Clone, Deserialize)] pub struct ServerConfig { pub public_path: PathBuf, + pub host: IpAddr, + pub port: u16, +} + +impl ServerConfig { + pub fn serve_addr(&self) -> SocketAddr { + SocketAddr::new(self.host, self.port) + } } #[derive(Debug, Clone, Deserialize)] @@ -164,7 +173,16 @@ pub fn load_config() -> Result { let pkg_name = env!("CARGO_PKG_NAME"); config::Config::builder() - .set_default("server.port", 8080)? + .set_default( + "server.port", + dioxus::cli_config::server_port().unwrap_or(8080), + )? + .set_default( + "server.host", + dioxus::cli_config::server_ip() + .unwrap_or(IpAddr::V4(Ipv4Addr::UNSPECIFIED)) + .to_string(), + )? .set_default("auth.open_signup", false)? .set_default("auth.cookies_secure", DEFAULT_COOKIES_SECURE)? .set_default("server.public_path", default_public_dir())?