diff --git a/appmgr/src/bin/embassy-init.rs b/appmgr/src/bin/embassy-init.rs index fe9e16b4f..b8821b624 100644 --- a/appmgr/src/bin/embassy-init.rs +++ b/appmgr/src/bin/embassy-init.rs @@ -24,7 +24,6 @@ fn status_fn(_: i32) -> StatusCode { #[instrument] async fn init(cfg_path: Option<&str>) -> Result<(), Error> { - // return Err(eyre!("Test failure").with_kind(embassy::ErrorKind::Unknown)); let cfg = RpcContextConfig::load(cfg_path).await?; embassy::disk::util::mount("LABEL=EMBASSY", "/embassy-os").await?; if tokio::fs::metadata("/embassy-os/disk.guid").await.is_err() { diff --git a/appmgr/src/setup.rs b/appmgr/src/setup.rs index 818a7b82c..2c61f36b2 100644 --- a/appmgr/src/setup.rs +++ b/appmgr/src/setup.rs @@ -79,6 +79,13 @@ pub async fn recovery_status( ctx.recovery_status.read().await.clone().transpose() } +#[derive(Serialize, Deserialize)] +#[serde(rename_all = "kebab-case")] +pub struct SetupResult { + tor_address: String, + lan_address: String, +} + #[command(rpc_only)] pub async fn execute( #[context] ctx: SetupContext, @@ -86,7 +93,7 @@ pub async fn execute( #[arg(rename = "embassy-password")] embassy_password: String, #[arg(rename = "recovery-drive")] recovery_drive: Option, #[arg(rename = "recovery-password")] recovery_password: Option, -) -> Result { +) -> Result { match execute_inner( ctx, embassy_logicalname, @@ -98,7 +105,10 @@ pub async fn execute( { Ok(a) => { tracing::info!("Setup Successful! Tor Address: {}", a); - Ok(a) + Ok(SetupResult { + tor_address: format!("http://{}", a), + lan_address: format!("https://embassy-{}.local", crate::hostname::get_id().await?), + }) } Err(e) => { tracing::error!("Error Setting Up Embassy: {}", e);