No description
Find a file
2026-01-25 16:37:00 +01:00
.github Create FUNDING.yml 2021-02-13 23:50:31 +01:00
.vscode DEBCONF_DEBUG enable verbose mode 2024-10-29 19:15:41 +01:00
debian Pipelines update 2026-01-25 16:37:00 +01:00
.gitignore Updates .gitignore to exclude debhelper log files 2025-08-27 15:04:02 +02:00
composer-autoload code update 2025-01-26 15:47:46 +01:00
composer-debian code update II 2025-01-26 15:48:33 +01:00
composer-debian-social-preview.png Try to use axes in Jenkins build 2021-09-24 22:03:54 +02:00
composer-debian-social-preview.svg Try to use axes in Jenkins build 2021-09-24 22:03:54 +02:00
composer-debian.svg show vendor directory details 2021-06-26 16:11:44 +02:00
composer-global-update code update 2025-01-26 15:47:46 +01:00
composer-global-update.svg Logo added 2020-04-27 20:03:42 +02:00
composer-webuser Return only user 2021-06-20 01:03:25 +02:00
LICENSE first commit 2019-10-01 00:24:55 +02:00
README.md Readme update 2024-10-29 20:05:54 +01:00
WARP.md Jenkins (release): archive artifacts only after successful build+test; cleanup all produced files listed in debian/files; add WARP.md to guide Warp agents 2025-08-21 19:44:21 +02:00
webusergroup do not join group with user 2021-07-02 22:41:55 +02:00

Composer Global Updater

logo

Prepare Autoloader for PHP Application installed from package Update PHP libraries in /usr/share/ or /usr/lib/ using composer

Installation

sudo apt install lsb-release wget apt-transport-https bzip2

wget -qO- https://repo.vitexsoftware.com/keyring.gpg | sudo tee /etc/apt/trusted.gpg.d/vitexsoftware.gpg
echo "deb [signed-by=/etc/apt/trusted.gpg.d/vitexsoftware.gpg]  https://repo.vitexsoftware.com  $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/vitexsoftware.list
sudo apt update
sudo apt install composer-debian

Usage

Update all dependencies

 composer-global-update

Update only dependencies with keyword within its name

 composer-global-update nette

To enable verbose composer output messages, set DEBCONF_DEBUG to a nonzero value.

export DEBCONF_DEBUG=1
composer-global-update

How to make compatible packages

Libraries

  1. use deb as vendorname for your library
  2. Put composer.json into /usr/share/php/ LibraryDir /
  3. into library package's postinst put **composer-global-update deb/libname

Applications

  1. Put composer.json into /usr/lib/ AppName /
  2. into application package's postinst put composer-debian AppName
  3. use /var/lib/composer/ AppName /autoloader.php

Example of composer.json:

{
  "name": "vitexsoftware/multi-abraflexi-setup",
  "description": "Tool used to setup AbraFlexi multiinstance",
  "version": "1.1",
  "type": "project",
  "require": {
    "deb/ease-bootstrap4-widgets-abraflexi": "*",
    "deb/ease-bootstrap4-widgets": "*",
    "deb/ease-fluentpdo": "*"
  },
  "license": "MIT",
  "authors": [
    {
      "name": "Vítězslav Dvořák",
      "email": "info@vitexsoftware.cz"
    }
  ],
  "config": {
    "vendor-dir": "/var/lib/multi-abraflexi-setup"
  },
  "minimum-stability": "dev",
  "autoload": {
    "psr-4": {
      "AbraFlexi\\MultiSetup\\": "AbraFlexi",
      "AbraFlexi\\MultiSetup\\Ui\\": "AbraFlexi/Ui"
    }
  },
  "repositories": [
    {
      "type": "path",
      "url": "/usr/share/php/EaseCore/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/EaseHtml/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/AbraFlexi/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/EaseBricks/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/EaseTWB4/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/EaseFluentPDO/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/AbraFlexiBricks/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/EaseTWB4Widgets/"
    },
    {
      "type": "path",
      "url": "/usr/share/php/EaseTWB4WidgetsAbraFlexi/"
    }
  ]
}