Skip to content

Repository files navigation

Drupal CMS Installer - Deutsche Anpassung / German Localization

Dieses Repository bietet eine spezialisierte Theme-Erweiterung für den Drupal CMS Installer (Starshot), um die Installationsroutine vollständig auf Deutsch zu lokalisieren.

This repository provides a specialized theme extension for the Drupal CMS Installer (Starshot) to fully localize the installation routine into German.


🇩🇪 Deutsch

Was macht dieses Paket?

Der Standard-Installer von Drupal CMS ist aktuell auf Englisch festgeschrieben. Dieses Paket greift in die Erstinsalltion im Webbrowser ein, sobald "Deutsch" als Installationssprache gewählt wird:

  • Automatisches Theme-Patching: Ein PHP-Script (scripts/theme-fix.php) passt die Konfiguration des Original-Installers (drupal_cms_installer.info.yml) automatisch an, um dieses Theme als Standard zu setzen.
  • UI-Übersetzungen: Über js/installer-translations.js werden englische Texte wie "Choose a site template" direkt im Browser durch deutsche Entsprechungen ersetzt.
  • Fortschrittsanzeige: Die Fortschrittsbalken werden via js/progress-override.js angepasst, um deutsche Statusmeldungen anzuzeigen.

⚠️ Composer führt post-install-cmd/post-update-cmd-Scripts nur aus dem Root-Package aus, nicht aus Abhängigkeiten. Der theme-fix.php-Patch wird also nicht automatisch bei jedem composer update neu angewendet — ein Update von drupal/drupal_cms_installer kann die Datei drupal_cms_installer.info.yml überschreiben und den Patch damit zurücksetzen. Führe in diesem Fall installer_de_patch.sh (siehe unten) erneut in deinem Projektverzeichnis aus, oder rufe php web/profiles/contrib/drupal_cms_installer_de/scripts/theme-fix.php manuell auf.

Schnelle Installation

Das Script erkennt automatisch, ob es ein frisches Drupal CMS installieren soll oder ob es ein bereits per Composer installiertes Drupal-CMS-Projekt nachträglich patchen soll:

  • Frische Installation: Führe das Script in einem leeren Verzeichnis aus. Es lädt Drupal CMS per composer create-project in einen neuen Unterordner cms/ und wendet den Patch dort an. Über ein optionales erstes Argument lässt sich der Zielordner anpassen (Default bleibt cms). Da bei curl | bash Argumente nicht automatisch durchgereicht werden, ist die -s ---Syntax nötig:

    curl -sSL https://raw.githubusercontent.com/nodedropweb/drupal_cms_installer_de/master/installer_de_patch.sh | bash -s -- drupalcms
  • Bestehendes Projekt: Führe das Script direkt im Wurzelverzeichnis deines bestehenden Drupal-CMS-Composer-Projekts aus (dort, wo composer.json und web/ liegen — z.B. dein Projekt-Root, nicht der web/-Ordner selbst). Das Script erkennt die vorhandene Installation an web/profiles/contrib/drupal_cms_installer und bindet das deutsche Theme direkt dort ein, statt ein neues, ungenutztes Projekt anzulegen.

    Wichtig: Ist die Seite bereits fertig installiert (es existiert schon eine web/sites/default/settings.php), hat der Patch keinen sichtbaren Effekt auf die laufende Seite — der Installer-Theme-Fix greift nur bei einem (erneuten) Aufruf von core/install.php. In diesem Fall entfernt das Script den Theme-Ordner stattdessen automatisch wieder.

ℹ️ Kein Composer-Eintrag: drupal_cms_installer_de ist kein echtes drupal.org-Projekt und wird deshalb bewusst nicht per composer require eingebunden — das Script lädt die Dateien stattdessen direkt per git clone nach web/profiles/contrib/drupal_cms_installer_de (dort findet Drupal Erweiterungen ohnehin automatisch). composer.json und composer.lock bleiben dadurch komplett unverändert; es gibt keinen VCS-Repository-Eintrag, der spätere composer-Operationen (z. B. Project Browsers UI-Install über Package Manager) mit einem Host-Key- oder Auth-Fehler zum Absturz bringen könnte. Nur die echten drupal.org-Zusatzmodule (pb_localizer, yoast_seo_i18n, default_content_locale) landen regulär in composer.json. Führe installer_de_patch.sh ein zweites Mal im selben Verzeichnis aus, sobald web/sites/default/settings.php existiert — das Script erkennt das automatisch und entfernt den Theme-Ordner wieder, da er nach der Ersteinrichtung ohnehin inaktiv ist.

curl -sSL https://raw.githubusercontent.com/nodedropweb/drupal_cms_installer_de/master/installer_de_patch.sh | bash

🇺🇸 English

What does this package do?

The default Drupal CMS installer is currently hardcoded for English. This package intervenes as soon as "German" is selected as the installation language:

  • Automatic Theme Patching: A PHP script (scripts/theme-fix.php) automatically modifies the original installer's configuration (drupal_cms_installer.info.yml) to set this theme as the default.
  • UI Translations: Using js/installer-translations.js, English strings like "Choose a site template" are replaced with German equivalents directly in the browser.
  • Progress Bar Override: Customizes the progress bar via js/progress-override.js to display German status messages.

⚠️ Composer only runs post-install-cmd/post-update-cmd scripts from the root package, never from dependencies. The theme-fix.php patch is therefore not re-applied automatically on every composer update — updating drupal/drupal_cms_installer can overwrite drupal_cms_installer.info.yml and reset the patch. Re-run installer_de_patch.sh (see below) in your project directory, or call php web/profiles/contrib/drupal_cms_installer_de/scripts/theme-fix.php manually.

Quick Installation

The script automatically detects whether to install a fresh Drupal CMS or patch an already Composer-installed Drupal CMS project:

  • Fresh install: Run the script in an empty directory. It downloads Drupal CMS via composer create-project into a new cms/ subfolder and applies the patch there. An optional first argument overrides the target folder (default stays cms). Since curl | bash doesn't forward arguments automatically, use the -s -- syntax:

    curl -sSL https://raw.githubusercontent.com/nodedropweb/drupal_cms_installer_de/master/installer_de_patch.sh | bash -s -- drupalcms
  • Existing project: Run the script directly in the root of your existing Drupal CMS Composer project (where composer.json and web/ live — your project root, not the web/ folder itself). The script detects the existing installation via web/profiles/contrib/drupal_cms_installer and wires the German theme in directly, instead of creating a new, unused project.

    Note: if the site is already fully installed (a web/sites/default/settings.php already exists), the patch has no visible effect on the running site — the installer theme fix only applies the next time core/install.php runs. In that case the script instead automatically removes the theme folder again.

ℹ️ No composer entry: drupal_cms_installer_de isn't a real drupal.org project, so it's deliberately not installed via composer require — the script instead downloads it directly with git clone into web/profiles/contrib/drupal_cms_installer_de (where Drupal discovers extensions automatically anyway). composer.json and composer.lock stay completely untouched — there's no VCS repository entry that could make later composer operations (e.g. Project Browser's UI install via Package Manager) fail with a host-key or auth error. Only the real drupal.org add-on modules (pb_localizer, yoast_seo_i18n, default_content_locale) go into composer.json as usual. Run installer_de_patch.sh a second time in the same directory once web/sites/default/settings.php exists — the script detects that automatically and removes the theme folder again, since it's inert after the initial setup anyway.

curl -sSL https://raw.githubusercontent.com/nodedropweb/drupal_cms_installer_de/master/installer_de_patch.sh | bash

🛠 Technische Details / Technical Details

  • Package Name: drupal/drupal_cms_installer_de
  • Type: drupal-profile
  • Base Theme: drupal_cms_installer_theme
  • License: GPL-2.0-or-later

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages