diff --git a/config/install/project_browser.admin_settings.yml b/config/install/project_browser.admin_settings.yml
index 538ff6e5a201febaada945d80280bb46924638e1..bdbc46ac513140fe6c98f6377e6fd2749bc36c35 100644
--- a/config/install/project_browser.admin_settings.yml
+++ b/config/install/project_browser.admin_settings.yml
@@ -1,5 +1,4 @@
 enabled_sources:
   - drupalorg_jsonapi
 allow_ui_install: false
-disable_add_new_module: true
 allowed_projects: {}
diff --git a/config/schema/project_browser.schema.yml b/config/schema/project_browser.schema.yml
index 9411444430859cf3dc57147afc34bebc946487d3..9b93c030c8736973d8ba84e6f889382b70005a5f 100644
--- a/config/schema/project_browser.schema.yml
+++ b/config/schema/project_browser.schema.yml
@@ -11,9 +11,6 @@ project_browser.admin_settings:
     allow_ui_install:
       type: boolean
       label: 'Allow installing packages from within the UI'
-    disable_add_new_module:
-      type: boolean
-      label: 'Disable Add new module menu item'
     allowed_projects:
       type: sequence
       label: 'Allow-lists of projects, keyed by source plugin ID'
diff --git a/project_browser.install b/project_browser.install
index cb07f6e646078202ccb7612e8267cfcec537831f..bd56c71f1c30f58b04c60293ba890c2db1156171 100644
--- a/project_browser.install
+++ b/project_browser.install
@@ -330,3 +330,15 @@ function project_browser_update_9016() {
 function project_browser_update_9017() {
   _project_browser_populate_from_fixture();
 }
+
+/**
+ * Implements hook_update_N().
+ *
+ * Remove disable_add_new_module setting.
+ */
+function project_browser_update_9018() {
+  $config_factory = \Drupal::configFactory();
+  $config_factory->getEditable('project_browser.admin_settings')
+    ->clear('disable_add_new_module')
+    ->save(TRUE);
+}
diff --git a/project_browser.module b/project_browser.module
index f47f581b7cfea4d0bb85f4e34f7533a37544529e..ac6bfb0edf93a3c82f070fef2470d81f70251cd6 100644
--- a/project_browser.module
+++ b/project_browser.module
@@ -53,16 +53,6 @@ function _project_browser_populate_from_fixture($truncate_first = TRUE) {
     ->populateFromFixture($module_path . '/fixtures/project_data.json', $module_path . '/fixtures/categories.json', $truncate_first);
 }
 
-/**
- * Implements hook_menu_links_discovered_alter().
- */
-function project_browser_menu_links_discovered_alter(&$links) {
-  if (\Drupal::config('project_browser.admin_settings')->get('disable_add_new_module')) {
-    // Remove link from Admin toolbar module.
-    unset($links['admin_toolbar_tools.extra_links:update.module_install']);
-  }
-}
-
 /**
  * Implements hook_project_browser_source_info_alter().
  */
diff --git a/project_browser.post_update.php b/project_browser.post_update.php
deleted file mode 100644
index 39f354b262fef39561b3c9f9348b334f91849cb2..0000000000000000000000000000000000000000
--- a/project_browser.post_update.php
+++ /dev/null
@@ -1,16 +0,0 @@
-<?php
-
-/**
- * @file
- * Post update functions for Project Browser.
- */
-
-/**
- * Set a default value for disable_add_new_module setting.
- */
-function project_browser_post_update_default_for_disable_add_new_module(&$sandbox) {
-  \Drupal::configFactory()
-    ->getEditable('project_browser.admin_settings')
-    ->set('disable_add_new_module', TRUE)
-    ->save(TRUE);
-}
diff --git a/project_browser.services.yml b/project_browser.services.yml
index 7152710c468b868fb270f7761651b40fcc05d81d..8bfede4c2555154ae45bdbf29b424430ae251061 100644
--- a/project_browser.services.yml
+++ b/project_browser.services.yml
@@ -24,9 +24,6 @@ services:
       - { name: cache.bin }
     factory: cache_factory:get
     arguments: [project_browser]
-  Drupal\project_browser\EventSubscriber\DisableAddNewModuleRouteSubscriber:
-    tags:
-      - { name: event_subscriber }
   Drupal\project_browser\Activator:
     tags:
       - { name: service_collector, tag: project_browser.activator, call: addActivator }
diff --git a/src/EventSubscriber/DisableAddNewModuleRouteSubscriber.php b/src/EventSubscriber/DisableAddNewModuleRouteSubscriber.php
deleted file mode 100644
index ebc8459e11f7145046bf3e25cfe701d6a26006f0..0000000000000000000000000000000000000000
--- a/src/EventSubscriber/DisableAddNewModuleRouteSubscriber.php
+++ /dev/null
@@ -1,35 +0,0 @@
-<?php
-
-namespace Drupal\project_browser\EventSubscriber;
-
-use Drupal\Core\Config\ConfigFactoryInterface;
-use Drupal\Core\Routing\RouteSubscriberBase;
-use Symfony\Component\Routing\RouteCollection;
-
-/**
- * Route subscriber to disable "Add new module" page.
- */
-class DisableAddNewModuleRouteSubscriber extends RouteSubscriberBase {
-
-  /**
-   * DisableAddNewModuleRouteSubscriber constructor.
-   *
-   * @param \Drupal\Core\Config\ConfigFactoryInterface $configFactory
-   *   The config factory.
-   */
-  public function __construct(
-    protected ConfigFactoryInterface $configFactory,
-  ) {
-  }
-
-  /**
-   * {@inheritdoc}
-   */
-  protected function alterRoutes(RouteCollection $collection) {
-    $config = $this->configFactory->get('project_browser.admin_settings');
-    if ($config->get('disable_add_new_module') && $route = $collection->get('update.module_install')) {
-      $route->setRequirement('_access', 'FALSE');
-    }
-  }
-
-}
diff --git a/src/Form/SettingsForm.php b/src/Form/SettingsForm.php
index 08d106c94e0f737a7b164183848a719d53162b30..b4393728eb8cdde571cdf8f51e9bf325c3cb6447 100644
--- a/src/Form/SettingsForm.php
+++ b/src/Form/SettingsForm.php
@@ -2,14 +2,12 @@
 
 namespace Drupal\project_browser\Form;
 
-use Drupal\Component\Plugin\Discovery\CachedDiscoveryInterface;
 use Drupal\Core\Cache\CacheBackendInterface;
 use Drupal\Core\Config\ConfigFactoryInterface;
 use Drupal\Core\Config\TypedConfigManagerInterface;
 use Drupal\Core\Extension\ModuleHandlerInterface;
 use Drupal\Core\Form\ConfigFormBase;
 use Drupal\Core\Form\FormStateInterface;
-use Drupal\Core\Routing\RouteBuilderInterface;
 use Drupal\project_browser\Plugin\ProjectBrowserSourceManager;
 use Symfony\Component\DependencyInjection\ContainerInterface;
 
@@ -31,12 +29,6 @@ class SettingsForm extends ConfigFormBase {
    *   The back end cache.
    * @param \Drupal\Core\Extension\ModuleHandlerInterface $moduleHandler
    *   The module handler.
-   * @param \Drupal\Core\Routing\RouteBuilderInterface $routeBuilder
-   *   The route builder.
-   * @param \Drupal\project_browser\Plugin\CachedDiscoveryInterface $contextualLinkManager
-   *   The Project Browser source manager.
-   * @param \Drupal\Core\Cache\CacheBackendInterface $renderCache
-   *   The render cache.
    */
   public function __construct(
     ConfigFactoryInterface $config_factory,
@@ -44,9 +36,6 @@ class SettingsForm extends ConfigFormBase {
     private readonly ProjectBrowserSourceManager $manager,
     private readonly CacheBackendInterface $cacheBin,
     private readonly ModuleHandlerInterface $moduleHandler,
-    private readonly RouteBuilderInterface $routeBuilder,
-    private readonly CachedDiscoveryInterface $contextualLinkManager,
-    private readonly CacheBackendInterface $renderCache,
   ) {
     parent::__construct($config_factory, $typed_config_manager);
   }
@@ -61,9 +50,6 @@ class SettingsForm extends ConfigFormBase {
       $container->get(ProjectBrowserSourceManager::class),
       $container->get('cache.project_browser'),
       $container->get(ModuleHandlerInterface::class),
-      $container->get('router.builder'),
-      $container->get('plugin.manager.menu.contextual_link'),
-      $container->get('cache.render')
     );
   }
 
@@ -111,13 +97,6 @@ class SettingsForm extends ConfigFormBase {
       '#disabled' => $package_manager_not_ready,
     ];
 
-    $form['disable_add_new_module'] = [
-      '#type' => 'checkbox',
-      '#title' => $this->t('Disable "Add new module" page'),
-      '#default_value' => $config->get('disable_add_new_module'),
-      '#description' => $this->t('Removes access to the Drupal page that allows .tar modules to be installed, which does not use composer, so is strongly discouraged when using Project Browser.'),
-    ];
-
     if ($package_manager_not_ready) {
       $form['allow_ui_install_compatibility'] = [
         '#type' => 'container',
@@ -240,22 +219,13 @@ class SettingsForm extends ConfigFormBase {
    */
   public function submitForm(array &$form, FormStateInterface $form_state) {
     $settings = $this->config('project_browser.admin_settings');
-    $disable_old = $settings->get('disable_add_new_module');
-    $disable_new = $form_state->getValue('disable_add_new_module');
     $all_plugins = $form_state->getValue('enabled_sources');
     $enabled_plugins = array_filter($all_plugins, fn($source) => $source['status'] === 'enabled');
     $settings
       ->set('enabled_sources', array_keys($enabled_plugins))
       ->set('allow_ui_install', $form_state->getValue('allow_ui_install'))
-      ->set('disable_add_new_module', $disable_new)
       ->save();
     $this->cacheBin->deleteAll();
-    if ($disable_old != $disable_new) {
-      // If disable add new module changed, clear route and menu caches.
-      $this->routeBuilder->rebuild();
-      $this->contextualLinkManager->clearCachedDefinitions();
-      $this->renderCache->invalidateAll();
-    }
     parent::submitForm($form, $form_state);
   }
 
diff --git a/tests/src/Functional/DisableAddNewModuleTest.php b/tests/src/Functional/DisableAddNewModuleTest.php
deleted file mode 100644
index f696ab85d0a426e5f3032868d8f908a6c8b7a5cd..0000000000000000000000000000000000000000
--- a/tests/src/Functional/DisableAddNewModuleTest.php
+++ /dev/null
@@ -1,108 +0,0 @@
-<?php
-
-namespace Drupal\Tests\project_browser\Functional;
-
-use Drupal\Core\Session\AccountInterface;
-use Drupal\Tests\BrowserTestBase;
-
-/**
- * Test disabling Add new module page.
- *
- * @group disable_add_new_module
- */
-class DisableAddNewModuleTest extends BrowserTestBase {
-
-  /**
-   * {@inheritdoc}
-   */
-  protected $defaultTheme = 'stark';
-
-  /**
-   * {@inheritdoc}
-   */
-  protected static $modules = ['update', 'project_browser'];
-
-  /**
-   * A user with admin permissions.
-   *
-   * @var \Drupal\Core\Session\AccountInterface
-   */
-  protected AccountInterface $adminUser;
-
-  /**
-   * {@inheritdoc}
-   */
-  protected function setUp(): void {
-    parent::setUp();
-    // Create user with access to install and update modules.
-    $this->adminUser = $this->drupalCreateUser([
-      'administer modules',
-      'administer software updates',
-      'administer site configuration',
-    ]);
-    $this->drupalLogin($this->adminUser);
-  }
-
-  /**
-   * Test admin user denied access to Add new module page.
-   */
-  public function testAddNewModuleDisabled(): void {
-    $session = $this->assertSession();
-    $this->drupalGet('admin/modules/install');
-    $session->statusCodeEquals(403);
-  }
-
-  /**
-   * Test uninstalling restores access to Add new module.
-   */
-  public function testUninstall(): void {
-    $session = $this->assertSession();
-    $page = $this->getSession()->getPage();
-    // Go to module uninstall page.
-    $this->drupalGet('/admin/modules/uninstall');
-    $session->statusCodeEquals(200);
-    $page->checkField('edit-uninstall-project-browser');
-    $page->pressButton('edit-submit');
-    $session->statusCodeEquals(200);
-    // Confirm uninstall.
-    $page->pressButton('edit-submit');
-    $session->statusCodeEquals(200);
-    $session->pageTextContains('The selected modules have been uninstalled.');
-    // Should now be able to access Add new module page.
-    $this->drupalGet('admin/modules/install');
-    $session->statusCodeEquals(200);
-  }
-
-  /**
-   * Test setting the "disable add new module" setting.
-   *
-   * Test to check that "Add new module" page can be enabled through Project
-   * Browser admin page.
-   */
-  public function testDisableSetting(): void {
-    $session = $this->assertSession();
-    $page = $this->getSession()->getPage();
-    // Go to Project browser settings and uncheck the "disable add new module"
-    // checkbox.
-    $this->drupalGet('/admin/config/development/project_browser');
-    $session->statusCodeEquals(200);
-    $page->uncheckField('disable_add_new_module');
-    $page->pressButton('edit-submit');
-    $session->statusCodeEquals(200);
-    $session->pageTextContains('The configuration options have been saved.');
-    // Should now be able to access Add new module page.
-    $this->drupalGet('admin/modules/install');
-    $session->statusCodeEquals(200);
-    // Go to Project browser settings, check "disable add new module" checkbox.
-    $this->drupalGet('/admin/config/development/project_browser');
-    $session->statusCodeEquals(200);
-    $page->checkField('disable_add_new_module');
-    $page->pressButton('edit-submit');
-    $session->statusCodeEquals(200);
-    $session->pageTextContains('The configuration options have been saved.');
-    // Should no longer be able to access Add new module page.
-    $this->drupalGet('admin/modules/install');
-    $session->statusCodeEquals(403);
-  }
-
-}