Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 133396 Details for
Bug 195794
app-backup/bacula-2.2.5 patch for sql error
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
Updated ebuild
bacula-2.2.5-r1.ebuild (text/plain), 10.65 KB, created by
Alexander Wigen
on 2007-10-14 01:56:31 UTC
(
hide
)
Description:
Updated ebuild
Filename:
MIME Type:
Creator:
Alexander Wigen
Created:
2007-10-14 01:56:31 UTC
Size:
10.65 KB
patch
obsolete
># Copyright 1999-2007 Gentoo Foundation ># Distributed under the terms of the GNU General Public License v2 ># $Header: /var/cvsroot/gentoo-x86/app-backup/bacula/bacula-2.2.5.ebuild,v 1.1 2007/10/12 08:49:35 wschlich Exp $ > ># ># TODO: ># - install stuff from examples/: ># - examples/nagios/ + add nagios USE flag etc. ># (see also example/reports/check_bacula_pools.sh which is newer ># than examples/nagios/check_bacula_pools.sh) ># - examples/autochangers/ ># - examples/devices/ ># - examples/python/ ># - examples/reports/baculareport.pl ># - correctly filter unneeded /usr/libexec/bacula/ stuff depending ># on selected USE flags, e.g. bacula-clientonly ># - install bacula-web and/or bweb from bacula-gui package ># > >inherit eutils > >IUSE="bacula-clientonly bacula-console bacula-nodir bacula-nosd bacula-split-init doc gnome ipv6 logrotate logwatch mysql postgres python qt4 readline sqlite sqlite3 ssl static tcpd wxwindows X" >KEYWORDS="~amd64 ~x86" > >DESCRIPTION="Featureful client/server network backup suite" >HOMEPAGE="http://www.bacula.org/" > >DOC_VER="${PV}" >SRC_URI="mirror://sourceforge/bacula/${P}.tar.gz > doc? ( mirror://sourceforge/bacula/${PN}-docs-${DOC_VER}.tar.bz2 )" > >LICENSE="GPL-2" >SLOT="0" > >DEPEND=" > >=sys-libs/zlib-1.1.4 > dev-libs/gmp > !bacula-clientonly? ( > postgres? ( >=dev-db/postgresql-7.4.0 ) > mysql? ( virtual/mysql ) > sqlite? ( =dev-db/sqlite-2* ) > sqlite3? ( >=dev-db/sqlite-3.0.0 ) > virtual/mta > ) > bacula-console? ( > wxwindows? ( =x11-libs/wxGTK-2.6* ) > qt4? ( > =x11-libs/qt-4* > >=x11-libs/qwt-5 > ) > gnome? ( > >=gnome-base/libgnome-2 > x11-libs/gksu > ) > ) > ssl? ( dev-libs/openssl ) > logrotate? ( app-admin/logrotate ) > logwatch? ( sys-apps/logwatch ) > tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) > readline? ( >=sys-libs/readline-4.1 ) > doc? ( > virtual/ghostscript > dev-tex/latex2html > )" >RDEPEND="${DEPEND} > !bacula-clientonly? ( > sys-block/mtx > app-arch/mt-st > )" > >pkg_setup() { > local dbnum > declare -i dbnum=0 > if ! useq bacula-clientonly; then > if useq mysql; then > export mydbtype='mysql' > let dbnum++ > fi > if useq postgres; then > export mydbtype='postgresql' > let dbnum++ > fi > if useq sqlite; then > export mydbtype='sqlite' > let dbnum++ > fi > if useq sqlite3; then > export mydbtype='sqlite3' > let dbnum++ > fi > if [[ "${dbnum}" -lt 1 ]]; then > eerror > eerror "To use ${P} it is required to set a database in the USE flags." > eerror "Supported databases are mysql, postgresql, sqlite, sqlite3" > eerror > die "No database type selected." > elif [[ "${dbnum}" -gt 1 ]]; then > eerror > eerror "You have set ${P} to use multiple database types." > eerror "I don't know which to set as the default!" > eerror "You can use /etc/portage/package.use to set per-package USE flags" > eerror "Set it so only one database type, mysql, postgres, sqlite, sqlite3" > eerror > die "Multiple database types selected." > fi > fi > > # create the daemon group and user > if [ -z "$(egetent group bacula)" ]; then > enewgroup bacula > einfo > einfo "The group 'bacula' has been created. Any users you add to this" > einfo "group have access to files created by the daemons." > einfo > fi > if ! useq bacula-clientonly; then > if [ -z "$(egetent passwd bacula)" ]; then > enewuser bacula -1 -1 /var/lib/bacula bacula,disk,tape,cdrom,cdrw > einfo > einfo "The user 'bacula' has been created. Please see the bacula manual" > einfo "for information about running bacula as a non-root user." > einfo > fi > fi >} > >src_unpack() { > unpack ${A} > cd ${S} > > epatch "${FILESDIR}/${PN}-${PV}"-nextvol.patch > > # adjusts default configuration files for several binaries > # to /etc/bacula/<config> instead of ./<config> > pushd src && epatch "${FILESDIR}/${PV}/${PN}"-default-configs.patch && popd > > # replaces (deprecated) gnomesu with gksu in the gnome menu files > useq bacula-console && useq gnome && epatch "${FILESDIR}/${PV}/${PN}"-gnomesu2gksu.diff >} > >src_compile() { > local myconf='' > > if useq bacula-clientonly; then > myconf="${myconf} \ > $(use_enable bacula-clientonly client-only) \ > $(use_enable static static-fd)" > else > myconf="${myconf} \ > --with-${mydbtype} \ > $(use_enable static static-tools) \ > $(use_enable static static-fd) \ > $(use_enable !bacula-nodir build-dird) \ > $(use_enable !bacula-nosd build-stored)" > if ! useq bacula-nodir; then > myconf="${myconf} $(use_enable static static-dir)" > fi > if ! useq bacula-nosd; then > myconf="${myconf} $(use_enable static static-sd)" > fi > > fi > > if useq bacula-console; then > if useq qt4 && has_version '<x11-libs/qwt-5'; then > eerror "x11-libs/qwt found in a version < 5, thus the" > eerror "compilation of 'bat' would fail (see" > eerror "http://bugs.gentoo.org/188477#c11 for details)." > eerror "please either unmerge <x11-libs/qwt-5 or disable" > eerror "the qt4 USE flag to disable building 'bat'." > die "incompatible slotted qwt version found" > fi > myconf="${myconf} \ > $(use_with X x) \ > $(use_enable gnome) \ > $(use_enable gnome tray-monitor) \ > $(use_enable wxwindows bwx-console) \ > $(use_enable qt4 bat) \ > $(use_enable static static-cons)" > fi > > myconf="${myconf} \ > $(use_with python) \ > $(use_enable readline) \ > $(use_with readline readline /usr) \ > $(use_with ssl openssl) \ > $(use_enable ipv6) \ > $(use_with tcpd tcp-wrappers)" > > ./configure \ > --prefix=/usr \ > --mandir=/usr/share/man \ > --with-pid-dir=/var/run \ > --sysconfdir=/etc/bacula \ > --infodir=/usr/share/info \ > --with-subsys-dir=/var/lock/subsys \ > --with-working-dir=/var/lib/bacula \ > --with-scriptdir=/usr/libexec/bacula \ > --with-dir-user=bacula \ > --with-dir-group=bacula \ > --with-sd-user=root \ > --with-sd-group=bacula \ > --with-fd-user=root \ > --with-fd-group=bacula \ > --enable-smartalloc \ > --host=${CHOST} \ > ${myconf} \ > || die "configure failed" > > emake || die "emake failed" > > # build docs from bacula-docs tarball > if useq doc; then > pushd "${WORKDIR}/${PN}-docs-${DOC_VER}" > > ./configure \ > --with-bacula=${S} \ > || die "configure for bacula-docs failed" > > # the main Makefile tries to build stuff in > # ./developer/ and ./bacula-web/, which is > # unfortunately broken in 2.0.3, so we only > # build stuff in ./manual/, which works. > pushd manual > emake -j1 || die "emake for bacula-docs failed" > popd > > popd > fi >} > >src_install() { > emake DESTDIR="${D}" install || die "emake install failed" > > # install bat when enabled (for some reason ./configure doesn't pick this up) > if useq bacula-console && useq qt4; then > dosbin "${S}"/src/qt-console/bat > fi > > # remove some scripts we don't need at all > rm -f "${D}"/usr/libexec/bacula/{bacula,bacula-ctl-dir,bacula-ctl-fd,bacula-ctl-sd,startmysql,stopmysql} > > # rename statically linked apps > if useq static; then > pushd "${D}"/usr/sbin > mv static-bacula-fd bacula-fd > mv static-bconsole bconsole > if ! useq bacula-clientonly; then > mv static-bacula-dir bacula-dir > mv static-bacula-sd bacula-sd > fi > if useq bacula-console && useq gnome; then > mv static-gnome-console gnome-console > fi > if useq bacula-console && useq qt4; then > mv static-bat bat > fi > popd > fi > > # gnome-console menu entries using gksu > if useq bacula-console && useq gnome; then > emake DESTDIR="${D}" install-menu-xsu \ > || die "Failed to install gnome menu files" > fi > > # extra files which 'make install' doesn't cover > if ! useq bacula-clientonly; then > # the database update scripts > diropts -m0750 > insinto /usr/libexec/bacula/updatedb > insopts -m0754 > doins "${S}"/updatedb/* > fperms 0640 /usr/libexec/bacula/updatedb/README > > # the logrotate configuration > if useq logrotate; then > diropts -m0755 > insinto /etc/logrotate.d > insopts -m0644 > newins "${S}"/scripts/logrotate bacula > fi > > # the logwatch scripts > if useq logwatch; then > diropts -m0750 > dodir /etc/log.d/scripts/services > dodir /etc/log.d/conf/logfiles > dodir /etc/log.d/conf/services > cd "${S}"/scripts/logwatch > emake DESTDIR="${D}" install || die "Failed to install logwatch scripts" > cd "${S}" > fi > fi > > # documentation > for d in "${S}"/{ChangeLog,LICENSE,README,ReleaseNotes,SUPPORT,kernstodo,projects}; do > dodoc "${d}" > done > # TODO FIXME: developers and bacula-web documentation is broken with 2.0.3 :-( > if useq doc; then >#! dodoc "${WORKDIR}/${PN}-docs-${DOC_VER}"/developers/developers.pdf > dodoc "${WORKDIR}/${PN}-docs-${DOC_VER}"/manual/bacula.pdf > diropts -m0755 >#! dodir /usr/share/doc/"${PF}"/developers > dodir /usr/share/doc/"${PF}"/manual > insopts -m0644 >#! insinto /usr/share/doc/"${PF}"/developers >#! doins "${WORKDIR}/${PN}-docs-${DOC_VER}"/developers/developers/* > insinto /usr/share/doc/"${PF}"/manual > doins "${WORKDIR}/${PN}-docs-${DOC_VER}"/manual/bacula/* > fi > > # setup init scripts > myservices="fd" > if ! useq bacula-clientonly; then > if ! useq bacula-nodir; then > myservices="${myservices} dir" > fi > if ! useq bacula-nosd; then > myservices="${myservices} sd" > fi > fi > if useq bacula-split-init; then > myscripts="" > for service in ${myservices}; do > myscripts="${myscripts} bacula-${service}" > done > else > myscripts="bacula-all" > fi > for script in ${myscripts}; do > # copy over init script and config to a temporary location > # so we can modify them as needed > cp "${FILESDIR}/${PV}/${script}"-conf "${T}/${script}".conf > cp "${FILESDIR}/${PV}/${script}"-init "${T}/${script}".init > # set database dependancy for the all-in-one and director init scripts > case "${mydbtype}" in > sqlite*) > # sqlite + sqlite3 databases don't have daemons > sed -i -e "s:%database%::" "${T}/${script}".init > ;; > *) > # all other databases have daemons > sed -i -e "s:%database%:${mydbtype}:" "${T}/${script}".init > ;; > esac > # set services for the all-in-one init script > sed -i -e "s:%services%:${myservices}:" "${T}/${script}".conf > # install init script and config > newinitd "${T}/${script}".init "${script}" > newconfd "${T}/${script}".conf "${script}" > done > > # make sure the working directory exists > diropts -m0750 > keepdir /var/lib/bacula > > # make sure bacula group can execute bacula libexec scripts > fowners root:bacula /usr/libexec/bacula/* >} > >pkg_postinst() { > if useq bacula-clientonly; then > fowners root:bacula /var/lib/bacula > else > fowners bacula:bacula /var/lib/bacula > fi > > if ! useq bacula-clientonly && ! useq bacula-nodir; then > einfo > einfo "If this is a new install, you must create the ${mydbtype} databases with:" > einfo " /usr/libexec/bacula/create_${mydbtype}_database" > einfo " /usr/libexec/bacula/make_${mydbtype}_tables" > einfo " /usr/libexec/bacula/grant_${mydbtype}_privileges" > einfo > einfo "If you're upgrading from a major release, you must upgrade your bacula catalog database." > einfo "Please read the manual chapter for how to upgrade your database." > einfo "You can find database upgrade scripts in /usr/libexec/bacula/updatedb." > einfo > fi >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 195794
:
133395
| 133396 |
133397