- Clone all 5 Zonemaster component repos (LDNS, Engine, CLI, Backend, GUI) - Dockerfile.backend: 8-stage multi-stage build LDNS→Engine→CLI→Backend - Dockerfile.gui: Astro static build served via nginx - docker-compose.yml: backend (internal) + frontend (port 5353) - nginx.conf: root redirects to /es/, /api/ proxied to backend - zonemaster-gui/config.ts: defaultLanguage set to 'es' (Spanish) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.6 KiB
FreeBSD Build Environment
Table of contents
Introduction
These are instructions for creating a build environment for Zonemaster components based on Perl. This is not meant as instructions for installing Zonemaster itself.
This instruction is for creating it on FreeBSD. See other files for other OSs.
Preparation
-
Do a clean installation of latest version of FreeBSD
-
Become root:
su -l -
Update to latest patch level
freebsd-update fetch install -
Reboot into latest patch level and then continue as root on next step
shutdown -r now -
Create a new user (optional)
Make sure to add
wheelas an additional group for the user.adduser -
Update list of package repositories:
Create the file
/usr/local/etc/pkg/repos/FreeBSD.confwith the following content, unless it is already updated:FreeBSD: { url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest", } -
Check or activate the package system:
Run the following command, and accept the installation of the
pkgpackage if suggested.pkg info -E pkg -
Update local package repository:
pkg update -f
Installation for package building
-
Install dependencies and tools:
pkg install gmake gettext-tools git-lite p5-Locale-PO p5-App-cpanminus p5-ExtUtils-PkgConfig p5-MIME-Base32 p5-Module-Install libtool autoconf automake p5-Devel-CheckLib p5-Module-Install-XSUtil p5-Test-Exception libidn libidn2 -
Clone 'develop' branch from all Zonemaster repositories except GUI:
git clone -b develop https://github.com/zonemaster/zonemaster.git for d in ldns engine cli backend; do git clone -b develop https://github.com/zonemaster/zonemaster-$d.git; done
Translation work
Install for translation (handling PO files), only needed if PO files are to be handled.
- Follow "Software preparation" in Instructions for translators for FreeBSD (usually use the version in develop branch).
Installation for mdBook
Needed for release process:
pkg install mdbook-linkcheck
Needed to build the mdBook (not part of release process):
pkg install mdbook mdbook-linkcheck