diff --git a/appmgr/src/auth.rs b/appmgr/src/auth.rs index 5b884b1fa..555b82b31 100644 --- a/appmgr/src/auth.rs +++ b/appmgr/src/auth.rs @@ -117,7 +117,7 @@ pub async fn login( res.headers.insert( "set-cookie", HeaderValue::from_str(&format!( - "session={}; SameSite=Strict; Expires=Fri, 31 Dec 9999 23:59:59 GMT;", + "session={}; SameSite=Lax; Expires=Fri, 31 Dec 9999 23:59:59 GMT;", token )) .with_kind(crate::ErrorKind::Unknown)?, // Should be impossible, but don't want to panic diff --git a/appmgr/src/db/mod.rs b/appmgr/src/db/mod.rs index 03cc8e1be..dca78fbdf 100644 --- a/appmgr/src/db/mod.rs +++ b/appmgr/src/db/mod.rs @@ -171,6 +171,6 @@ pub async fn ui( let ptr = "/ui".parse::()? + &pointer; Ok(WithRevision { response: (), - revision: ctx.db.put(&ptr, &value, None).await?, + revision: Some(ctx.db.put(&ptr, &value, None).await?), }) } diff --git a/appmgr/src/db/model.rs b/appmgr/src/db/model.rs index 68120764e..030a9555f 100644 --- a/appmgr/src/db/model.rs +++ b/appmgr/src/db/model.rs @@ -147,9 +147,9 @@ impl StaticFiles { } pub fn remote(id: &PackageId, version: &Version, icon_type: &str) -> Self { StaticFiles { - license: format!("/registry/packages/{}/{}/LICENSE.md", id, version), - instructions: format!("/registry/packages/{}/{}/INSTRUCTIONS.md", id, version), - icon: format!("/registry/packages/{}/{}/icon.{}", id, version, icon_type), + license: format!("/marketplace/package/{}/{}/LICENSE.md", id, version), + instructions: format!("/marketplace/package/{}/{}/INSTRUCTIONS.md", id, version), + icon: format!("/marketplace/package/{}/{}/icon.{}", id, version, icon_type), } } } diff --git a/appmgr/src/db/util.rs b/appmgr/src/db/util.rs index 606dff1d9..1d5f33748 100644 --- a/appmgr/src/db/util.rs +++ b/appmgr/src/db/util.rs @@ -6,5 +6,5 @@ use serde::{Deserialize, Serialize}; #[derive(Clone, Debug, Deserialize, Serialize)] pub struct WithRevision { pub response: T, - pub revision: Arc, + pub revision: Option>, } diff --git a/appmgr/src/install/mod.rs b/appmgr/src/install/mod.rs index 03abcbea8..ae10baa20 100644 --- a/appmgr/src/install/mod.rs +++ b/appmgr/src/install/mod.rs @@ -304,6 +304,7 @@ pub async fn download_install_s9pk( let mut tx = handle.begin().await?; if let Err(e) = cleanup_failed(&ctx, &mut tx, pkg_id, version).await { + let mut tx = handle.begin().await?; log::error!( "Failed to clean up {}@{}: {}: Adding to broken packages", pkg_id, @@ -312,10 +313,13 @@ pub async fn download_install_s9pk( ); let mut broken = crate::db::DatabaseModel::new() .broken_packages() - .get_mut(&mut handle) + .get_mut(&mut tx) .await?; broken.push(pkg_id.clone()); - broken.save(&mut handle).await?; + broken.save(&mut tx).await?; + tx.commit(None).await?; + } else { + tx.commit(None).await?; } Err(e) } else {