diff options
Diffstat (limited to 'community/bareos/APKBUILD')
-rw-r--r-- | community/bareos/APKBUILD | 220 |
1 files changed, 144 insertions, 76 deletions
diff --git a/community/bareos/APKBUILD b/community/bareos/APKBUILD index 390fef5ab6b..ff5b5b3092e 100644 --- a/community/bareos/APKBUILD +++ b/community/bareos/APKBUILD @@ -2,28 +2,52 @@ # Contributor: Francesco Colista <fcolista@alpinelinux.org> # Maintainer: Francesco Colista <fcolista@alpinelinux.org> pkgname=bareos -pkgver=20.0.0 -pkgrel=0 +pkgver=22.1.2 +pkgrel=2 pkgdesc="Bareos - Backup Archiving REcovery Open Sourced" -url="http://www.bareos.org" -# FTBFS on mips +url="https://www.bareos.com/" +_php=php82 # chromium-chromedriver only present on these arches -arch="x86_64 aarch64" +arch="x86_64 armv7" options="!check" -license="AGPL-3.0" -makedepends="cmake gawk -lzo-dev acl-dev gettext-dev -readline-dev ncurses-dev jansson-dev -sqlite-dev postgresql-dev mariadb-connector-c-dev -php7 -gtest-dev py3-psycopg2 chromium-chromedriver -libcap-dev libtirpc-dev -py3-apache-libcloud py3-dateutil -python3-dev python3 py3-dateutil py3-psycopg2 py3-apache-libcloud -json-c-dev libxml2-dev linux-pam-dev" -install="$pkgname.pre-install $pkgname.post-install" -subpackages="$pkgname-dev $pkgname-doc $pkgname-openrc $pkgname-dbg -$pkgname-mysql:_mysql $pkgname-sqlite:_sqlite $pkgname-postgresql:_postgresql +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 @@ -31,14 +55,31 @@ source="$pkgname-$pkgver.tar.gz::https://github.com/bareos/bareos/archive/Releas $pkgname-dir.initd $pkgname-sd.initd $pkgname-fd.initd + + $pkgname-dir.confd + $pkgname-sd.confd + $pkgname-fd.confd + $_php-fpm.conf + add-libintl.patch nginx-conf.patch + apache2-conf.patch path-mounted.patch support-alpine-dist.patch - xattr-include.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 @@ -49,19 +90,16 @@ prepare() { mkdir -pv core/platforms/alpine touch core/platforms/alpine/CMakeLists.txt - # cleanup stale builddir and recreate - [ -d cmake-build ] && rm -rfv cmake-build - mkdir cmake-build + sed -i '/bareos-symlink-default-db-backend.cmake/d' core/src/cats/CMakeLists.txt } build() { - cd "$builddir"/cmake-build - - cmake .. \ + 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 \ @@ -79,39 +117,35 @@ build() { -Dbatch-insert=yes \ -Dscsi-crypto=yes \ -Dlmdb=yes \ - -Dipv6=yes \ + -Dndmp=no \ -Ddynamic-cats-backends=yes \ + -Ddynamic-storage-backends=yes \ -Dpostgresql=yes \ - -Dmysql=yes \ - -Dsqlite3=yes \ -Dopenssl=yes \ -Dtraymonitor=no \ -Dsystemd=no \ - -Dndmp=no \ -Ddir-user=$pkgname \ -Ddir-group=$pkgname \ -Dsd-user=$pkgname \ - -Dsd-group=$pkgname \ - -Dfd-user=root \ - -Dfd-group=$pkgname - make + -Dsd-group=$pkgname + cmake --build build } package() { - cd "$builddir"/cmake-build - make DESTDIR="$pkgdir" install + 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 sd fd; do - install -Dm755 "$srcdir"/$pkgname-$daemon.initd \ - "$pkgdir"/etc/init.d/$pkgname-$daemon - done + local daemon=dir + install -Dm755 "$srcdir"/$pkgname-$daemon.initd \ + "$pkgdir"/etc/init.d/$pkgname-$daemon + install -Dm755 "$srcdir"/$pkgname-$daemon.confd \ + "$pkgdir"/etc/conf.d/$pkgname-$daemon # Install logrotate script - install -Dm644 ../core/scripts/logrotate "$pkgdir"/etc/logrotate.d/$pkgname + 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/' \ @@ -122,28 +156,10 @@ package() { # remove http configuration rm -r "$pkgdir"/etc/httpd -} - -_mysql() { - description="$description (mysql driver)" - mkdir -p "$subpkgdir"/usr/lib/bareos - mv "$pkgdir"/usr/lib/bareos/libbareoscats-mysql.so "$subpkgdir"/usr/lib/bareos/ - for _i in creates grants updates; do - mkdir -p "$subpkgdir"/etc/bareos/scripts/ddl/$_i - mv "$pkgdir"/etc/bareos/scripts/ddl/$_i/mysql*.sql "$subpkgdir"/etc/bareos/scripts/ddl/$_i/ - done -} - -_sqlite() { - description="$description (sqlite driver)" - mkdir -p "$subpkgdir"/usr/lib/bareos - mv "$pkgdir"/usr/lib/bareos/libbareoscats-sqlite3.so "$subpkgdir"/usr/lib/bareos/ - - for _i in creates updates; do - mkdir -p "$subpkgdir"/etc/bareos/scripts/ddl/$_i - mv "$pkgdir"/etc/bareos/scripts/ddl/$_i/sqlite3*.sql "$subpkgdir"/etc/bareos/scripts/ddl/$_i/ - done + chown $pkgusers "$pkgdir"/var/lib/bareos + chown $pkgusers "$pkgdir"/var/log/bareos + chown -R $pkgusers "$pkgdir"/etc/bareos } _postgresql() { @@ -151,15 +167,26 @@ _postgresql() { mkdir -p "$subpkgdir"/usr/lib/bareos mv "$pkgdir"/usr/lib/bareos/libbareoscats-postgresql.so "$subpkgdir"/usr/lib/bareos/ - for _i in creates grants updates; do + 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="php7 php7-gettext php7-mbstring php7-session php7-ctype php7-openssl php7-json py3-selenium" + depends="$_php $_php-gettext $_php-mbstring $_php-session $_php-ctype $_php-opcache $_php-openssl $_php-intl $_php-json $_php-curl" mkdir -p "$subpkgdir"/usr/share mv "$pkgdir"/usr/share/bareos-webui "$subpkgdir"/usr/share/ @@ -173,28 +200,69 @@ _webui() { _webui_apache2() { description="$description (webui apache2 configuration)" - depends="$pkgname-webui php7-apache2" + depends="$pkgname-webui apache2 apache-mod-fcgid $_php-fpm" mkdir -p "$subpkgdir"/etc/apache2/conf.d cp "$builddir"/webui/install/apache/bareos-webui.conf "$subpkgdir"/etc/apache2/conf.d/ + cp "$srcdir"/$_php-fpm.conf "$subpkgdir"/etc/apache2/conf.d/ } - _webui_nginx() { - description="$description (webui apache2 configuration)" - depends="$pkgname-webui nginx" + description="$description (webui nginx configuration)" + depends="$pkgname-webui nginx $_php-fpm" - mkdir -p "$subpkgdir"/etc/nginx/conf.d - cp "$builddir"/webui/install/nginx/bareos-webui.conf "$subpkgdir"/etc/nginx/conf.d/ + 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="14961ed5db7d169e1e529eded47299129cd92fe29974bd457863756cdee47aa0731fe65ece8439e71a7c474b483c2cfc1a95dd6d8419bf9ae3d3690db52bc3cf bareos-20.0.0.tar.gz -eb1e7072b579bf9ae21f2e351d6900abb277db64e373f4760bac8188b82929376e4a196d2c935cefe1ae4cc2c396f2fcba1a25642b26e2f92a0d008fbdc4b5f2 bareos-dir.initd -c770b1d041fafef93d4eb0269ba8d9733e85ef465657fe8dd5d5c68a27ec773cec9c5c582d4a16596d95bbf6dbd3f7194dc9c0d8ed73138e9fb438fba9aa9445 bareos-sd.initd -c6347079dbcef5f4a69ec0c4ecc31803520d715d599d89c6bbfbb3741a86c50d7295c30432889b13ee9c16f2feaa84b1c6ae992cfee6505d569c6493d7e85a5b bareos-fd.initd +sha512sums=" +76d53425b2a28f4f7887b323a70bf9b37df44302e0e25aff7156c1b3ee26ffa60bbfb45ed29a0f2fe763d5c38b8f7135ac2a3e405d8e2b10717f4893baf9c327 bareos-22.1.2.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 +89269be79b5ccc3bddeb938a9aee4f80704219aa31423eedc42b0637ba00ebedeaa1617972005a8db6697cb0905e4321c4aedaaa44b1129be09d5ce080c06029 php82-fpm.conf 9d12f26d77d384ab122fdb133667b17a1e83c748d9fca9ca810c368b8f4f3cb2fc258f7c54628e96a0347e7f996c00f46d89655aad2fee373a61e7433fd783b9 add-libintl.patch -c2fd44d5880b74b24d8001b0798a1a42936347284633b9dd93d604a642c7b15220e5af66cbceb8919263e85b3cfee866cf3f956046ab7cc0d93edce96ad1ecda nginx-conf.patch +46b21a0b3c81d7be7d992d267441684c23b39eb2227326d7a8500aef8de3100146f2af98835cea555830d6490dd16fa58575095ba1ab833b697c24bddb68babd nginx-conf.patch +d7950b298306986d28b7c2e6b1d93d5a289c0e29cdd05825e667ea72da34ac2f078c7de344124d7cab2f342067f67725c40117a06cf95b1ef67f19f67e682521 apache2-conf.patch 2053eb72bbdb8c02d9ee7dcf387a973e0203485eb85304f1e1513ad501f6738d9fc0bb97596d6d9a1a8c96f6675fd2d2edafc85e961a5bd370b5f22f320c7cbf path-mounted.patch e427e32bd5d589618cc8efc6d9a679f62e01904a76f2ce3f56bdbba7df31bf12922380c848bb409291f685fdb80a6ed25d842d44728a363103ab99591b473232 support-alpine-dist.patch -754d383abeafaac2668a59f21031959024d343da210bc1b0f82c11b4132e0f71a4b64a38a44f21bc583f4ea4c4910a865e1b306be6ee1c88a883065e3bf2170b xattr-include.patch" +880cfb519333a4f4bc2ea5f459cb18052be660a0663a46d813cca74f75815f797ab15c9512bd292210da3a09c572447ff159facaa1b8e458757552cb22523f02 disable-systemtest-minio.patch +846cf5a6885fdd3aaa66650edab682a9eaade311d246fc25d0db4e43bd6f97db9b5d80d9636d155513efd430044c851d880e8c9c34ed354b5cbcef3aff7c3581 alpine-agpl3-compat.patch +3f3a10d89d8284f1952f84d8cbd559453f94d62e8d00baa8561fc03a9b6c7f456ba48dc8eaab18004bbbac4d5e69ab240e6b4bf3a1fc29df062a68924d957a8c disable-werror.patch +" |