diff --git a/backport-changelog/7.0/11779.md b/backport-changelog/7.0/11779.md
new file mode 100644
index 00000000000000..08557620ebadf9
--- /dev/null
+++ b/backport-changelog/7.0/11779.md
@@ -0,0 +1,3 @@
+https://github.com/WordPress/wordpress-develop/pull/11779
+
+* https://github.com/WordPress/gutenberg/pull/77521
diff --git a/lib/experimental/connectors/default-connectors.php b/lib/experimental/connectors/default-connectors.php
index 3f71f7b46eef06..d12ed5391e7a72 100644
--- a/lib/experimental/connectors/default-connectors.php
+++ b/lib/experimental/connectors/default-connectors.php
@@ -554,7 +554,8 @@ function _gutenberg_get_connector_script_module_data( array $data ): array {
$connectors[ $connector_id ] = $connector_out;
}
ksort( $connectors );
- $data['connectors'] = $connectors;
+ $data['connectors'] = $connectors;
+ $data['isFileModDisabled'] = ! wp_is_file_mod_allowed( 'install_plugins' );
return $data;
}
remove_filter( 'script_module_data_options-connectors-wp-admin', '_wp_connectors_get_connector_script_module_data' );
diff --git a/routes/connectors-home/ai-plugin-callout.tsx b/routes/connectors-home/ai-plugin-callout.tsx
index 2431dfeff2ae86..aa63a8e02e6a37 100644
--- a/routes/connectors-home/ai-plugin-callout.tsx
+++ b/routes/connectors-home/ai-plugin-callout.tsx
@@ -197,11 +197,6 @@ export function AiPluginCallout() {
return null;
}
- // Not installed and no permissions to install.
- if ( pluginStatus === 'not-installed' && canInstallPlugins === false ) {
- return null;
- }
-
// Installed but can't activate (no manage permissions).
if ( pluginStatus === 'inactive' && canManagePlugins === false ) {
return null;
@@ -215,6 +210,8 @@ export function AiPluginCallout() {
( ! initialHasConnectedProvider || justActivated );
const showInstallActivate =
pluginStatus === 'not-installed' || pluginStatus === 'inactive';
+ const hideButtons =
+ pluginStatus === 'not-installed' && canInstallPlugins === false;
const getMessage = () => {
if ( isJustConnected ) {
@@ -262,29 +259,30 @@ export function AiPluginCallout() {
a: