diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 75561f370f5e..cde8cfb205d3 100755 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -23,7 +23,7 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} - extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, imagick + extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, imagick, gettext tools: composer:v2 coverage: none diff --git a/.github/workflows/code-rules.yml b/.github/workflows/code-rules.yml index b7730c2bf5e2..39c2dc05b99d 100644 --- a/.github/workflows/code-rules.yml +++ b/.github/workflows/code-rules.yml @@ -16,7 +16,7 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: '8.4' - extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, imagick + extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, imagick, gettext tools: composer:v2 coverage: none diff --git a/.github/workflows/install-check-trunk-8.4.yml b/.github/workflows/install-check-trunk-8.4.yml index 97dde5cff33b..77f8e1872a5e 100644 --- a/.github/workflows/install-check-trunk-8.4.yml +++ b/.github/workflows/install-check-trunk-8.4.yml @@ -34,7 +34,7 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} - extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, xml, mysql + extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, xml, mysql, gettext tools: composer:v2 coverage: none diff --git a/.github/workflows/install-check-trunk-8.5.yml b/.github/workflows/install-check-trunk-8.5.yml index 2d4770e4a0d5..5db6c0afdc4f 100644 --- a/.github/workflows/install-check-trunk-8.5.yml +++ b/.github/workflows/install-check-trunk-8.5.yml @@ -34,7 +34,7 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} - extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, xml, mysql + extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, xml, mysql, gettext tools: composer:v2 coverage: none diff --git a/.github/workflows/legacy-ui.yml b/.github/workflows/legacy-ui.yml index d3aa8b1acfce..491aea3a9d3b 100755 --- a/.github/workflows/legacy-ui.yml +++ b/.github/workflows/legacy-ui.yml @@ -35,7 +35,7 @@ jobs: uses: shivammathur/setup-php@v2 with: php-version: 8.4 - extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, xml, mysql + extensions: dom, curl, libxml, mbstring, zip, gd, json, readline, xsl, xml, mysql, gettext tools: composer:v2 coverage: none diff --git a/composer.json b/composer.json index 5197e1b5ec6f..e999216eb571 100755 --- a/composer.json +++ b/composer.json @@ -50,6 +50,7 @@ "ext-xml": "*", "ext-zip": "*", "ext-imagick": "*", + "ext-gettext": "*", "bacon/bacon-qr-code": "^3.0", "celtic/lti": "^5.4.7", "dflydev/fig-cookies": "^3.1.0", diff --git a/composer.lock b/composer.lock index 0e3d6f57af31..073940172e60 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "2b858b71ec8bdfbcbf1a4de417423914", + "content-hash": "91192277b93b05693d4426e61cf0a70e", "packages": [ { "name": "bacon/bacon-qr-code", @@ -11128,7 +11128,8 @@ "ext-libxml": "*", "ext-xml": "*", "ext-zip": "*", - "ext-imagick": "*" + "ext-imagick": "*", + "ext-gettext": "*" }, "platform-dev": {}, "plugin-api-version": "2.9.0" diff --git a/docs/configuration/install.md b/docs/configuration/install.md index 543ed55dba6c..200a49ff11e4 100755 --- a/docs/configuration/install.md +++ b/docs/configuration/install.md @@ -113,9 +113,13 @@ Other web servers capable of processing PHP, such as Nginx or Apache2 with FCGI **Required PHP Extensions:** ``` -gd, dom, xsl, pdo, pdo_mysql, curl, json, simplexml, libxml, xml, zip, imagick, mbstring +gd, dom, xsl, pdo, pdo_mysql, curl, json, simplexml, libxml, xml, zip, imagick, mbstring, gettext ``` +ILIAS serves its translations through native gettext: the PHP extension `gettext` and the C library's +`C.utf8` locale (glibc) MUST be available to the PHP of the web server as well as to the CLI. Without them +the user interface shows identifiers (e.g. `-login-`) instead of texts. + **Optional PHP Extensions:** * `soap` for SOAP user administration