hschletz / braintacle
A set of applications for managing hard- and software on a network
Requires
- php: ^8.1 || ^8.2 || ^8.3
- ext-dom: *
- ext-intl: *
- ext-zip: *
- gettext/gettext: ^5.7
- hschletz/formotron: dev-main
- hschletz/nada: ^1.2.4
- laminas/laminas-authentication: ^2.5
- laminas/laminas-config: ^3.0
- laminas/laminas-db: ^2.15
- laminas/laminas-di: ^3.9
- laminas/laminas-escaper: ^2.13
- laminas/laminas-eventmanager: ^3.5
- laminas/laminas-filter: ^2.18
- laminas/laminas-form: ^3.4
- laminas/laminas-http: ^2.16
- laminas/laminas-hydrator: ^4.5
- laminas/laminas-i18n: ^2.17
- laminas/laminas-i18n-resources: ^2.5
- laminas/laminas-inputfilter: ^2.19
- laminas/laminas-log: ^2.9
- laminas/laminas-math: ^3.0
- laminas/laminas-modulemanager: ^2.5
- laminas/laminas-mvc: ^3.3
- laminas/laminas-mvc-i18n: ^1.0
- laminas/laminas-mvc-plugin-flashmessenger: ^1.8
- laminas/laminas-router: ^3.9
- laminas/laminas-servicemanager: ^3.16
- laminas/laminas-session: ^2.13
- laminas/laminas-stdlib: ^3.13
- laminas/laminas-uri: ^2.9
- laminas/laminas-validator: ^2.24
- laminas/laminas-view: ^2.22
- latte/latte: ^3.0
- nyholm/psr7: ^1.8
- nyholm/psr7-server: ^1.1
- php-di/php-di: ^7.0
- phpbench/dom: ^0.3.2
- psr/clock: ^1.0
- slim/slim: ^4.13
- symfony/console: ^6.4
- symfony/event-dispatcher: ^6.4
- symfony/filesystem: ^6.4
- symfony/var-dumper: ^6.4
Requires (Dev)
- ext-mbstring: *
- bamarni/composer-bin-plugin: ^1.8
- dg/bypass-finals: ^1.3
- gettext/php-scanner: ^1.3
- laminas/laminas-dom: ^2.12
- laminas/laminas-test: ^4.10
- masterminds/html5: ^2.9
- mikey179/vfsstream: ^1.6
- misantron/dbunit: ^5.2
- mockery/mockery: ^1.5
- phpunit/phpunit: ^10.5
- squizlabs/php_codesniffer: ^3.7
- symfony/process: ^6.4
Suggests
- ext-gmp: Required for PHP installations without 64 bit integer support
- ext-zlib: Required for 'braintacle-tool.php decode'
README
About Braintacle
Braintacle is a set of applications for managing hard- and software on a network. Braintacle keeps a semi-automatic inventory of computers, other network-connected devices and installed software, and provides a generic infrastructure for downloading files and executing commands on selected clients, allowing centralized software updates, remote configuration and more. For developers, a PHP API is provided to access the inventory and control the applications.
Requirements
-
A PostgreSQL or MySQL (or one of its derivates, like MariaDB) database. Support for other database backends may be added in the future.
-
Apache httpd with mod_perl and a database-specific DBD module for the main server component.
-
A web server with PHP 8.1 or later for the administration console. PHP is also required for most of the command line tools. The following PHP extensions are required:
-
A database-specific PHP extension, see https://docs.laminas.dev/laminas-db/adapter/#creating-an-adapter-using-configuration
-
The "intl" extension
-
The "mbstring" extension
-
The "zip" extension is optional. If present, the package builder can create ZIP archives on the fly.
-
The "gmp" extension is required on 32 bit PHP installations only.
-
-
On every client that should be managed through Braintacle, either the OCS Inventory NG agent for Windows/UNIX/Android or FusionInventory Agent must be installed.
Installation
Refer to the INSTALL.md file in the same directory that contains this file.
Further reading
More detailed information is available in the doc/ directory.
LICENSES
Braintacle is released under the GNU General Public License v2 or later. You can find the full license in the COPYING file in the same directory that contains this file.
This project contains some third party code:
-
A patched version of the OCS inventory NG server components, licensed under the GNU General Public License v2) is included in the server/ directory.
-
The script development/make-manuf.py is taken from the Wireshark project. GPLv2 and copyright information are contained at the top of this file.