Gentoo Archives: gentoo-commits

From: Marc Schiffbauer <mschiff@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-backup/bareos/
Date: Mon, 31 Oct 2016 14:28:37
Message-Id: 1477924097.7f169de3fdc58e39adbee75ab0afa3274b48cb46.mschiff@gentoo
1 commit: 7f169de3fdc58e39adbee75ab0afa3274b48cb46
2 Author: Marc Schiffbauer <mschiff <AT> gentoo <DOT> org>
3 AuthorDate: Mon Oct 31 14:27:49 2016 +0000
4 Commit: Marc Schiffbauer <mschiff <AT> gentoo <DOT> org>
5 CommitDate: Mon Oct 31 14:28:17 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7f169de3
7
8 app-backup/bareos: bump: added version 16.2.4
9
10 Package-Manager: portage-2.3.2
11
12 app-backup/bareos/Manifest | 1 +
13 app-backup/bareos/bareos-16.2.4.ebuild | 428 +++++++++++++++++++++++++++++++++
14 2 files changed, 429 insertions(+)
15
16 diff --git a/app-backup/bareos/Manifest b/app-backup/bareos/Manifest
17 index 59faa70..f15e63e 100644
18 --- a/app-backup/bareos/Manifest
19 +++ b/app-backup/bareos/Manifest
20 @@ -2,3 +2,4 @@ DIST bareos-13.2.4.tar.gz 3467542 SHA256 def68891d074438e55d7a3e570cfaae1c1a8c94
21 DIST bareos-14.2.2.tar.gz 3811787 SHA256 8792fe79689f7a1053ecb493ba52258acb29d0998b71d65178a311d46b7cf2bf SHA512 be490ab2f8085975f164ac554cac7d6bbef1af01c8350b5816b2033a37827de4a81bead6ce1e699fe5cc44085dce2b6a0330b91239fb87907e22f9c8dc710156 WHIRLPOOL 384415d553d61e7aa1eaa22611cc9d9eacf8338df82d911409e52a774e756b0539810c60be3dade91eadcc679794ad7c3bb5a155d7d699171f6a4fdead5a5470
22 DIST bareos-14.2.5.tar.gz 3820963 SHA256 f42bc34afa913cfb4d6b7ef8856c7195d8b13b21c987da1039d46e6c60f06720 SHA512 600cdf8175b1199b73ddcf8a32df7bca446c294c4c830038f93fe3f053482916745675df3a51bc494cdab00b362d57657a34a94e78bac4bae3acced06347023d WHIRLPOOL 361c0edb411c824f128ccb5e27f4d637ecfdf4f2de7a428a8c4eace6d5c23a33a3868cc1b380dcbf6e06d6c7bb71ff222abad923ea9a0bfb74e78f0445c4058b
23 DIST bareos-15.2.2.tar.gz 3928036 SHA256 f314e7d3e99e92b4261af97888ddcdaaedf513b638745b07270db3e6930e9008 SHA512 07b11c51695a6ff348317965625e5cdb8e296d4f3a4037718a98e266d94650ed1fb905c220ac791123d8ed92d0aed24854a6ab52887249849dbc00697d3300c3 WHIRLPOOL e43141e1ba670cd13da716739f4e3ed2a5f63e4dd43efbeed0a781429ff3b7cc6ddcb67d8f6ec47508b036f1da4ffc5cdbd4d49887e428de55969250817d529b
24 +DIST bareos-16.2.4.tar.gz 4275141 SHA256 9a96d9220150f1db643c932ac529b1e3ad179978ef6b06a2504c06db43b4ff3c SHA512 91f7f2b3d9889f4faa9834dc414e2250015d3d26bf8bd0c04c1f3fd882a50a4066ced145f7c8609c070e8f74b53574953e3fef344726c6863cd7bbc73c76a88c WHIRLPOOL 7c3192a80680240246b0fa342799fcc4bc4b71ee8255badd950ffbd570b246129e9a68340e2972e0f0e4746f537330d4ebccc3358cc840f5278562d8b97641b1
25
26 diff --git a/app-backup/bareos/bareos-16.2.4.ebuild b/app-backup/bareos/bareos-16.2.4.ebuild
27 new file mode 100644
28 index 00000000..07884d3
29 --- /dev/null
30 +++ b/app-backup/bareos/bareos-16.2.4.ebuild
31 @@ -0,0 +1,428 @@
32 +# Copyright 1999-2016 Gentoo Foundation
33 +# Distributed under the terms of the GNU General Public License v2
34 +# $Id$
35 +
36 +EAPI="5"
37 +
38 +PYTHON_COMPAT=( python2_7 )
39 +PYTHON_REQ_USE="threads"
40 +
41 +inherit eutils multilib python-single-r1 qt4-r2 user
42 +
43 +DESCRIPTION="Featureful client/server network backup suite"
44 +HOMEPAGE="http://www.bareos.org/"
45 +SRC_URI="https://github.com/${PN}/${PN}/archive/Release/${PV}.tar.gz -> ${P}.tar.gz"
46 +RESTRICT="mirror"
47 +
48 +LICENSE="AGPL-3"
49 +SLOT="0"
50 +KEYWORDS="~amd64 ~x86"
51 +IUSE="X acl cephfs clientonly +director fastlz glusterfs gnutls ipv6 jansson lmdb libressl
52 + logwatch mysql ndmp postgres python qt4 rados rados-striper readline scsi-crypto
53 + sql-pooling +sqlite ssl static +storage-daemon tcpd vim-syntax"
54 +
55 +DEPEND="
56 + !app-backup/bacula
57 + cephfs? ( sys-cluster/ceph )
58 + rados? ( sys-cluster/ceph )
59 + rados-striper? ( >=sys-cluster/ceph-0.94.2 )
60 + glusterfs? ( sys-cluster/glusterfs )
61 + lmdb? ( dev-db/lmdb )
62 + dev-libs/gmp:0
63 + !clientonly? (
64 + postgres? ( dev-db/postgresql:*[threads] )
65 + mysql? ( virtual/mysql )
66 + sqlite? ( dev-db/sqlite:3 )
67 + director? (
68 + virtual/mta
69 + jansson? ( dev-libs/jansson )
70 + )
71 + )
72 + qt4? (
73 + dev-qt/qtsvg:4
74 + x11-libs/qwt:5
75 + )
76 + fastlz? ( dev-libs/bareos-fastlzlib )
77 + logwatch? ( sys-apps/logwatch )
78 + tcpd? ( sys-apps/tcp-wrappers )
79 + readline? ( sys-libs/readline:0 )
80 + static? (
81 + acl? ( virtual/acl[static-libs] )
82 + sys-libs/zlib[static-libs]
83 + dev-libs/lzo[static-libs]
84 + sys-libs/ncurses:=[static-libs]
85 + ssl? (
86 + !gnutls? (
87 + !libressl? ( dev-libs/openssl:0=[static-libs] )
88 + libressl? ( dev-libs/libressl:0=[static-libs] )
89 + )
90 + gnutls? ( net-libs/gnutls[static-libs] )
91 + )
92 + )
93 + !static? (
94 + acl? ( virtual/acl )
95 + dev-libs/lzo
96 + ssl? (
97 + !gnutls? (
98 + !libressl? ( dev-libs/openssl:0= )
99 + libressl? ( dev-libs/libressl:0= )
100 + )
101 + gnutls? ( net-libs/gnutls )
102 + )
103 + sys-libs/ncurses:=
104 + sys-libs/zlib
105 + )
106 + python? ( ${PYTHON_DEPS} )
107 + "
108 +RDEPEND="${DEPEND}
109 + !clientonly? (
110 + storage-daemon? (
111 + sys-block/mtx
112 + app-arch/mt-st
113 + )
114 + )
115 + vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"
116 +
117 +REQUIRED_USE="static? ( clientonly )
118 + python? ( ${PYTHON_REQUIRED_USE} )"
119 +
120 +S=${WORKDIR}/${PN}-Release-${PV}
121 +
122 +pkg_setup() {
123 + use mysql && export mydbtypes+="mysql"
124 + use postgres && export mydbtypes+=" postgresql"
125 + use sqlite && export mydbtypes+=" sqlite"
126 +
127 + # create the daemon group and user
128 + if [ -z "$(egetent group bareos 2>/dev/null)" ]; then
129 + enewgroup bareos
130 + einfo
131 + einfo "The group 'bareos' has been created. Any users you add to this"
132 + einfo "group have access to files created by the daemons."
133 + einfo
134 + fi
135 +
136 + if use clientonly && use static && use qt4; then
137 + ewarn
138 + ewarn "Building statically linked 'bat' is not supported. Ignorig 'qt4' useflag."
139 + ewarn
140 + fi
141 +
142 + if ! use clientonly; then
143 + if [ -z "$(egetent passwd bareos 2>/dev/null)" ]; then
144 + enewuser bareos -1 -1 /var/lib/bareos bareos,disk,tape,cdrom,cdrw
145 + einfo
146 + einfo "The user 'bareos' has been created. Please see the bareos manual"
147 + einfo "for information about running bareos as a non-root user."
148 + einfo
149 + fi
150 + fi
151 +
152 + use python && python-single-r1_pkg_setup
153 +}
154 +
155 +src_prepare() {
156 + # adjusts default configuration files for several binaries
157 + # to /etc/bareos/<config> instead of ./<config>
158 + pushd src >&/dev/null || die
159 + for f in console/console.c dird/dird.c filed/filed.c \
160 + stored/bcopy.c stored/bextract.c stored/bls.c \
161 + stored/bscan.c stored/btape.c stored/stored.c \
162 + qt-console/main.cpp; do
163 + sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bareos/|g' "${f}" \
164 + || die "sed on ${f} failed"
165 + done
166 + popd >&/dev/null || die
167 +
168 + # bug 466690 Use CXXFLAGS instead of CFLAGS
169 + sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die
170 +
171 + # stop build for errors in subdirs
172 + epatch "${FILESDIR}"/${PN}-12.4.5-Makefile.patch
173 +
174 + # bat needs to respect LDFLAGS
175 + epatch "${FILESDIR}"/${PN}-12.4.5-bat-ldflags.patch
176 +
177 + # do not strip binaries
178 + for d in filed console dird stored; do
179 + sed -i -e "s/strip /# strip /" src/$d/Makefile.in || die
180 + done
181 +}
182 +
183 +src_configure() {
184 + local myconf=''
185 +
186 + addpredict /var/lib/logrotate.status
187 +
188 + if use clientonly; then
189 + myconf="${myconf} \
190 + $(use_enable clientonly client-only) \
191 + $(use_enable !static libtool) \
192 + $(use_enable static static-cons) \
193 + $(use_enable static static-fd)"
194 + fi
195 +
196 + # do not build bat and traymonitor if 'static' clientonly
197 + if ! use clientonly || ! use static; then
198 + myconf="${myconf} \
199 + $(use_enable qt4 bat) \
200 + $(use_enable qt4 traymonitor)"
201 + fi
202 +
203 + myconf="${myconf} \
204 + $(use_with X x) \
205 + $(use_enable acl) \
206 + $(use_enable ipv6) \
207 + $(use_enable ndmp) \
208 + $(use_enable readline) \
209 + $(use_enable !readline conio) \
210 + $(use_enable scsi-crypto) \
211 + $(use_enable sql-pooling) \
212 + $(use_with fastlz) \
213 + $(use_with mysql) \
214 + $(use_with postgres postgresql) \
215 + $(use_with python) \
216 + $(use_with readline) \
217 + $(use_with sqlite sqlite3) \
218 + $(use sqlite || echo "--without-sqlite3") \
219 + $(use_with ssl openssl) \
220 + $(use_with tcpd tcp-wrappers) \
221 + $(use_enable lmdb) \
222 + $(use_with glusterfs) \
223 + $(use_with rados) \
224 + $(use_with rados-striper) \
225 + $(use_with cephfs) \
226 + $(use_with jansson) \
227 + "
228 +
229 + econf \
230 + --libdir=/usr/$(get_libdir) \
231 + --docdir=/usr/share/doc/${PF} \
232 + --htmldir=/usr/share/doc/${PF}/html \
233 + --with-pid-dir=/run/bareos \
234 + --sysconfdir=/etc \
235 + --with-subsys-dir=/run/lock/subsys \
236 + --with-working-dir=/var/lib/bareos \
237 + --with-logdir=/var/log/bareos \
238 + --with-scriptdir=/usr/libexec/bareos \
239 + --with-plugindir=/usr/$(get_libdir)/${PN}/plugin \
240 + --with-backenddir=/usr/$(get_libdir)/${PN}/backend \
241 + --with-dir-user=bareos \
242 + --with-dir-group=bareos \
243 + --with-sd-user=root \
244 + --with-sd-group=bareos \
245 + --with-fd-user=root \
246 + --with-fd-group=bareos \
247 + --with-sbin-perm=0755 \
248 + --with-systemd \
249 + --enable-dynamic-cats-backends \
250 + --enable-dynamic-storage-backends \
251 + --enable-batch-insert \
252 + --disable-afs \
253 + --host=${CHOST} \
254 + ${myconf}
255 + # correct configuration for QT based bat
256 + if use qt4 ; then
257 + pushd src/qt-console
258 + eqmake4
259 + popd
260 + pushd src/qt-tray-monitor
261 + eqmake4
262 + popd
263 + fi
264 +}
265 +
266 +src_compile() {
267 + # workaround for build failing with high -j values
268 + # if ndmp is enabled
269 + use ndmp && MAKEOPTS="$MAKEOPTS -j1"
270 +
271 + # Make build log verbose (bug #447806)
272 + emake NO_ECHO=""
273 +}
274 +
275 +src_install() {
276 + emake DESTDIR="${D}" install
277 + newicon src/images/bareos_logo_shadow.png bareos.png
278 +
279 + # install bat icon and desktop file when enabled
280 + # (for some reason ./configure doesn't pick this up)
281 + if use qt4 && ! use static ; then
282 + doicon src/images/bat.png
283 + domenu scripts/bat.desktop
284 + fi
285 +
286 + # remove some scripts we don't need at all
287 + rm -f "${D}"/usr/libexec/bareos/{bareos,bareos-ctl-dir,bareos-ctl-fd,bareos-ctl-sd,startmysql,stopmysql}
288 + rm -f "${D}"/usr/sbin/bareos
289 +
290 + # remove upstream init scripts
291 + rm -f "${D}"/etc/init.d/bareos-*
292 +
293 + # rename statically linked apps
294 + if use clientonly && use static ; then
295 + pushd "${D}"/usr/sbin || die
296 + mv static-bareos-fd bareos-fd || die
297 + mv static-bconsole bconsole || die
298 + popd || die
299 + fi
300 +
301 + # extra files which 'make install' doesn't cover
302 + if ! use clientonly; then
303 + # the logrotate configuration
304 + # (now unconditional wrt bug #258187)
305 + diropts -m0755
306 + insinto /etc/logrotate.d
307 + insopts -m0644
308 + newins "${S}"/scripts/logrotate bareos
309 +
310 + # the logwatch scripts
311 + if use logwatch; then
312 + diropts -m0750
313 + dodir /etc/log.d/scripts/services
314 + dodir /etc/log.d/scripts/shared
315 + dodir /etc/log.d/conf/logfiles
316 + dodir /etc/log.d/conf/services
317 + pushd "${S}"/scripts/logwatch >&/dev/null || die
318 + emake DESTDIR="${D}" install
319 + popd >&/dev/null || die
320 + fi
321 + fi
322 +
323 + rm -vf "${D}"/usr/share/man/man1/bareos-bwxconsole.1*
324 + if ! use qt4; then
325 + rm -vf "${D}"/usr/share/man/man1/bat.1*
326 + fi
327 + if use clientonly || ! use director; then
328 + rm -vf "${D}"/usr/share/man/man8/bareos-dir.8*
329 + rm -vf "${D}"/usr/share/man/man8/bareos-dbcheck.8*
330 + rm -vf "${D}"/usr/share/man/man1/bsmtp.1*
331 + rm -vf "${D}"/usr/share/man/man8/bwild.8*
332 + rm -vf "${D}"/usr/share/man/man8/bregex.8*
333 + rm -vf "${D}"/usr/share/man/man8/bpluginfo.8*
334 + rm -vf "${D}"/usr/libexec/bareos/create_*_database
335 + rm -vf "${D}"/usr/libexec/bareos/drop_*_database
336 + rm -vf "${D}"/usr/libexec/bareos/make_*_tables
337 + rm -vf "${D}"/usr/libexec/bareos/update_*_tables
338 + rm -vf "${D}"/usr/libexec/bareos/drop_*_tables
339 + rm -vf "${D}"/usr/libexec/bareos/grant_*_privileges
340 + rm -vf "${D}"/usr/libexec/bareos/*_catalog_backup
341 + fi
342 + if use clientonly || ! use storage-daemon; then
343 + rm -vf "${D}"/usr/share/man/man8/bareos-sd.8*
344 + rm -vf "${D}"/usr/share/man/man8/bcopy.8*
345 + rm -vf "${D}"/usr/share/man/man8/bextract.8*
346 + rm -vf "${D}"/usr/share/man/man8/bls.8*
347 + rm -vf "${D}"/usr/share/man/man8/bscan.8*
348 + rm -vf "${D}"/usr/share/man/man8/btape.8*
349 + rm -vf "${D}"/usr/libexec/bareos/disk-changer
350 + rm -vf "${D}"/usr/libexec/bareos/mtx-changer
351 + rm -vf "${D}"/usr/libexec/bareos/dvd-handler
352 + rm -vf "${D}"/etc/bareos/mtx-changer.conf
353 + fi
354 + if ! use scsi-crypto; then
355 + rm -vf "${D}"/usr/share/man/man8/bscrypto.8*
356 + fi
357 + if ! use qt4; then
358 + rm -vf "${D}"/usr/share/man/man1/bareos-tray-monitor.1*
359 + fi
360 +
361 + # documentation
362 + dodoc README.md
363 + use ndmp && dodoc README.NDMP
364 + use scsi-crypto && dodoc README.scsicrypto
365 +
366 + # vim-files
367 + if use vim-syntax; then
368 + insinto /usr/share/vim/vimfiles/syntax
369 + doins scripts/bareos.vim
370 + insinto /usr/share/vim/vimfiles/ftdetect
371 + newins scripts/filetype.vim bareos_ft.vim
372 + fi
373 +
374 + # setup init scripts
375 + myscripts="bareos-fd"
376 + if ! use clientonly; then
377 + if use director; then
378 + myscripts="${myscripts} bareos-dir"
379 + fi
380 + if use storage-daemon; then
381 + myscripts="${myscripts} bareos-sd"
382 + fi
383 + fi
384 + for script in ${myscripts}; do
385 + # copy over init script and config to a temporary location
386 + # so we can modify them as needed
387 + cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die "failed to copy ${script}.confd"
388 + cp "${FILESDIR}/${script}".initd "${T}/${script}".initd || die "failed to copy ${script}.initd"
389 +
390 + # now set the database dependency for the director init script
391 + case "${script}" in
392 + bareos-dir)
393 + sed -i -e "s:%databasetypes%:${mydbtypes}:" "${T}/${script}".confd || die
394 + ;;
395 + *)
396 + ;;
397 + esac
398 +
399 + # install init script and config
400 + newinitd "${T}/${script}".initd "${script}"
401 + newconfd "${T}/${script}".confd "${script}"
402 + done
403 +
404 + # make sure the working directory exists
405 + diropts -m0750
406 + keepdir /var/lib/bareos
407 +
408 + # make sure bareos group can execute bareos libexec scripts
409 + fowners -R root:bareos /usr/libexec/bareos
410 +}
411 +
412 +pkg_postinst() {
413 + if use clientonly; then
414 + fowners root:bareos /var/lib/bareos
415 + else
416 + fowners bareos:bareos /var/lib/bareos
417 + fi
418 +
419 + if ! use clientonly && use director; then
420 + einfo
421 + einfo "If this is a new install, you must create the databases with:"
422 + if use postgres; then
423 + einfo
424 + einfo "For postgresql:"
425 + einfo " su postgres -c '/usr/libexec/bareos/create_bareos_database postgresql'"
426 + einfo " su postgres -c '/usr/libexec/bareos/make_bareos_tables postgresql'"
427 + einfo " su postgres -c '/usr/libexec/bareos/grant_bareos_privileges postgresql'"
428 + fi
429 + if use mysql; then
430 + einfo
431 + einfo "For mysql:"
432 + einfo
433 + einfo " Make sure root has direct access to your mysql server. You may want to"
434 + einfo " create a /root/.my.cnf file with"
435 + einfo " [client]"
436 + einfo " user=root"
437 + einfo " password=YourPasswordForAccessingMysqlAsRoot"
438 + einfo " before running:"
439 + einfo " /usr/libexec/bareos/create_bareos_database mysql"
440 + einfo " /usr/libexec/bareos/make_bareos_tables mysql"
441 + einfo " /usr/libexec/bareos/grant_bareos_privileges mysql"
442 + fi
443 + einfo
444 + fi
445 +
446 + if use sqlite; then
447 + einfo
448 + einfo "Be aware that Bareos does not officially support SQLite database."
449 + einfo "Best use it only for a client-only installation. See Bug #445540."
450 + einfo
451 + einfo "It is strongly recommended to use either postgresql or mysql as"
452 + einfo "catalog database backend."
453 + einfo
454 + fi
455 +
456 + einfo "Please note that 'bconsole' will always be installed. To compile 'bat'"
457 + einfo "you have to enable 'USE=qt4'."
458 + einfo
459 +}