diff --git a/.changes/dmg-no-selfsign.md b/.changes/dmg-no-selfsign.md new file mode 100644 index 000000000000..ad63ef406e47 --- /dev/null +++ b/.changes/dmg-no-selfsign.md @@ -0,0 +1,5 @@ +--- +tauri-bundler: 'patch:bug' +--- + +Skip signing the .dmg if self signing via `"signingIdentity": "-"` is used. diff --git a/crates/tauri-bundler/src/bundle/macos/dmg/mod.rs b/crates/tauri-bundler/src/bundle/macos/dmg/mod.rs index 747b3963c09c..979a1c027c3c 100644 --- a/crates/tauri-bundler/src/bundle/macos/dmg/mod.rs +++ b/crates/tauri-bundler/src/bundle/macos/dmg/mod.rs @@ -194,16 +194,19 @@ pub fn bundle_project(settings: &Settings, bundles: &[Bundle]) -> crate::Result< fs::rename(bundle_dir.join(dmg_name), dmg_path.clone())?; // Sign DMG if needed - - if let Some(keychain) = super::sign::keychain(settings.macos().signing_identity.as_deref())? { - super::sign::sign( - &keychain, - vec![super::sign::SignTarget { - path: dmg_path.clone(), - is_an_executable: false, - }], - settings, - )?; + // skipping self-signing DMGs https://github.com/tauri-apps/tauri/issues/12288 + let identity = settings.macos().signing_identity.as_deref(); + if identity != Some("-") { + if let Some(keychain) = super::sign::keychain(identity)? { + super::sign::sign( + &keychain, + vec![super::sign::SignTarget { + path: dmg_path.clone(), + is_an_executable: false, + }], + settings, + )?; + } } Ok(Bundled {