mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-01-03 15:51:33 +01:00
267 lines
8.6 KiB
Plaintext
267 lines
8.6 KiB
Plaintext
# Contributor: Valery Kartel <valery.kartel@gmail.com>
|
|
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
|
|
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
|
|
pkgname=bareos
|
|
pkgver=22.1.0
|
|
pkgrel=1
|
|
pkgdesc="Bareos - Backup Archiving REcovery Open Sourced"
|
|
url="https://www.bareos.com/"
|
|
_php=php81
|
|
# chromium-chromedriver only present on these arches
|
|
arch="x86_64 aarch64"
|
|
options="!check"
|
|
license="AGPL-3.0-only"
|
|
makedepends="
|
|
$_php
|
|
acl-dev
|
|
bsd-compat-headers
|
|
chromium-chromedriver
|
|
cmake
|
|
gawk
|
|
gettext-dev
|
|
gtest-dev
|
|
jansson-dev
|
|
json-c-dev
|
|
libcap-dev
|
|
libpq-dev
|
|
libtirpc-dev
|
|
libxml2-dev
|
|
linux-pam-dev
|
|
lzo-dev
|
|
mariadb
|
|
mariadb-backup
|
|
mariadb-client
|
|
ncurses-dev
|
|
openssl-dev>3
|
|
py3-apache-libcloud
|
|
py3-apache-libcloud
|
|
py3-dateutil
|
|
py3-psycopg2
|
|
py3-psycopg2
|
|
python3-dev
|
|
readline-dev
|
|
samurai
|
|
"
|
|
install="$pkgname.pre-install $pkgname.post-install $pkgname.pre-upgrade"
|
|
subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc
|
|
$pkgname-libs
|
|
$pkgname-postgresql:_postgresql
|
|
$pkgname-storage:_sd
|
|
$pkgname-filedaemon:_fd
|
|
$pkgname-webui:_webui:noarch $pkgname-webui-apache2:_webui_apache2:noarch $pkgname-webui-nginx:_webui_nginx:noarch"
|
|
pkgusers=$pkgname
|
|
pkggroups=$pkgname
|
|
source="$pkgname-$pkgver.tar.gz::https://github.com/bareos/bareos/archive/Release/$pkgver.tar.gz
|
|
$pkgname-dir.initd
|
|
$pkgname-sd.initd
|
|
$pkgname-fd.initd
|
|
|
|
$pkgname-dir.confd
|
|
$pkgname-sd.confd
|
|
$pkgname-fd.confd
|
|
|
|
add-libintl.patch
|
|
nginx-conf.patch
|
|
apache2-conf.patch
|
|
path-mounted.patch
|
|
support-alpine-dist.patch
|
|
disable-systemtest-minio.patch
|
|
alpine-agpl3-compat.patch
|
|
disable-werror.patch
|
|
"
|
|
builddir="$srcdir"/$pkgname-Release-$pkgver
|
|
|
|
case "$CARCH" in
|
|
arm*|x86)
|
|
;;
|
|
*)
|
|
makedepends="$makedepends ceph-dev"
|
|
;;
|
|
esac
|
|
|
|
# secfixes:
|
|
# 19.2.8-r0:
|
|
# - CVE-2020-4042
|
|
# - CVE-2020-11061
|
|
|
|
prepare() {
|
|
default_prepare
|
|
mkdir -pv core/platforms/alpine
|
|
touch core/platforms/alpine/CMakeLists.txt
|
|
|
|
sed -i '/bareos-symlink-default-db-backend.cmake/d' core/src/cats/CMakeLists.txt
|
|
}
|
|
|
|
build() {
|
|
cmake -B build -G Ninja \
|
|
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
|
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
|
-DCMAKE_INSTALL_LIBDIR:PATH=/usr/lib \
|
|
-DBUILD_SHARED_LIBS:BOOL=ON \
|
|
-Dprefix=/usr \
|
|
-Dsysconfdir=/etc \
|
|
-Dbasename=$pkgname \
|
|
-Dhostname=localhost \
|
|
-Dconfdir=/etc/$pkgname \
|
|
-Dlibdir=/usr/lib \
|
|
-Darchivedir=/var/lib/$pkgname/archive \
|
|
-Dworkingdir=/var/lib/$pkgname \
|
|
-Dscriptdir=/etc/$pkgname/scripts \
|
|
-Dplugindir=/usr/lib/$pkgname \
|
|
-Dbackenddir=/usr/lib/$pkgname \
|
|
-Dlogdir=/var/log/$pkgname \
|
|
-Dpiddir=/run/$pkgname \
|
|
-Dbsrdir=/run/$pkgname \
|
|
-Dsubsysdir=/var/lock \
|
|
-Dbatch-insert=yes \
|
|
-Dscsi-crypto=yes \
|
|
-Dlmdb=yes \
|
|
-Dndmp=no \
|
|
-Ddynamic-cats-backends=yes \
|
|
-Ddynamic-storage-backends=yes \
|
|
-Dpostgresql=yes \
|
|
-Dopenssl=yes \
|
|
-Dtraymonitor=no \
|
|
-Dsystemd=no \
|
|
-Ddir-user=$pkgname \
|
|
-Ddir-group=$pkgname \
|
|
-Dsd-user=$pkgname \
|
|
-Dsd-group=$pkgname
|
|
cmake --build build
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
mkdir -p "$pkgdir"/usr/sbin
|
|
mkdir -p "$pkgdir"/usr/bin
|
|
mkdir -p "$pkgdir"/var/lib/bareos
|
|
mkdir -p "$pkgdir"/var/log/bareos
|
|
|
|
local daemon; for daemon in dir; do
|
|
install -Dm755 "$srcdir"/$pkgname-$daemon.initd \
|
|
"$pkgdir"/etc/init.d/$pkgname-$daemon
|
|
install -Dm755 "$srcdir"/$pkgname-$daemon.confd \
|
|
"$pkgdir"/etc/conf.d/$pkgname-$daemon
|
|
done
|
|
|
|
# Install logrotate script
|
|
install -Dm644 core/scripts/logrotate "$pkgdir"/etc/logrotate.d/$pkgname
|
|
|
|
# Fix job to use shell script instead of perl script
|
|
sed -i -e 's/make_catalog_backup.pl/make_catalog_backup/' \
|
|
"$pkgdir"/etc/bareos/bareos-dir.d/job/BackupCatalog.conf
|
|
|
|
# remove perl script
|
|
rm "$pkgdir"/etc/bareos/scripts/make_catalog_backup.pl
|
|
|
|
# remove http configuration
|
|
rm -r "$pkgdir"/etc/httpd
|
|
|
|
chown $pkgusers "$pkgdir"/var/lib/bareos
|
|
chown $pkgusers "$pkgdir"/var/log/bareos
|
|
chown -R $pkgusers "$pkgdir"/etc/bareos
|
|
}
|
|
|
|
_postgresql() {
|
|
description="$description (postgresql driver)"
|
|
mkdir -p "$subpkgdir"/usr/lib/bareos
|
|
mv "$pkgdir"/usr/lib/bareos/libbareoscats-postgresql.so "$subpkgdir"/usr/lib/bareos/
|
|
|
|
for _i in drops creates grants updates; do
|
|
mkdir -p "$subpkgdir"/etc/bareos/scripts/ddl/$_i
|
|
mv "$pkgdir"/etc/bareos/scripts/ddl/$_i/postgresql*.sql "$subpkgdir"/etc/bareos/scripts/ddl/$_i/
|
|
done
|
|
for s in create_bareos_database \
|
|
delete_catalog_backup \
|
|
drop_bareos_database \
|
|
drop_bareos_tables \
|
|
grant_bareos_privileges\
|
|
make_bareos_tables \
|
|
make_catalog_backup \
|
|
update_bareos_tables \
|
|
; do
|
|
cp "$builddir"/core/src/cats/$s "$subpkgdir"/etc/bareos/scripts/ddl ;
|
|
done
|
|
}
|
|
|
|
_webui() {
|
|
description="$description (webui)"
|
|
depends="$_php $_php-gettext $_php-mbstring $_php-session $_php-ctype $_php-opcache $_php-openssl"
|
|
|
|
mkdir -p "$subpkgdir"/usr/share
|
|
mv "$pkgdir"/usr/share/bareos-webui "$subpkgdir"/usr/share/
|
|
|
|
mkdir -p "$subpkgdir"/etc
|
|
mv "$pkgdir"/etc/bareos-webui "$subpkgdir"/etc/
|
|
|
|
mkdir -p "$subpkgdir"/etc/bareos/bareos-dir.d/profile/
|
|
mv "$pkgdir"/etc/bareos/bareos-dir.d/profile/webui-* "$subpkgdir"/etc/bareos/bareos-dir.d/profile/
|
|
}
|
|
|
|
_webui_apache2() {
|
|
description="$description (webui apache2 configuration)"
|
|
depends="$pkgname-webui apache2 $_php-apache2"
|
|
|
|
mkdir -p "$subpkgdir"/etc/apache2/conf.d
|
|
cp "$builddir"/webui/install/apache/bareos-webui.conf "$subpkgdir"/etc/apache2/conf.d/
|
|
}
|
|
|
|
_webui_nginx() {
|
|
description="$description (webui apache2 configuration)"
|
|
depends="$pkgname-webui nginx $_php-fpm"
|
|
|
|
mkdir -p "$subpkgdir"/etc/nginx/http.d
|
|
cp "$builddir"/webui/install/nginx/bareos-webui.conf "$subpkgdir"/etc/nginx/http.d/
|
|
}
|
|
|
|
_sd() {
|
|
description="$description (Storage Daemon)"
|
|
local daemon=sd
|
|
|
|
mkdir -p "$subpkgdir"/etc/bareos
|
|
mkdir -p "$subpkgdir"/usr/sbin
|
|
mkdir -p "$subpkgdir"/usr/lib
|
|
mv "$pkgdir"/etc/bareos/bareos-sd.d "$subpkgdir"/etc/bareos
|
|
mv "$pkgdir"/usr/sbin/bareos-sd "$subpkgdir"/usr/sbin/
|
|
|
|
install -Dm755 "$srcdir"/$pkgname-$daemon.initd \
|
|
"$subpkgdir"/etc/init.d/$pkgname-$daemon
|
|
install -Dm644 "$srcdir"/$pkgname-$daemon.confd \
|
|
"$subpkgdir"/etc/conf.d/$pkgname-$daemon
|
|
}
|
|
|
|
_fd() {
|
|
description="$description (File Daemon)"
|
|
depends="$pkgname=$pkgver-r$pkgrel"
|
|
local daemon=fd
|
|
|
|
mkdir -p "$subpkgdir"/etc/bareos
|
|
mkdir -p "$subpkgdir"/usr/sbin
|
|
mkdir -p "$subpkgdir"/usr/lib
|
|
mv "$pkgdir"/etc/bareos/bareos-fd.d "$subpkgdir"/etc/bareos
|
|
mv "$pkgdir"/usr/sbin/bareos-fd "$subpkgdir"/usr/sbin/
|
|
|
|
install -Dm755 "$srcdir"/$pkgname-$daemon.initd \
|
|
"$subpkgdir"/etc/init.d/$pkgname-$daemon
|
|
install -Dm644 "$srcdir"/$pkgname-$daemon.confd \
|
|
"$subpkgdir"/etc/conf.d/$pkgname-$daemon
|
|
}
|
|
|
|
sha512sums="
|
|
dea64c6eb34a93f1a93eb6b0ac628a75101ac8873e06800a256f226e8f3a556fe39ce4e500246f9c51de30a2b0907732f789c6394f29b7bb9d983a64c709ad2c bareos-22.1.0.tar.gz
|
|
0d1e1fb9d69bd003b6c99b4c0120c14a4e8bb9c5c112649d299e672623241f98453278667e315c13a0ab0e93b1c17a3d7c2b8f59544c2d764e32c691a1986f3e bareos-dir.initd
|
|
407af1b90672959bee9206d3f241226e46a7c3091a79b91da70b6e5abb171f93dec53d5151713627096ec9fb81d0f7690a20bcf4c361abc8a018c6cc967db8b7 bareos-sd.initd
|
|
cf0403ca8f3efb5cfb57915df9203ff16ed69a72d8d0bc189f5f221d36233127d9ed5c8391a46969b0de5943ff4717f52ffae9a5afa1ae24e27631bd1c58b438 bareos-fd.initd
|
|
9858964a291ee9849e144f968a239758e3e6905bb5420717652114d8a583e3342e50f046efa41730f30cfc3f047b485251e93085fb13b327a6f2272d7c4c0309 bareos-dir.confd
|
|
eb5d942edb45d349804c90eb0379cfabca765d63277b21feb4f1937ef8b655b6ba9feb3b671b61f582996ff4f9740614c197ae990c00879731ec43d6da8f4286 bareos-sd.confd
|
|
4bdf1e9d5f2f7a85efdf9aaaa0d35daadf83e766afeccdba69a94490a2e59c0b46fbbbdb1dcd5be389603ac5a196fe35c0fb389bc241eab0bf414c9ec432451f bareos-fd.confd
|
|
9d12f26d77d384ab122fdb133667b17a1e83c748d9fca9ca810c368b8f4f3cb2fc258f7c54628e96a0347e7f996c00f46d89655aad2fee373a61e7433fd783b9 add-libintl.patch
|
|
46b21a0b3c81d7be7d992d267441684c23b39eb2227326d7a8500aef8de3100146f2af98835cea555830d6490dd16fa58575095ba1ab833b697c24bddb68babd nginx-conf.patch
|
|
d7950b298306986d28b7c2e6b1d93d5a289c0e29cdd05825e667ea72da34ac2f078c7de344124d7cab2f342067f67725c40117a06cf95b1ef67f19f67e682521 apache2-conf.patch
|
|
2053eb72bbdb8c02d9ee7dcf387a973e0203485eb85304f1e1513ad501f6738d9fc0bb97596d6d9a1a8c96f6675fd2d2edafc85e961a5bd370b5f22f320c7cbf path-mounted.patch
|
|
e427e32bd5d589618cc8efc6d9a679f62e01904a76f2ce3f56bdbba7df31bf12922380c848bb409291f685fdb80a6ed25d842d44728a363103ab99591b473232 support-alpine-dist.patch
|
|
880cfb519333a4f4bc2ea5f459cb18052be660a0663a46d813cca74f75815f797ab15c9512bd292210da3a09c572447ff159facaa1b8e458757552cb22523f02 disable-systemtest-minio.patch
|
|
846cf5a6885fdd3aaa66650edab682a9eaade311d246fc25d0db4e43bd6f97db9b5d80d9636d155513efd430044c851d880e8c9c34ed354b5cbcef3aff7c3581 alpine-agpl3-compat.patch
|
|
3f3a10d89d8284f1952f84d8cbd559453f94d62e8d00baa8561fc03a9b6c7f456ba48dc8eaab18004bbbac4d5e69ab240e6b4bf3a1fc29df062a68924d957a8c disable-werror.patch
|
|
"
|