diff --git a/core/modules/language/language.services.yml b/core/modules/language/language.services.yml
index 4fda6484c1..ea1e5a42bf 100644
--- a/core/modules/language/language.services.yml
+++ b/core/modules/language/language.services.yml
@@ -2,14 +2,22 @@ services:
   plugin.manager.language_negotiation_method:
     class: Drupal\language\LanguageNegotiationMethodManager
     arguments: ['@container.namespaces', '@cache.discovery', '@module_handler']
+  language.language_manager:
+    class: Drupal\language\ConfigurableLanguageManager
+    decorates: language_manager
+    arguments:
+      - '@config.factory'
+      - '@module_handler'
+      - '@language.config_factory_override'
+      - '@request_stack'
   language_negotiator:
     class: Drupal\language\LanguageNegotiator
-    arguments: ['@language_manager', '@plugin.manager.language_negotiation_method', '@config.factory', '@settings', '@request_stack']
+    arguments: ['@language.language_manager', '@plugin.manager.language_negotiation_method', '@config.factory', '@settings', '@request_stack']
     calls:
       - [initLanguageManager]
   language.config_subscriber:
     class: Drupal\language\EventSubscriber\ConfigSubscriber
-    arguments: ['@language_manager', '@language.default', '@config.factory', '@language_negotiator']
+    arguments: ['@language.language_manager', '@language.default', '@config.factory', '@language_negotiator']
     tags:
       - { name: event_subscriber }
   language.config_factory_override:
@@ -20,7 +28,7 @@ services:
       - { name: event_subscriber }
   language_converter:
     class: Drupal\language\LanguageConverter
-    arguments: ['@language_manager']
+    arguments: ['@language.language_manager']
     tags:
       - { name: paramconverter }
     lazy: true
diff --git a/core/modules/language/src/LanguageServiceProvider.php b/core/modules/language/src/LanguageServiceProvider.php
index a7e934aab6..78f598e892 100644
--- a/core/modules/language/src/LanguageServiceProvider.php
+++ b/core/modules/language/src/LanguageServiceProvider.php
@@ -44,12 +44,6 @@ public function register(ContainerBuilder $container) {
    * {@inheritdoc}
    */
   public function alter(ContainerBuilder $container) {
-    $definition = $container->getDefinition('language_manager');
-    $definition->setClass('Drupal\language\ConfigurableLanguageManager')
-      ->addArgument(new Reference('config.factory'))
-      ->addArgument(new Reference('module_handler'))
-      ->addArgument(new Reference('language.config_factory_override'))
-      ->addArgument(new Reference('request_stack'));
     if ($default_language_values = $this->getDefaultLanguageValues()) {
       $container->setParameter('language.default_values', $default_language_values);
     }
