Kimai Update to 2.33.0 fails #907

Closed
opened 2026-02-04 22:08:33 +03:00 by OVERLORD · 14 comments
Owner

Originally created by @ocr99 on GitHub (May 5, 2025).

Have you read and understood the above guidelines?

Yes

📜 What is the name of the script you are using?

Kimai

📂 What was the exact command used to execute the script?

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/kimai.sh)"

⚙️ What settings are you using?

  • Default Settings
  • Advanced Settings

🖥️ Which Linux distribution are you using?

Debian 12

📝 Provide a clear and concise description of the issue.

Kimai is not updating correctly to version 2.33.0, it updates PHP but then it fails with the error:
[ERROR] in line 70: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader

🔄 Steps to reproduce the issue.

Update Kimai via Proxmox console with command: bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/kimai.sh)"

Paste the full error output (if available).

This is with verbose, it updates PHP correctly but fails on the app itself

⠙ Migrating PHP 8.3 to 8.4Processing triggers for php8.4-cli (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ...
Processing triggers for libapache2-mod-php8.4 (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ...
  ✔️   Migrated PHP 8.3 to 8.4
  ✔️   Stopped Apache2
  ✔️   Backup completed
⠧ Updating Kimai to 2.33.0environment: line 70: composer: command not found

[ERROR] in line 70: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader

root@kimai:~#

🖼️ Additional context (optional).

If it is relevant, I'm currently on version 2.31.0

Originally created by @ocr99 on GitHub (May 5, 2025). ### ✅ Have you read and understood the above guidelines? Yes ### 📜 What is the name of the script you are using? Kimai ### 📂 What was the exact command used to execute the script? bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/kimai.sh)" ### ⚙️ What settings are you using? - [x] Default Settings - [ ] Advanced Settings ### 🖥️ Which Linux distribution are you using? Debian 12 ### 📝 Provide a clear and concise description of the issue. Kimai is not updating correctly to version 2.33.0, it updates PHP but then it fails with the error: `[ERROR] in line 70: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader` ### 🔄 Steps to reproduce the issue. Update Kimai via Proxmox console with command: `bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/kimai.sh)"` ### ❌ Paste the full error output (if available). This is with verbose, it updates PHP correctly but fails on the app itself ``` ⠙ Migrating PHP 8.3 to 8.4Processing triggers for php8.4-cli (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ... Processing triggers for libapache2-mod-php8.4 (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ... ✔️ Migrated PHP 8.3 to 8.4 ✔️ Stopped Apache2 ✔️ Backup completed ⠧ Updating Kimai to 2.33.0environment: line 70: composer: command not found [ERROR] in line 70: exit code 0: while executing command $STD composer install --no-dev --optimize-autoloader root@kimai:~# ``` ### 🖼️ Additional context (optional). If it is relevant, I'm currently on version 2.31.0
OVERLORD added the bug label 2026-02-04 22:08:33 +03:00
Author
Owner

@MickLesk commented on GitHub (May 5, 2025):

Your composer isnt load into bash. How do you updated?

@MickLesk commented on GitHub (May 5, 2025): Your composer isnt load into bash. How do you updated?
Author
Owner

@ocr99 commented on GitHub (May 5, 2025):

I tried with "Update" and with the full link: bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/kimai.sh)", neither worked.

@ocr99 commented on GitHub (May 5, 2025): I tried with "Update" and with the full link: `bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/kimai.sh)"`, neither worked.
Author
Owner

@MickLesk commented on GitHub (May 5, 2025):

From which system? External SSH? Proxmox webui?

@MickLesk commented on GitHub (May 5, 2025): From which system? External SSH? Proxmox webui?
Author
Owner

@ocr99 commented on GitHub (May 5, 2025):

Proxmox Web UI on the main root user like always, I also updated more LXC without issues today

@ocr99 commented on GitHub (May 5, 2025): Proxmox Web UI on the main root user like always, I also updated more LXC without issues today
Author
Owner

@MickLesk commented on GitHub (May 5, 2025):

Into the LXC without pct enter?

Thats Strange
Maybe try an reinstall of Composer

@MickLesk commented on GitHub (May 5, 2025): Into the LXC without pct enter? Thats Strange Maybe try an reinstall of Composer
Author
Owner

@ocr99 commented on GitHub (May 5, 2025):

I can upgrade the composer manually, how can I reinstall it?

root@kimai:~# cd /opt/kimai/
root@kimai:/opt/kimai# composer update
Composer is operating significantly slower than normal because you do not have the PHP curl extension enabled.
Loading composer repositories with package information
Restricting packages listed in "symfony/symfony" to "6.4.*"
Updating dependencies
Lock file operations: 1 install, 56 updates, 0 removals
  - Upgrading dama/doctrine-test-bundle (v8.2.2 => v8.3.0)
  - Upgrading doctrine/collections (2.2.2 => 2.3.0)
  - Upgrading doctrine/deprecations (1.1.4 => 1.1.5)
  - Upgrading doctrine/doctrine-bundle (2.13.2 => 2.14.0)
  - Upgrading doctrine/migrations (3.8.2 => 3.9.0)
  - Upgrading doctrine/orm (2.20.2 => 2.20.3)
  - Upgrading egulias/email-validator (4.0.3 => 4.0.4)
  - Upgrading friendsofphp/php-cs-fixer (v3.70.0 => v3.75.0)
  - Upgrading gedmo/doctrine-extensions (v3.19.0 => v3.20.0)
  - Upgrading jms/serializer (3.32.3 => 3.32.4)
  - Upgrading kevinpapst/tabler-bundle (1.7.0 => 1.8.0)
  - Upgrading league/csv (9.21.0 => 9.23.0)
  - Upgrading monolog/monolog (3.8.1 => 3.9.0)
  - Upgrading myclabs/deep-copy (1.13.0 => 1.13.1)
  - Upgrading nelmio/api-doc-bundle (v4.37.1 => v4.38.2)
  - Upgrading phpdocumentor/reflection-docblock (5.6.1 => 5.6.2)
  - Upgrading phpstan/phpstan (2.1.6 => 2.1.14)
  - Upgrading phpstan/phpstan-deprecation-rules (2.0.1 => 2.0.2)
  - Upgrading phpstan/phpstan-doctrine (2.0.1 => 2.0.3)
  - Upgrading phpstan/phpstan-phpunit (2.0.4 => 2.0.6)
  - Upgrading phpstan/phpstan-strict-rules (2.0.3 => 2.0.4)
  - Upgrading phpstan/phpstan-symfony (2.0.2 => 2.0.4)
  - Upgrading phpunit/phpunit (10.5.45 => 10.5.46)
  - Upgrading symfony/cache (v6.4.19 => v6.4.21)
  - Upgrading symfony/console (v6.4.17 => v6.4.21)
  - Upgrading symfony/dependency-injection (v6.4.19 => v6.4.20)
  - Upgrading symfony/doctrine-bridge (v6.4.19 => v6.4.21)
  - Upgrading symfony/error-handler (v6.4.19 => v6.4.20)
  - Upgrading symfony/flex (v2.4.7 => v2.5.0)
  - Upgrading symfony/form (v6.4.13 => v6.4.21)
  - Upgrading symfony/framework-bundle (v6.4.19 => v6.4.21)
  - Upgrading symfony/http-foundation (v6.4.18 => v6.4.21)
  - Upgrading symfony/http-kernel (v6.4.19 => v6.4.21)
  .....
@ocr99 commented on GitHub (May 5, 2025): I can upgrade the composer manually, how can I reinstall it? ``` root@kimai:~# cd /opt/kimai/ root@kimai:/opt/kimai# composer update Composer is operating significantly slower than normal because you do not have the PHP curl extension enabled. Loading composer repositories with package information Restricting packages listed in "symfony/symfony" to "6.4.*" Updating dependencies Lock file operations: 1 install, 56 updates, 0 removals - Upgrading dama/doctrine-test-bundle (v8.2.2 => v8.3.0) - Upgrading doctrine/collections (2.2.2 => 2.3.0) - Upgrading doctrine/deprecations (1.1.4 => 1.1.5) - Upgrading doctrine/doctrine-bundle (2.13.2 => 2.14.0) - Upgrading doctrine/migrations (3.8.2 => 3.9.0) - Upgrading doctrine/orm (2.20.2 => 2.20.3) - Upgrading egulias/email-validator (4.0.3 => 4.0.4) - Upgrading friendsofphp/php-cs-fixer (v3.70.0 => v3.75.0) - Upgrading gedmo/doctrine-extensions (v3.19.0 => v3.20.0) - Upgrading jms/serializer (3.32.3 => 3.32.4) - Upgrading kevinpapst/tabler-bundle (1.7.0 => 1.8.0) - Upgrading league/csv (9.21.0 => 9.23.0) - Upgrading monolog/monolog (3.8.1 => 3.9.0) - Upgrading myclabs/deep-copy (1.13.0 => 1.13.1) - Upgrading nelmio/api-doc-bundle (v4.37.1 => v4.38.2) - Upgrading phpdocumentor/reflection-docblock (5.6.1 => 5.6.2) - Upgrading phpstan/phpstan (2.1.6 => 2.1.14) - Upgrading phpstan/phpstan-deprecation-rules (2.0.1 => 2.0.2) - Upgrading phpstan/phpstan-doctrine (2.0.1 => 2.0.3) - Upgrading phpstan/phpstan-phpunit (2.0.4 => 2.0.6) - Upgrading phpstan/phpstan-strict-rules (2.0.3 => 2.0.4) - Upgrading phpstan/phpstan-symfony (2.0.2 => 2.0.4) - Upgrading phpunit/phpunit (10.5.45 => 10.5.46) - Upgrading symfony/cache (v6.4.19 => v6.4.21) - Upgrading symfony/console (v6.4.17 => v6.4.21) - Upgrading symfony/dependency-injection (v6.4.19 => v6.4.20) - Upgrading symfony/doctrine-bridge (v6.4.19 => v6.4.21) - Upgrading symfony/error-handler (v6.4.19 => v6.4.20) - Upgrading symfony/flex (v2.4.7 => v2.5.0) - Upgrading symfony/form (v6.4.13 => v6.4.21) - Upgrading symfony/framework-bundle (v6.4.19 => v6.4.21) - Upgrading symfony/http-foundation (v6.4.18 => v6.4.21) - Upgrading symfony/http-kernel (v6.4.19 => v6.4.21) ..... ```
Author
Owner

@MickLesk commented on GitHub (May 6, 2025):

ive test it now from 2.31 version, work fine for me.

whats the output if you enter /opt/kimai and execute: composer install --no-dev --optimize-autoloader

@MickLesk commented on GitHub (May 6, 2025): ive test it now from 2.31 version, work fine for me. whats the output if you enter /opt/kimai and execute: composer install --no-dev --optimize-autoloader
Author
Owner

@ocr99 commented on GitHub (May 6, 2025):

Seems all good

root@kimai:/opt/kimai# composer install --no-dev --optimize-autoloader
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Package operations: 0 installs, 0 updates, 52 removals
  - Removing theseer/tokenizer (1.2.3)
  - Removing symfony/web-profiler-bundle (v6.4.19)
  - Removing symfony/phpunit-bridge (v6.4.16)
  - Removing symfony/dom-crawler (v6.4.19)
  - Removing symfony/debug-bundle (v6.4.13)
  - Removing symfony/browser-kit (v6.4.19)
  - Removing sebastian/version (4.0.1)
  - Removing sebastian/type (4.0.0)
  - Removing sebastian/recursion-context (5.0.0)
  - Removing sebastian/object-reflector (3.0.0)
  - Removing sebastian/object-enumerator (5.0.0)
  - Removing sebastian/lines-of-code (2.0.2)
  - Removing sebastian/global-state (6.0.2)
  - Removing sebastian/exporter (5.1.2)
  - Removing sebastian/environment (6.1.0)
  - Removing sebastian/diff (5.1.1)
  - Removing sebastian/complexity (3.2.0)
  - Removing sebastian/comparator (5.0.3)
  - Removing sebastian/code-unit-reverse-lookup (3.0.0)
  - Removing sebastian/code-unit (2.0.0)
  - Removing sebastian/cli-parser (2.0.1)
  - Removing react/stream (v1.4.0)
  - Removing react/socket (v1.16.0)
  - Removing react/promise (v3.2.0)
  - Removing react/event-loop (v1.5.0)
  - Removing react/dns (v1.13.0)
  - Removing react/child-process (v0.6.6)
  - Removing react/cache (v1.2.0)
  - Removing phpunit/phpunit (10.5.46)
  - Removing phpunit/php-timer (6.0.0)
  - Removing phpunit/php-text-template (3.0.1)
  - Removing phpunit/php-invoker (4.0.0)
  - Removing phpunit/php-file-iterator (4.1.0)
  - Removing phpunit/php-code-coverage (10.1.16)
  - Removing phpstan/phpstan-symfony (2.0.4)
  - Removing phpstan/phpstan-strict-rules (2.0.4)
  - Removing phpstan/phpstan-phpunit (2.0.6)
  - Removing phpstan/phpstan-doctrine (2.0.3)
  - Removing phpstan/phpstan-deprecation-rules (2.0.2)
  - Removing phpstan/phpstan (2.1.14)
  - Removing phar-io/version (3.2.1)
  - Removing phar-io/manifest (2.0.4)
  - Removing masterminds/html5 (2.9.0)
  - Removing friendsofphp/php-cs-fixer (v3.75.0)
  - Removing fidry/cpu-core-counter (1.2.0)
  - Removing fakerphp/faker (v1.24.1)
  - Removing evenement/evenement (v3.0.2)
  - Removing doctrine/doctrine-fixtures-bundle (3.7.1)
  - Removing doctrine/data-fixtures (2.0.2)
  - Removing dama/doctrine-test-bundle (v8.3.0)
  - Removing composer/xdebug-handler (3.0.5)
  - Removing clue/ndjson-react (v1.3.0)
Generating optimized autoload files
94 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

Run composer recipes at any time to see the status of your Symfony recipes.

Executing script cache:clear [OK]
Executing script assets:install [OK]

I tried to update then via Update command or full script link but it fails with a different error:

⠋ Migrating PHP 8.3 to 8.4Processing triggers for php8.4-cli (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ...
⠙ Migrating PHP 8.3 to 8.4Processing triggers for libapache2-mod-php8.4 (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ...
  ✔️   Migrated PHP 8.3 to 8.4
  ✔️   Stopped Apache2
  ✔️   Backup completed
⠇ Updating Kimai to 2.33.0curl: (23) Failure writing output to destination
curl: (22) The requested URL returned error: 400

[ERROR] in line 62: exit code 0: while executing command curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip")
@ocr99 commented on GitHub (May 6, 2025): Seems all good ``` root@kimai:/opt/kimai# composer install --no-dev --optimize-autoloader Installing dependencies from lock file Verifying lock file contents can be installed on current platform. Package operations: 0 installs, 0 updates, 52 removals - Removing theseer/tokenizer (1.2.3) - Removing symfony/web-profiler-bundle (v6.4.19) - Removing symfony/phpunit-bridge (v6.4.16) - Removing symfony/dom-crawler (v6.4.19) - Removing symfony/debug-bundle (v6.4.13) - Removing symfony/browser-kit (v6.4.19) - Removing sebastian/version (4.0.1) - Removing sebastian/type (4.0.0) - Removing sebastian/recursion-context (5.0.0) - Removing sebastian/object-reflector (3.0.0) - Removing sebastian/object-enumerator (5.0.0) - Removing sebastian/lines-of-code (2.0.2) - Removing sebastian/global-state (6.0.2) - Removing sebastian/exporter (5.1.2) - Removing sebastian/environment (6.1.0) - Removing sebastian/diff (5.1.1) - Removing sebastian/complexity (3.2.0) - Removing sebastian/comparator (5.0.3) - Removing sebastian/code-unit-reverse-lookup (3.0.0) - Removing sebastian/code-unit (2.0.0) - Removing sebastian/cli-parser (2.0.1) - Removing react/stream (v1.4.0) - Removing react/socket (v1.16.0) - Removing react/promise (v3.2.0) - Removing react/event-loop (v1.5.0) - Removing react/dns (v1.13.0) - Removing react/child-process (v0.6.6) - Removing react/cache (v1.2.0) - Removing phpunit/phpunit (10.5.46) - Removing phpunit/php-timer (6.0.0) - Removing phpunit/php-text-template (3.0.1) - Removing phpunit/php-invoker (4.0.0) - Removing phpunit/php-file-iterator (4.1.0) - Removing phpunit/php-code-coverage (10.1.16) - Removing phpstan/phpstan-symfony (2.0.4) - Removing phpstan/phpstan-strict-rules (2.0.4) - Removing phpstan/phpstan-phpunit (2.0.6) - Removing phpstan/phpstan-doctrine (2.0.3) - Removing phpstan/phpstan-deprecation-rules (2.0.2) - Removing phpstan/phpstan (2.1.14) - Removing phar-io/version (3.2.1) - Removing phar-io/manifest (2.0.4) - Removing masterminds/html5 (2.9.0) - Removing friendsofphp/php-cs-fixer (v3.75.0) - Removing fidry/cpu-core-counter (1.2.0) - Removing fakerphp/faker (v1.24.1) - Removing evenement/evenement (v3.0.2) - Removing doctrine/doctrine-fixtures-bundle (3.7.1) - Removing doctrine/data-fixtures (2.0.2) - Removing dama/doctrine-test-bundle (v8.3.0) - Removing composer/xdebug-handler (3.0.5) - Removing clue/ndjson-react (v1.3.0) Generating optimized autoload files 94 packages you are using are looking for funding. Use the `composer fund` command to find out more! Run composer recipes at any time to see the status of your Symfony recipes. Executing script cache:clear [OK] Executing script assets:install [OK] ``` I tried to update then via `Update` command or full script link but it fails with a different error: ``` ⠋ Migrating PHP 8.3 to 8.4Processing triggers for php8.4-cli (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ... ⠙ Migrating PHP 8.3 to 8.4Processing triggers for libapache2-mod-php8.4 (8.4.6-1+0~20250411.26+debian12~1.gbpda4ea7) ... ✔️ Migrated PHP 8.3 to 8.4 ✔️ Stopped Apache2 ✔️ Backup completed ⠇ Updating Kimai to 2.33.0curl: (23) Failure writing output to destination curl: (22) The requested URL returned error: 400 [ERROR] in line 62: exit code 0: while executing command curl -fsSL "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip" -o $(basename "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip") ```
Author
Owner

@MickLesk commented on GitHub (May 6, 2025):

curl 400 -> github not reachable for tarball

@MickLesk commented on GitHub (May 6, 2025): curl 400 -> github not reachable for tarball
Author
Owner

@ocr99 commented on GitHub (May 6, 2025):

Weird... I can ping it without issue:

root@kimai:~# ping raw.githubusercontent.com
PING raw.githubusercontent.com (185.199.108.133) 56(84) bytes of data.
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=1 ttl=56 time=10.2 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=2 ttl=56 time=10.0 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=3 ttl=56 time=10.6 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=4 ttl=56 time=10.2 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=5 ttl=56 time=9.95 ms


root@kimai:~# ping github.com
PING github.com (140.82.121.3) 56(84) bytes of data.
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=1 ttl=51 time=47.4 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=2 ttl=51 time=47.8 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=3 ttl=51 time=47.5 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=4 ttl=51 time=47.8 ms

I paused all piholes (that weren't blocking anyway) and still same issue, I tried manually going to the URL and in fact it doesn't exist: https://github.com/kimai/kimai/archive/refs/tags/2.33.0

Could it be that the script needs to change the URL?

Nevermind I forgot the .zip, it works that way

@ocr99 commented on GitHub (May 6, 2025): Weird... I can ping it without issue: ``` root@kimai:~# ping raw.githubusercontent.com PING raw.githubusercontent.com (185.199.108.133) 56(84) bytes of data. 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=1 ttl=56 time=10.2 ms 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=2 ttl=56 time=10.0 ms 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=3 ttl=56 time=10.6 ms 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=4 ttl=56 time=10.2 ms 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=5 ttl=56 time=9.95 ms root@kimai:~# ping github.com PING github.com (140.82.121.3) 56(84) bytes of data. 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=1 ttl=51 time=47.4 ms 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=2 ttl=51 time=47.8 ms 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=3 ttl=51 time=47.5 ms 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=4 ttl=51 time=47.8 ms ``` I paused all piholes (that weren't blocking anyway) and still same issue, ~I tried manually going to the URL and in fact it doesn't exist: [https://github.com/kimai/kimai/archive/refs/tags/2.33.0](https://github.com/kimai/kimai/archive/refs/tags/2.33.0)~ ~Could it be that the script needs to change the URL?~ Nevermind I forgot the .zip, it works that way
Author
Owner

@tremor021 commented on GitHub (May 6, 2025):

https://github.com/kimai/kimai/archive/refs/tags/2.33.0.zip is the full url

@tremor021 commented on GitHub (May 6, 2025): `https://github.com/kimai/kimai/archive/refs/tags/2.33.0.zip` is the full url
Author
Owner

@ocr99 commented on GitHub (May 6, 2025):

Yes, I checked that URL from my browser and all good, but the script throws a 400, any idea why? I can ping github and githubusercontent from the LXC

Weird... I can ping it without issue:

root@kimai:~# ping raw.githubusercontent.com
PING raw.githubusercontent.com (185.199.108.133) 56(84) bytes of data.
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=1 ttl=56 time=10.2 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=2 ttl=56 time=10.0 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=3 ttl=56 time=10.6 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=4 ttl=56 time=10.2 ms
64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=5 ttl=56 time=9.95 ms


root@kimai:~# ping github.com
PING github.com (140.82.121.3) 56(84) bytes of data.
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=1 ttl=51 time=47.4 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=2 ttl=51 time=47.8 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=3 ttl=51 time=47.5 ms
64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=4 ttl=51 time=47.8 ms
@ocr99 commented on GitHub (May 6, 2025): Yes, I checked that URL from my browser and all good, but the script throws a 400, any idea why? I can ping github and githubusercontent from the LXC > Weird... I can ping it without issue: > > ``` > root@kimai:~# ping raw.githubusercontent.com > PING raw.githubusercontent.com (185.199.108.133) 56(84) bytes of data. > 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=1 ttl=56 time=10.2 ms > 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=2 ttl=56 time=10.0 ms > 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=3 ttl=56 time=10.6 ms > 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=4 ttl=56 time=10.2 ms > 64 bytes from cdn-185-199-108-133.github.com (185.199.108.133): icmp_seq=5 ttl=56 time=9.95 ms > > > root@kimai:~# ping github.com > PING github.com (140.82.121.3) 56(84) bytes of data. > 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=1 ttl=51 time=47.4 ms > 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=2 ttl=51 time=47.8 ms > 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=3 ttl=51 time=47.5 ms > 64 bytes from lb-140-82-121-3-fra.github.com (140.82.121.3): icmp_seq=4 ttl=51 time=47.8 ms > ```
Author
Owner

@ocr99 commented on GitHub (May 6, 2025):

I managed to change the script and updated succesfully!

I added this before the composer command that was giving me issues

if ! command -v composer >/dev/null 2>&1; then
      msg_info "Installing Composer"
      curl -sS https://getcomposer.org/installer | php
      mv composer.phar /usr/local/bin/composer
      chmod +x /usr/local/bin/composer
      msg_ok "Composer Installed"
    fi

Between:

cd /opt/kimai
$STD composer install --no-dev --optimize-autoloader

the output is:

  ✔️   Migrated PHP 8.3 to 8.4
  ✔️   Stopped Apache2
  ✔️   Backup completed
⠙ Installing ComposerAll settings correct for using Composer
Downloading...
⠦ Installing Composer
Composer (version 2.8.8) successfully installed to: /opt/kimai/composer.phar
Use it: php composer.phar

  ✔️   Composer Installed
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Package operations: 138 installs, 0 updates, 0 removals
  - Downloading symfony/http-kernel (v6.4.20)
  - Downloading symfony/var-exporter (v6.4.20)
  - Downloading symfony/cache (v6.4.20)
  - Downloading symfony/framework-bundle (v6.4.20)
  - Downloading symfony/console (v6.4.20)
  - Downloading symfony/doctrine-bridge (v6.4.20)
  - Downloading symfony/polyfill-php84 (v1.31.0)
  - Downloading easybill/zugferd-php (v2.1.1)
  - Downloading symfony/twig-bridge (v6.4.20)
  - Downloading symfony/yaml (v6.4.20)
  - Downloading zircote/swagger-php (5.1.0)
  - Downloading symfony/form (v6.4.20)
  - Downloading symfony/validator (v6.4.20)
  - Installing symfony/flex (v2.5.0): Extracting archive
  - Installing symfony/runtime (v6.4.14): Extracting archive
  - Installing azuyalabs/yasumi (2.7.0): Extracting archive
  - Installing composer/semver (3.4.3): Extracting archive
  - Installing dasprid/enum (1.0.6): Extracting archive
  - Installing symfony/deprecation-contracts (v3.5.1): Extracting archive
  - Installing symfony/routing (v6.4.18): Extracting archive
  - Installing symfony/polyfill-php83 (v1.31.0): Extracting archive
  - Installing symfony/http-foundation (v6.4.18): Extracting archive
  - Installing psr/event-dispatcher (1.0.0): Extracting archive
  - Installing symfony/event-dispatcher-contracts (v3.5.1): Extracting archive
  - Installing symfony/event-dispatcher (v6.4.13): Extracting archive
  - Installing symfony/var-dumper (v6.4.18): Extracting archive
  - Installing psr/log (3.0.2): Extracting archive
  - Installing symfony/error-handler (v6.4.20): Extracting archive
  - Installing symfony/http-kernel (v6.4.20): Extracting archive
  - Installing symfony/finder (v6.4.17): Extracting archive
  - Installing symfony/filesystem (v6.4.13): Extracting archive
  - Installing symfony/var-exporter (v6.4.20): Extracting archive
  - Installing psr/container (2.0.2): Extracting archive
  - Installing symfony/service-contracts (v3.5.1): Extracting archive
  - Installing symfony/dependency-injection (v6.4.20): Extracting archive
  - Installing symfony/config (v6.4.14): Extracting archive
  - Installing psr/cache (3.0.0): Extracting archive
  - Installing symfony/cache-contracts (v3.5.1): Extracting archive
  - Installing symfony/cache (v6.4.20): Extracting archive
  - Installing symfony/framework-bundle (v6.4.20): Extracting archive
  - Installing symfony/stopwatch (v6.4.19): Extracting archive
  - Installing symfony/string (v6.4.15): Extracting archive
  - Installing symfony/console (v6.4.20): Extracting archive
  - Installing doctrine/event-manager (2.0.1): Extracting archive
  - Installing doctrine/deprecations (1.1.5): Extracting archive
  - Installing doctrine/cache (2.2.0): Extracting archive
  - Installing doctrine/dbal (3.9.4): Extracting archive
  - Installing doctrine/migrations (3.9.0): Extracting archive
  - Installing doctrine/persistence (3.4.0): Extracting archive
  - Installing symfony/doctrine-bridge (v6.4.20): Extracting archive
  - Installing doctrine/sql-formatter (1.5.2): Extracting archive
  - Installing doctrine/doctrine-bundle (2.14.0): Extracting archive
  - Installing doctrine/doctrine-migrations-bundle (3.4.1): Extracting archive
  - Installing doctrine/lexer (3.0.1): Extracting archive
  - Installing doctrine/instantiator (2.0.0): Extracting archive
  - Installing doctrine/inflector (2.0.10): Extracting archive
  - Installing doctrine/common (3.5.0): Extracting archive
  - Installing symfony/polyfill-php84 (v1.31.0): Extracting archive
  - Installing doctrine/collections (2.3.0): Extracting archive
  - Installing doctrine/orm (2.20.2): Extracting archive
  - Installing phpstan/phpdoc-parser (2.1.0): Extracting archive
  - Installing jms/metadata (2.8.0): Extracting archive
  - Installing jms/serializer (3.32.4): Extracting archive
  - Installing easybill/zugferd-php (v2.1.1): Extracting archive
  - Installing bacon/bacon-qr-code (2.0.8): Extracting archive
  - Installing endroid/qr-code (4.8.5): Extracting archive
  - Installing erusev/parsedown (1.7.4): Extracting archive
  - Installing willdurand/negotiation (3.1.0): Extracting archive
  - Installing willdurand/jsonp-callback-validator (v2.0.0): Extracting archive
  - Installing symfony/password-hasher (v6.4.13): Extracting archive
  - Installing symfony/security-core (v6.4.18): Extracting archive
  - Installing friendsofsymfony/rest-bundle (3.8.0): Extracting archive
  - Installing psr/clock (1.0.0): Extracting archive
  - Installing behat/transliterator (v1.5.0): Extracting archive
  - Installing gedmo/doctrine-extensions (v3.20.0): Extracting archive
  - Installing jms/serializer-bundle (5.5.1): Extracting archive
  - Installing twig/twig (v3.20.0): Extracting archive
  - Installing symfony/translation-contracts (v3.5.1): Extracting archive
  - Installing symfony/twig-bridge (v6.4.20): Extracting archive
  - Installing symfony/translation (v6.4.19): Extracting archive
  - Installing symfony/options-resolver (v6.4.16): Extracting archive
  - Installing symfony/asset (v6.4.13): Extracting archive
  - Installing kevinpapst/tabler-bundle (1.8.0): Extracting archive
  - Installing league/csv (9.23.0): Extracting archive
  - Installing setasign/fpdi (v2.6.3): Extracting archive
  - Installing psr/http-message (2.0): Extracting archive
  - Installing paragonie/random_compat (v9.99.100): Extracting archive
  - Installing myclabs/deep-copy (1.13.0): Extracting archive
  - Installing mpdf/psr-log-aware-trait (v3.0.0): Extracting archive
  - Installing mpdf/psr-http-message-shim (v2.0.1): Extracting archive
  - Installing mpdf/mpdf (v8.2.5): Extracting archive
  - Installing symfony/yaml (v6.4.20): Extracting archive
  - Installing nikic/php-parser (v5.4.0): Extracting archive
  - Installing zircote/swagger-php (5.1.0): Extracting archive
  - Installing symfony/property-info (v6.4.18): Extracting archive
  - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
  - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive
  - Installing webmozart/assert (1.11.0): Extracting archive
  - Installing phpdocumentor/reflection-docblock (5.6.2): Extracting archive
  - Installing nelmio/api-doc-bundle (v4.38.2): Extracting archive
  - Installing nelmio/cors-bundle (2.5.0): Extracting archive
  - Installing robrichards/xmlseclibs (3.1.3): Extracting archive
  - Installing onelogin/php-saml (4.2.0): Extracting archive
  - Installing openspout/openspout (v4.25.0): Extracting archive
  - Installing pagerfanta/pagerfanta (v3.8.0): Extracting archive
  - Installing psr/simple-cache (3.0.0): Extracting archive
  - Installing psr/http-factory (1.1.0): Extracting archive
  - Installing psr/http-client (1.0.3): Extracting archive
  - Installing markbaker/matrix (3.0.1): Extracting archive
  - Installing markbaker/complex (3.0.2): Extracting archive
  - Installing maennchen/zipstream-php (3.1.1): Extracting archive
  - Installing composer/pcre (3.3.2): Extracting archive
  - Installing phpoffice/phpspreadsheet (2.3.8): Extracting archive
  - Installing phpoffice/math (0.2.0): Extracting archive
  - Installing phpoffice/phpword (1.3.0): Extracting archive
  - Installing symfony/twig-bundle (v6.4.13): Extracting archive
  - Installing symfony/property-access (v6.4.18): Extracting archive
  - Installing symfony/security-http (v6.4.19): Extracting archive
  - Installing symfony/security-csrf (v6.4.13): Extracting archive
  - Installing symfony/clock (v6.4.13): Extracting archive
  - Installing symfony/security-bundle (v6.4.13): Extracting archive
  - Installing scheb/2fa-bundle (v6.13.1): Extracting archive
  - Installing scheb/2fa-backup-code (v6.13.1): Extracting archive
  - Installing paragonie/constant_time_encoding (v2.7.0): Extracting archive
  - Installing spomky-labs/otphp (11.3.0): Extracting archive
  - Installing scheb/2fa-totp (v6.13.1): Extracting archive
  - Installing symfony/css-selector (v6.4.13): Extracting archive
  - Installing symfony/dotenv (v6.4.16): Extracting archive
  - Installing symfony/expression-language (v6.4.13): Extracting archive
  - Installing symfony/form (v6.4.20): Extracting archive
  - Installing symfony/http-client-contracts (v3.5.2): Extracting archive
  - Installing symfony/http-client (v6.4.19): Extracting archive
  - Installing symfony/mime (v6.4.19): Extracting archive
  - Installing egulias/email-validator (4.0.4): Extracting archive
  - Installing symfony/mailer (v6.4.18): Extracting archive
  - Installing monolog/monolog (3.9.0): Extracting archive
  - Installing symfony/monolog-bridge (v6.4.13): Extracting archive
  - Installing symfony/monolog-bundle (v3.10.0): Extracting archive
  - Installing symfony/process (v6.4.20): Extracting archive
  - Installing symfony/rate-limiter (v6.4.15): Extracting archive
  - Installing symfony/serializer (v6.4.19): Extracting archive
  - Installing symfony/validator (v6.4.20): Extracting archive
  - Installing symfony/webpack-encore-bundle (v2.2.0): Extracting archive
  - Installing tijsverkoyen/css-to-inline-styles (v2.3.0): Extracting archive
  - Installing twig/cssinliner-extra (v3.20.0): Extracting archive
  - Installing twig/extra-bundle (v3.20.0): Extracting archive
  - Installing lorenzo/pinky (1.1.0): Extracting archive
  - Installing twig/inky-extra (v3.20.0): Extracting archive
  - Installing symfony/intl (v6.4.15): Extracting archive
  - Installing twig/intl-extra (v3.20.0): Extracting archive
  - Installing twig/string-extra (v3.20.0): Extracting archive
Generating optimized autoload files
94 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

Run composer recipes at any time to see the status of your Symfony recipes.

Executing script cache:clear [OK]
Executing script assets:install [OK]

 Start installation ...
Database `kimai_db` for connection named default already exists. Skipped.
 Creating database ...

                                                                                         
 [OK] Already at the latest version ("DoctrineMigrations\Version20240926111739")         
                                                                                         

 Rebuilding cache ...

 // Clearing the cache for the prod environment with debug false                         

                                                                                         
 [OK] Cache for the "prod" environment (debug=false) was successfully cleared.           
                                                                                         


 // Warming up the cache for the prod environment with debug false                       

                                                                                         
 [OK] Cache for the "prod" environment (debug=false) was successfully warmed.            
                                                                                         


                                                                                         
 [OK] Successfully installed Kimai version 2.33.0 🎉                                     
                                                                                         

  ✔️   Updated Kimai to 2.33.0
  ✔️   Started Apache2
  ✔️   Setup Permissions
  ✔️   Cleaned
  ✔️   Updated Successfully
@ocr99 commented on GitHub (May 6, 2025): I managed to change the script and updated succesfully! I added this before the composer command that was giving me issues ``` if ! command -v composer >/dev/null 2>&1; then msg_info "Installing Composer" curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer chmod +x /usr/local/bin/composer msg_ok "Composer Installed" fi ``` Between: ``` cd /opt/kimai $STD composer install --no-dev --optimize-autoloader ``` the output is: ``` ✔️ Migrated PHP 8.3 to 8.4 ✔️ Stopped Apache2 ✔️ Backup completed ⠙ Installing ComposerAll settings correct for using Composer Downloading... ⠦ Installing Composer Composer (version 2.8.8) successfully installed to: /opt/kimai/composer.phar Use it: php composer.phar ✔️ Composer Installed Installing dependencies from lock file Verifying lock file contents can be installed on current platform. Package operations: 138 installs, 0 updates, 0 removals - Downloading symfony/http-kernel (v6.4.20) - Downloading symfony/var-exporter (v6.4.20) - Downloading symfony/cache (v6.4.20) - Downloading symfony/framework-bundle (v6.4.20) - Downloading symfony/console (v6.4.20) - Downloading symfony/doctrine-bridge (v6.4.20) - Downloading symfony/polyfill-php84 (v1.31.0) - Downloading easybill/zugferd-php (v2.1.1) - Downloading symfony/twig-bridge (v6.4.20) - Downloading symfony/yaml (v6.4.20) - Downloading zircote/swagger-php (5.1.0) - Downloading symfony/form (v6.4.20) - Downloading symfony/validator (v6.4.20) - Installing symfony/flex (v2.5.0): Extracting archive - Installing symfony/runtime (v6.4.14): Extracting archive - Installing azuyalabs/yasumi (2.7.0): Extracting archive - Installing composer/semver (3.4.3): Extracting archive - Installing dasprid/enum (1.0.6): Extracting archive - Installing symfony/deprecation-contracts (v3.5.1): Extracting archive - Installing symfony/routing (v6.4.18): Extracting archive - Installing symfony/polyfill-php83 (v1.31.0): Extracting archive - Installing symfony/http-foundation (v6.4.18): Extracting archive - Installing psr/event-dispatcher (1.0.0): Extracting archive - Installing symfony/event-dispatcher-contracts (v3.5.1): Extracting archive - Installing symfony/event-dispatcher (v6.4.13): Extracting archive - Installing symfony/var-dumper (v6.4.18): Extracting archive - Installing psr/log (3.0.2): Extracting archive - Installing symfony/error-handler (v6.4.20): Extracting archive - Installing symfony/http-kernel (v6.4.20): Extracting archive - Installing symfony/finder (v6.4.17): Extracting archive - Installing symfony/filesystem (v6.4.13): Extracting archive - Installing symfony/var-exporter (v6.4.20): Extracting archive - Installing psr/container (2.0.2): Extracting archive - Installing symfony/service-contracts (v3.5.1): Extracting archive - Installing symfony/dependency-injection (v6.4.20): Extracting archive - Installing symfony/config (v6.4.14): Extracting archive - Installing psr/cache (3.0.0): Extracting archive - Installing symfony/cache-contracts (v3.5.1): Extracting archive - Installing symfony/cache (v6.4.20): Extracting archive - Installing symfony/framework-bundle (v6.4.20): Extracting archive - Installing symfony/stopwatch (v6.4.19): Extracting archive - Installing symfony/string (v6.4.15): Extracting archive - Installing symfony/console (v6.4.20): Extracting archive - Installing doctrine/event-manager (2.0.1): Extracting archive - Installing doctrine/deprecations (1.1.5): Extracting archive - Installing doctrine/cache (2.2.0): Extracting archive - Installing doctrine/dbal (3.9.4): Extracting archive - Installing doctrine/migrations (3.9.0): Extracting archive - Installing doctrine/persistence (3.4.0): Extracting archive - Installing symfony/doctrine-bridge (v6.4.20): Extracting archive - Installing doctrine/sql-formatter (1.5.2): Extracting archive - Installing doctrine/doctrine-bundle (2.14.0): Extracting archive - Installing doctrine/doctrine-migrations-bundle (3.4.1): Extracting archive - Installing doctrine/lexer (3.0.1): Extracting archive - Installing doctrine/instantiator (2.0.0): Extracting archive - Installing doctrine/inflector (2.0.10): Extracting archive - Installing doctrine/common (3.5.0): Extracting archive - Installing symfony/polyfill-php84 (v1.31.0): Extracting archive - Installing doctrine/collections (2.3.0): Extracting archive - Installing doctrine/orm (2.20.2): Extracting archive - Installing phpstan/phpdoc-parser (2.1.0): Extracting archive - Installing jms/metadata (2.8.0): Extracting archive - Installing jms/serializer (3.32.4): Extracting archive - Installing easybill/zugferd-php (v2.1.1): Extracting archive - Installing bacon/bacon-qr-code (2.0.8): Extracting archive - Installing endroid/qr-code (4.8.5): Extracting archive - Installing erusev/parsedown (1.7.4): Extracting archive - Installing willdurand/negotiation (3.1.0): Extracting archive - Installing willdurand/jsonp-callback-validator (v2.0.0): Extracting archive - Installing symfony/password-hasher (v6.4.13): Extracting archive - Installing symfony/security-core (v6.4.18): Extracting archive - Installing friendsofsymfony/rest-bundle (3.8.0): Extracting archive - Installing psr/clock (1.0.0): Extracting archive - Installing behat/transliterator (v1.5.0): Extracting archive - Installing gedmo/doctrine-extensions (v3.20.0): Extracting archive - Installing jms/serializer-bundle (5.5.1): Extracting archive - Installing twig/twig (v3.20.0): Extracting archive - Installing symfony/translation-contracts (v3.5.1): Extracting archive - Installing symfony/twig-bridge (v6.4.20): Extracting archive - Installing symfony/translation (v6.4.19): Extracting archive - Installing symfony/options-resolver (v6.4.16): Extracting archive - Installing symfony/asset (v6.4.13): Extracting archive - Installing kevinpapst/tabler-bundle (1.8.0): Extracting archive - Installing league/csv (9.23.0): Extracting archive - Installing setasign/fpdi (v2.6.3): Extracting archive - Installing psr/http-message (2.0): Extracting archive - Installing paragonie/random_compat (v9.99.100): Extracting archive - Installing myclabs/deep-copy (1.13.0): Extracting archive - Installing mpdf/psr-log-aware-trait (v3.0.0): Extracting archive - Installing mpdf/psr-http-message-shim (v2.0.1): Extracting archive - Installing mpdf/mpdf (v8.2.5): Extracting archive - Installing symfony/yaml (v6.4.20): Extracting archive - Installing nikic/php-parser (v5.4.0): Extracting archive - Installing zircote/swagger-php (5.1.0): Extracting archive - Installing symfony/property-info (v6.4.18): Extracting archive - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive - Installing phpdocumentor/type-resolver (1.10.0): Extracting archive - Installing webmozart/assert (1.11.0): Extracting archive - Installing phpdocumentor/reflection-docblock (5.6.2): Extracting archive - Installing nelmio/api-doc-bundle (v4.38.2): Extracting archive - Installing nelmio/cors-bundle (2.5.0): Extracting archive - Installing robrichards/xmlseclibs (3.1.3): Extracting archive - Installing onelogin/php-saml (4.2.0): Extracting archive - Installing openspout/openspout (v4.25.0): Extracting archive - Installing pagerfanta/pagerfanta (v3.8.0): Extracting archive - Installing psr/simple-cache (3.0.0): Extracting archive - Installing psr/http-factory (1.1.0): Extracting archive - Installing psr/http-client (1.0.3): Extracting archive - Installing markbaker/matrix (3.0.1): Extracting archive - Installing markbaker/complex (3.0.2): Extracting archive - Installing maennchen/zipstream-php (3.1.1): Extracting archive - Installing composer/pcre (3.3.2): Extracting archive - Installing phpoffice/phpspreadsheet (2.3.8): Extracting archive - Installing phpoffice/math (0.2.0): Extracting archive - Installing phpoffice/phpword (1.3.0): Extracting archive - Installing symfony/twig-bundle (v6.4.13): Extracting archive - Installing symfony/property-access (v6.4.18): Extracting archive - Installing symfony/security-http (v6.4.19): Extracting archive - Installing symfony/security-csrf (v6.4.13): Extracting archive - Installing symfony/clock (v6.4.13): Extracting archive - Installing symfony/security-bundle (v6.4.13): Extracting archive - Installing scheb/2fa-bundle (v6.13.1): Extracting archive - Installing scheb/2fa-backup-code (v6.13.1): Extracting archive - Installing paragonie/constant_time_encoding (v2.7.0): Extracting archive - Installing spomky-labs/otphp (11.3.0): Extracting archive - Installing scheb/2fa-totp (v6.13.1): Extracting archive - Installing symfony/css-selector (v6.4.13): Extracting archive - Installing symfony/dotenv (v6.4.16): Extracting archive - Installing symfony/expression-language (v6.4.13): Extracting archive - Installing symfony/form (v6.4.20): Extracting archive - Installing symfony/http-client-contracts (v3.5.2): Extracting archive - Installing symfony/http-client (v6.4.19): Extracting archive - Installing symfony/mime (v6.4.19): Extracting archive - Installing egulias/email-validator (4.0.4): Extracting archive - Installing symfony/mailer (v6.4.18): Extracting archive - Installing monolog/monolog (3.9.0): Extracting archive - Installing symfony/monolog-bridge (v6.4.13): Extracting archive - Installing symfony/monolog-bundle (v3.10.0): Extracting archive - Installing symfony/process (v6.4.20): Extracting archive - Installing symfony/rate-limiter (v6.4.15): Extracting archive - Installing symfony/serializer (v6.4.19): Extracting archive - Installing symfony/validator (v6.4.20): Extracting archive - Installing symfony/webpack-encore-bundle (v2.2.0): Extracting archive - Installing tijsverkoyen/css-to-inline-styles (v2.3.0): Extracting archive - Installing twig/cssinliner-extra (v3.20.0): Extracting archive - Installing twig/extra-bundle (v3.20.0): Extracting archive - Installing lorenzo/pinky (1.1.0): Extracting archive - Installing twig/inky-extra (v3.20.0): Extracting archive - Installing symfony/intl (v6.4.15): Extracting archive - Installing twig/intl-extra (v3.20.0): Extracting archive - Installing twig/string-extra (v3.20.0): Extracting archive Generating optimized autoload files 94 packages you are using are looking for funding. Use the `composer fund` command to find out more! Run composer recipes at any time to see the status of your Symfony recipes. Executing script cache:clear [OK] Executing script assets:install [OK] Start installation ... Database `kimai_db` for connection named default already exists. Skipped. Creating database ... [OK] Already at the latest version ("DoctrineMigrations\Version20240926111739") Rebuilding cache ... // Clearing the cache for the prod environment with debug false [OK] Cache for the "prod" environment (debug=false) was successfully cleared. // Warming up the cache for the prod environment with debug false [OK] Cache for the "prod" environment (debug=false) was successfully warmed. [OK] Successfully installed Kimai version 2.33.0 🎉 ✔️ Updated Kimai to 2.33.0 ✔️ Started Apache2 ✔️ Setup Permissions ✔️ Cleaned ✔️ Updated Successfully ```
Author
Owner

@jamezpolley commented on GitHub (May 17, 2025):

Reopening because I've just been bitten by the same issue. The fix that @ocr99 found doesn't seem to have been implemented.

Looking in /var/log/dpkg.log, it looks as though something in the script is removing composer, and it doesn't get reinstalled before the script tries to run it:

2025-05-17 13:45:16 status installed debsuryorg-archive-keyring:all 2025.03.13
2025-05-17 13:45:21 startup packages remove
2025-05-17 13:45:21 status installed composer:all 2.5.5-1+deb12u2
2025-05-17 13:45:21 remove composer:all 2.5.5-1+deb12u2 <none>
2025-05-17 13:45:21 status half-configured composer:all 2.5.5-1+deb12u2
2025-05-17 13:45:21 status half-installed composer:all 2.5.5-1+deb12u2
2025-05-17 13:45:21 status triggers-pending man-db:amd64 2.11.2-2
2025-05-17 13:45:22 status config-files composer:all 2.5.5-1+deb12u2
2025-05-17 13:45:22 status not-installed composer:all <none>
2025-05-17 13:45:22 status installed jsonlint:all 1.9.0-1
2025-05-17 13:45:22 remove jsonlint:all 1.9.0-1 <none>
2025-05-17 13:45:22 status half-configured jsonlint:all 1.9.0-1
2025-05-17 13:45:22 status half-installed jsonlint:all 1.9.0-1
2025-05-17 13:45:22 status config-files jsonlint:all 1.9.0-1
2025-05-17 13:45:22 status not-installed jsonlint:all <none>

Looking at the update_script, I think the remove here must be this one

Looking at the logs at what was removed in that run, there's a few surprises:

root@kimai:~# ack remove /var/log/dpkg.log | ack 13:45 | ack -v php8.2
2025-05-17 13:45:21 startup packages remove
2025-05-17 13:45:21 remove composer:all 2.5.5-1+deb12u2 <none>
2025-05-17 13:45:22 remove jsonlint:all 1.9.0-1 <none>
2025-05-17 13:45:22 remove libapache2-mod-php:all 2:8.2+93 <none>
2025-05-17 13:45:23 remove php-json-schema:all 5.2.12-2 <none>
2025-05-17 13:45:23 remove php-cli:all 2:8.2+93 <none>
2025-05-17 13:45:23 remove php-fpm:all 2:8.2+93 <none>
2025-05-17 13:45:23 remove php-symfony-console:all 5.4.23+dfsg-1+deb12u4 <none>
2025-05-17 13:45:23 remove php-symfony-filesystem:all 5.4.23+dfsg-1+deb12u4 <none>
2025-05-17 13:45:23 remove php-symfony-string:all 5.4.23+dfsg-1+deb12u4 <none>
root@kimai:~# 

I'm going to guess that all the php-* packages are going to be installed again if needed, same with the libapache2-mod-php package - I think most of those are virtual packages anyway. The two big surprises are jsonlint and composer.

I'm going to open a pull request which re-installs those things.

Edited to add - I later realized that php-fpm doesn't get reinstalled, so I've updated my patchset to install that as well.

@jamezpolley commented on GitHub (May 17, 2025): Reopening because I've just been bitten by the same issue. The fix that @ocr99 found doesn't seem to have been implemented. Looking in `/var/log/dpkg.log`, it looks as though something in the script is removing composer, and it doesn't get reinstalled before the script tries to run it: ``` 2025-05-17 13:45:16 status installed debsuryorg-archive-keyring:all 2025.03.13 2025-05-17 13:45:21 startup packages remove 2025-05-17 13:45:21 status installed composer:all 2.5.5-1+deb12u2 2025-05-17 13:45:21 remove composer:all 2.5.5-1+deb12u2 <none> 2025-05-17 13:45:21 status half-configured composer:all 2.5.5-1+deb12u2 2025-05-17 13:45:21 status half-installed composer:all 2.5.5-1+deb12u2 2025-05-17 13:45:21 status triggers-pending man-db:amd64 2.11.2-2 2025-05-17 13:45:22 status config-files composer:all 2.5.5-1+deb12u2 2025-05-17 13:45:22 status not-installed composer:all <none> 2025-05-17 13:45:22 status installed jsonlint:all 1.9.0-1 2025-05-17 13:45:22 remove jsonlint:all 1.9.0-1 <none> 2025-05-17 13:45:22 status half-configured jsonlint:all 1.9.0-1 2025-05-17 13:45:22 status half-installed jsonlint:all 1.9.0-1 2025-05-17 13:45:22 status config-files jsonlint:all 1.9.0-1 2025-05-17 13:45:22 status not-installed jsonlint:all <none> ``` Looking at the update_script, I think the remove here must be [this one](https://github.com/jamezpolley/ProxmoxVE/blob/67feae778edb280a7b1ae5e333f9b82f90e0e98d/ct/kimai.sh#L37C28-L37C52) Looking at the logs at what was removed in that run, there's a few surprises: ``` root@kimai:~# ack remove /var/log/dpkg.log | ack 13:45 | ack -v php8.2 2025-05-17 13:45:21 startup packages remove 2025-05-17 13:45:21 remove composer:all 2.5.5-1+deb12u2 <none> 2025-05-17 13:45:22 remove jsonlint:all 1.9.0-1 <none> 2025-05-17 13:45:22 remove libapache2-mod-php:all 2:8.2+93 <none> 2025-05-17 13:45:23 remove php-json-schema:all 5.2.12-2 <none> 2025-05-17 13:45:23 remove php-cli:all 2:8.2+93 <none> 2025-05-17 13:45:23 remove php-fpm:all 2:8.2+93 <none> 2025-05-17 13:45:23 remove php-symfony-console:all 5.4.23+dfsg-1+deb12u4 <none> 2025-05-17 13:45:23 remove php-symfony-filesystem:all 5.4.23+dfsg-1+deb12u4 <none> 2025-05-17 13:45:23 remove php-symfony-string:all 5.4.23+dfsg-1+deb12u4 <none> root@kimai:~# I'm going to guess that all the php-* packages are going to be installed again if needed, same with the libapache2-mod-php package - I think most of those are virtual packages anyway. The two big surprises are jsonlint and composer. I'm going to open a pull request which re-installs those things. ``` Edited to add - I later realized that php-fpm doesn't get reinstalled, so I've updated my patchset to install that as well.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ProxmoxVE#907