From 83aaf58f60d3260c35c9d16a7395f0fc0f2a81e3 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 30 Jan 2026 18:06:01 +0200 Subject: [PATCH] Add meta-package for Jabali system dependencies --- packaging/jabali-deps/DEBIAN/control | 26 ++++++++++++++++++++++++++ scripts/build-jabali-deps-deb.sh | 23 +++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100644 packaging/jabali-deps/DEBIAN/control create mode 100755 scripts/build-jabali-deps-deb.sh diff --git a/packaging/jabali-deps/DEBIAN/control b/packaging/jabali-deps/DEBIAN/control new file mode 100644 index 0000000..49090b7 --- /dev/null +++ b/packaging/jabali-deps/DEBIAN/control @@ -0,0 +1,26 @@ +Package: jabali-deps +Version: 0.9-rc36 +Section: admin +Priority: optional +Architecture: all +Maintainer: Jabali Panel +Depends: nginx, nginx-common, mariadb-server, mariadb-client, redis-server, + certbot, python3-certbot-nginx, nodejs, git, curl, wget, zip, unzip, htop, + net-tools, dnsutils, acl, socat, sshpass, pigz, locales, fail2ban, + libnginx-mod-http-geoip2, chromium, build-essential, quota, goaccess, sysstat, + software-properties-common, apt-transport-https, ca-certificates, gnupg, + lsb-release, sudo, php8.4, php8.4-fpm, php8.4-cli, php8.4-common, + php8.4-mysql, php8.4-pgsql, php8.4-sqlite3, php8.4-curl, php8.4-gd, + php8.4-mbstring, php8.4-xml, php8.4-zip, php8.4-bcmath, php8.4-intl, + php8.4-readline, php8.4-soap, php8.4-imap, php8.4-ldap, php8.4-imagick, + php8.4-redis, php8.4-opcache, postfix, postfix-mysql, dovecot-core, + dovecot-imapd, dovecot-pop3d, dovecot-lmtpd, dovecot-mysql, dovecot-sqlite, + opendkim, opendkim-tools, rspamd, roundcube, roundcube-core, + roundcube-sqlite3, roundcube-plugins, sqlite3, bind9, bind9-utils, ufw, + clamav, clamav-daemon, clamav-freshclam, lynis, ruby, ruby-dev, + libnginx-mod-http-modsecurity | libnginx-mod-http-modsecurity2 | nginx-extras, + libmodsecurity3t64 | libmodsecurity3, modsecurity-crs +Description: Jabali Panel system dependency meta-package + Installs the full stack required by Jabali Panel (web, mail, DNS, security, + and PHP). Some tools (e.g., geoipupdate binary, Nikto, WPScan) are installed + by install.sh rather than apt. diff --git a/scripts/build-jabali-deps-deb.sh b/scripts/build-jabali-deps-deb.sh new file mode 100755 index 0000000..344ca34 --- /dev/null +++ b/scripts/build-jabali-deps-deb.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash +set -euo pipefail + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +ROOT_DIR="$(cd "${SCRIPT_DIR}/.." && pwd)" +VERSION="${1:-}" +if [[ -z "$VERSION" && -f "${ROOT_DIR}/VERSION" ]]; then + VERSION="$(sed -n 's/^VERSION=//p' "${ROOT_DIR}/VERSION")" +fi +VERSION="${VERSION:-0.9-rc36}" + +CONTROL_DIR="${ROOT_DIR}/packaging/jabali-deps/DEBIAN" +OUT_DIR="${ROOT_DIR}/packaging/dist" + +mkdir -p "${CONTROL_DIR}" "${OUT_DIR}" + +sed -i "s/^Version:.*/Version: ${VERSION}/" "${CONTROL_DIR}/control" + +PACKAGE_NAME="jabali-deps_${VERSION}_all.deb" + +dpkg-deb --build "${ROOT_DIR}/packaging/jabali-deps" "${OUT_DIR}/${PACKAGE_NAME}" + +echo "Built: ${OUT_DIR}/${PACKAGE_NAME}"