This repository contains build configurations and patches for native third-party dependencies used by Carbonio.
Each dependency lives in its own top-level directory containing a PKGBUILD
together with any patches, systemd units, and helper files it needs. The
top-level yap.json manifest lists every project and drives the
build order.
Included components:
- Mail Transfer Agent (Postfix)
- Web Server (Nginx)
- Directory Services (OpenLDAP)
- Database (MariaDB)
- Caching (Memcached)
- Mail filtering (OpenDKIM, libmilter, altermime)
- Authentication (Cyrus-SASL, Kerberos)
- Cryptography (OpenSSL, libsodium)
- And other supporting libraries (ICU, libxml2, libbsd, libevent, BDB, curl, jemalloc)
Note: ClamAV and the Perl modules are built from separate repositories (
carbonio-thirds-clamavandcarbonio-thirds-perl).
- Docker or Podman installed
- Make
# Build all packages for Ubuntu 22.04
make build TARGET=ubuntu-jammy
# Build all packages for Rocky Linux 9
make build TARGET=rocky-9ubuntu-jammy- Ubuntu 22.04 LTSubuntu-noble- Ubuntu 24.04 LTSrocky-8- Rocky Linux 8rocky-9- Rocky Linux 9
Run make list-targets to see this list, or make help for all options.
You can customize the build by setting environment variables:
# Use a specific container runtime
make build TARGET=ubuntu-jammy CONTAINER_RUNTIME=docker
# Use a different output directory
make build TARGET=rocky-9 OUTPUT_DIR=./my-packagesThese packages are distributed as part of the Carbonio platform. To install:
apt-get install <package-name>yum install <package-name>See CONTRIBUTING.md for information on how to contribute to this project.
The build scripts, patches, and configuration files in this repository are licensed under the GNU Affero General Public License v3.0 - see the LICENSE.md file for details.
This repository does not contain the source code of the third-party projects it packages. The PKGBUILD scripts download upstream sources at build time from their original locations. Each upstream project retains its own license, and the resulting built packages are distributed under those original licenses. Please refer to each component's upstream documentation for specific licensing information.