Zimbra 10 FOSS Build Instructions

Zimbra 10 FOSS Build Instructions

October 27, 2025
6 views

Prerequisites

System Requirements

  • OS: Ubuntu 24.04 LTS (or other supported Linux distributions)
  • RAM: Minimum 4GB (8GB+ recommended)
  • Disk Space: At least 20GB free space
  • CPU: Multi-core processor recommended

Required Software

Install the following dependencies:

sudo apt-get update
sudo apt-get install -y \
    software-properties-common \
    openjdk-8-jdk \
    ant \
    ant-optional \
    ant-contrib \
    ruby \
    git \
    maven \
    build-essential \
    debhelper

Java 8 Configuration

Zimbra 10.1.0 requires Java 8. Set it as the default:

# Check available Java versions
sudo update-alternatives --config java
sudo update-alternatives --config javac

# Verify Java version
java -version
javac -version

You should see output like: openjdk version "1.8.0_xxx"

Quick Start

Using the Automated Build Script

The easiest way to build Zimbra is using the provided build script:

cd /home/node0/IdeaProjects/Zimbra10FOSS/zimbra-build
./build-zimbra10.sh

The script will:

  1. Check Java version and dependencies
  2. Fix Ubuntu 24.04 platform detection automatically
  3. Create necessary version stub files
  4. Run the build process
  5. Display the location of the final build package

Manual Build Process

If you prefer to build manually:

cd /home/node0/IdeaProjects/Zimbra10FOSS/zimbra-build

# Clean build (first time or after changes)
ENV_CACHE_CLEAR_FLAG=true ./build.pl \
    --ant-options -DskipTests=true \
    --git-default-tag=10.1.0 \
    --build-release-no=10.1.0 \
    --build-type=FOSS \
    --build-release=LIBERTY \
    --build-release-candidate=GA \
    --build-thirdparty-server=files.zimbra.com \
    --no-interactive

# Resume build (if interrupted)
ENV_RESUME_FLAG=true ./build.pl \
    --ant-options -DskipTests=true \
    --git-default-tag=10.1.0 \
    --build-release-no=10.1.0 \
    --build-type=FOSS \
    --build-release=LIBERTY \
    --build-release-candidate=GA \
    --build-thirdparty-server=files.zimbra.com \
    --no-interactive

Build Output

After a successful build, you'll find the installer package at:

/home/node0/IdeaProjects/Zimbra10FOSS/BUILDS/UBUNTU24_64-LIBERTY-1010-<timestamp>-FOSS-<buildno>/zcs-10.1.0_GA_<buildno>.UBUNTU24_64.<timestamp>.tgz

The package size is approximately 214 MB.

Installation

To install the built Zimbra package:

# Extract the tarball
cd /path/to/build/output
tar xzf zcs-10.1.0_GA_*.UBUNTU24_64.*.tgz

# Enter the extracted directory
cd zcs-*

# Run the installer (requires root)
sudo ./install.sh

Follow the on-screen prompts to complete the installation.

Build Time

Expected build times:

  • First build: 45-60 minutes (depends on hardware and network speed)
  • Incremental build: 10-20 minutes

Components Built

The build process compiles 53 components including:

  • Core Services: zm-mailbox, zm-common, zm-native
  • Web Interface: zm-web-client, zm-admin-console
  • Protocols: zm-ajax, zm-admin-ajax
  • Storage: zm-timezones, zm-taglib, zm-charset
  • Security: zm-clam-scanner-store, zm-openid-consumer-store
  • Zimlets: Various admin and user zimlets
  • Third-party: Modified versions of libraries (nekohtml, ical4j, antisamy, etc.)

Fixes Applied

The build script automatically applies the following fixes:

1. Ubuntu 24.04 Platform Detection

The original get_plat_tag.sh script doesn't recognize Ubuntu 24.04 (noble). The build script adds support for it.

File: rpmconf/Build/get_plat_tag.sh

2. Version Stub Files

Creates the required version files that some components depend on:

  • zimbra-package-stub/version/MAJOR (contains: 10)
  • zimbra-package-stub/version/MINOR (contains: 1)
  • zimbra-package-stub/version/MICRO (contains: 0)

Troubleshooting

Build Fails with "Could not determine BUILD_ARCH"

Solution: Run the automated build script which fixes Ubuntu 24.04 detection automatically.

Build Fails with Java Version Error

Solution: Ensure Java 8 is set as default:

sudo update-alternatives --config java
sudo update-alternatives --config javac

Build Fails with "version/MAJOR doesn't exist"

Solution: Run the automated build script which creates these files automatically.

Out of Memory Error

Solution: Increase available RAM or add swap space:

sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

Build Interrupted

Solution: Resume the build:

ENV_RESUME_FLAG=true ./build.pl --ant-options -DskipTests=true \
    --git-default-tag=10.1.0 --build-release-no=10.1.0 \
    --build-type=FOSS --build-release=LIBERTY \
    --build-release-candidate=GA \
    --build-thirdparty-server=files.zimbra.com \
    --no-interactive

Build Logs

Build logs are stored in:

.staging/UBUNTU24_64-LIBERTY-1010-<timestamp>-FOSS-<buildno>/logs/

Clean Build

To start a completely fresh build:

# Remove all build artifacts
rm -rf .staging BUILDS

# Run the build script
./build-zimbra10.sh

Advanced Options

Build with Tests

Remove the -DskipTests=true option to run tests:

./build.pl --git-default-tag=10.1.0 --build-release-no=10.1.0 \
    --build-type=FOSS --build-release=LIBERTY \
    --build-release-candidate=GA \
    --build-thirdparty-server=files.zimbra.com \
    --no-interactive

Build Specific Components

To build only specific repositories, use ENV_BUILD_INCLUDE:

ENV_BUILD_INCLUDE="zm-mailbox,zm-web-client" ./build.pl ...

Debug Build

For a debug build, add debug flags:

./build.pl --build-debug-flag --git-default-tag=10.1.0 ...

Version Information

  • Zimbra Version: 10.1.0
  • Release Name: LIBERTY
  • Build Type: FOSS (Free and Open Source Software)
  • Platform: Ubuntu 24.04 (UBUNTU24_64)
  • Java Version: OpenJDK 8

Support

For issues and questions:

  • Official Zimbra Forums: https://forums.zimbra.org/
  • Zimbra Wiki: https://wiki.zimbra.com/
  • GitHub Issues: https://github.com/Zimbra/

License

Zimbra Collaboration Suite is licensed under the GNU General Public License v2.0. See the LICENSE file in each repository for details.


Last Updated: October 2025 Build Script Version: 1.0