Blame SPECS/bacula.spec

13b78d
%global uid 133
13b78d
%global username bacula
13b78d
13b78d
Name:               bacula
13b78d
Version:            11.0.1
13b78d
Release:            4%{?dist}
13b78d
Summary:            Cross platform network backup for Linux, Unix, Mac and Windows
13b78d
# See LICENSE for details
13b78d
License:            AGPLv3 with exceptions
13b78d
URL:                http://www.bacula.org
13b78d
13b78d
Source0:            http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
13b78d
13b78d
Source2:            quickstart_postgresql.txt
13b78d
Source3:            quickstart_mysql.txt
13b78d
Source4:            quickstart_sqlite3.txt
13b78d
Source5:            README.Redhat
13b78d
Source6:            %{name}.logrotate
13b78d
Source10:           %{name}-fd.service
13b78d
Source11:           %{name}-dir.service
13b78d
Source12:           %{name}-sd.service
13b78d
Source15:           %{name}-fd.sysconfig
13b78d
Source16:           %{name}-dir.sysconfig
13b78d
Source17:           %{name}-sd.sysconfig
13b78d
Source19:           https://salsa.debian.org/bacula-team/bacula/-/raw/master/debian/additions/bacula-tray-monitor.png#/bacula-tray-monitor.png
13b78d
13b78d
Patch1:             %{name}-openssl.patch
13b78d
Patch2:             %{name}-queryfile.patch
13b78d
Patch3:             %{name}-sqlite-priv.patch
13b78d
Patch4:             %{name}-bat-build.patch
13b78d
Patch5:             %{name}-seg-fault.patch
13b78d
Patch6:             %{name}-logwatch.patch
13b78d
Patch7:             %{name}-non-free-code.patch
13b78d
Patch8:             %{name}-desktop.patch
13b78d
Patch9:             %{name}-g++-options.patch
13b78d
Patch10:            %{name}-install.patch
13b78d
Patch11:            %{name}-docker-plugin.patch
13b78d
# Original patch removed by mistake, upstream is not willing to add it again:
13b78d
# http://www.bacula.org/git/cgit.cgi/bacula/commit/?h=Branch-7.0&id=51b3b98fb77ab3c0decee455cc6c4d2eb3c5303a
13b78d
# Without this, there is no library providing the correct shared object name
13b78d
# required by the daemons.
13b78d
# http://bugs.bacula.org/view.php?id=2084
13b78d
Patch12:            %{name}-autoconf.patch
13b78d
Patch13:            %{name}-build-cdp-plugin.patch
13b78d
Patch14:            %{name}-nagios.patch
13b78d
13b78d
BuildRequires:      desktop-file-utils
13b78d
BuildRequires:      perl-generators
13b78d
BuildRequires:      sed
13b78d
13b78d
BuildRequires:      autoconf
13b78d
BuildRequires:      automake
13b78d
BuildRequires:      gcc
13b78d
BuildRequires:      gcc-c++
13b78d
BuildRequires:      glibc-devel
13b78d
BuildRequires:      libacl-devel
13b78d
BuildRequires:      libstdc++-devel
13b78d
BuildRequires:      libxml2-devel
13b78d
BuildRequires:      libcap-devel
13b78d
BuildRequires:      lzo-devel
13b78d
BuildRequires:      make
13b78d
BuildRequires:      ncurses-devel
13b78d
BuildRequires:      openssl-devel
13b78d
BuildRequires:      qt5-qtbase-devel
13b78d
BuildRequires:      readline-devel
13b78d
BuildRequires:      sqlite-devel
13b78d
BuildRequires:      systemd
13b78d
BuildRequires:      zlib-devel
13b78d
13b78d
%if 0%{?fedora} || 0%{?rhel} > 7
13b78d
BuildRequires:      mariadb-connector-c-devel
13b78d
# https://fedoraproject.org/wiki/Changes/perl_Package_to_Install_Core_Modules
13b78d
BuildRequires:      perl-interpreter
13b78d
%else
13b78d
BuildRequires:      mysql-devel
13b78d
BuildRequires:      perl
13b78d
BuildRequires:      tcp_wrappers-devel
13b78d
%endif
13b78d
13b78d
%if 0%{?fedora}
13b78d
BuildRequires:      libpq-devel
13b78d
%else
13b78d
BuildRequires:      postgresql-devel
13b78d
%endif
13b78d
13b78d
%description
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture and is efficient and relatively easy to
13b78d
use, while offering many advanced storage management features that make it easy
13b78d
to find and recover lost or damaged files.
13b78d
13b78d
%package libs
13b78d
Summary:            Bacula libraries
13b78d
13b78d
%description libs
13b78d
Bacula is a set of programs that allow you to manage the backup,
13b78d
recovery, and verification of computer data across a network of
13b78d
different computers. It is based on a client/server architecture.
13b78d
13b78d
This package contains basic Bacula libraries, which are used by all
13b78d
Bacula programs.
13b78d
13b78d
%package libs-sql
13b78d
Summary:            Bacula SQL libraries
13b78d
Obsoletes:          bacula-libs-mysql <= 5.0.3
13b78d
Obsoletes:          bacula-libs-sqlite <= 5.0.3
13b78d
Obsoletes:          bacula-libs-postgresql <= 5.0.3
13b78d
Provides:           bacula-libs-mysql = %{version}-%{release}
13b78d
Provides:           bacula-libs-sqlite = %{version}-%{release}
13b78d
Provides:           bacula-libs-postgresql = %{version}-%{release}
13b78d
13b78d
%description libs-sql
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the SQL Bacula libraries, which are used by Director and
13b78d
Storage daemons. You have to select your preferred catalog library through the
13b78d
alternatives system.
13b78d
13b78d
%package common
13b78d
Summary:            Common Bacula files
13b78d
Provides:           group(%username) = %uid
13b78d
Provides:           user(%username) = %uid
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires(pre):      shadow-utils
13b78d
Requires(postun):   shadow-utils
13b78d
13b78d
%description common
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains files common to all Bacula daemons.
13b78d
13b78d
%package director
13b78d
Summary:            Bacula Director files
13b78d
Requires:           bacula-common%{?_isa} = %{version}-%{release}
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires:           bacula-libs-sql%{?_isa} = %{version}-%{release}
13b78d
# Director backends merged into core.
13b78d
Provides:           bacula-director-common = %{version}-%{release}
13b78d
Obsoletes:          bacula-director-common < 5.2.3-5
13b78d
Provides:           bacula-director-mysql = %{version}-%{release}
13b78d
Obsoletes:          bacula-director-mysql < 5.2.3-5
13b78d
Provides:           bacula-director-sqlite = %{version}-%{release}
13b78d
Obsoletes:          bacula-director-sqlite < 5.2.3-5
13b78d
Provides:           bacula-director-postgresql = %{version}-%{release}
13b78d
Obsoletes:          bacula-director-postgresql < 5.2.3-5
13b78d
13b78d
Requires(post):     systemd
13b78d
Requires(preun):    systemd
13b78d
Requires(postun):   systemd
13b78d
13b78d
%description director
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the director files.
13b78d
13b78d
%package logwatch
13b78d
Summary:            Bacula Director logwatch scripts
13b78d
BuildArch:          noarch
13b78d
Requires:           bacula-director = %{version}-%{release}
13b78d
Requires:           logwatch
13b78d
13b78d
%description logwatch
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains logwatch scripts for Bacula Director.
13b78d
13b78d
%package storage
13b78d
Summary:            Bacula storage daemon files
13b78d
Requires:           bacula-common%{?_isa} = %{version}-%{release}
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires:           bacula-libs-sql%{?_isa} = %{version}-%{release}
13b78d
Requires:           mt-st
13b78d
Requires:           mtx
13b78d
# Storage backends merged into core.
13b78d
Provides:           bacula-storage-common = %{version}-%{release}
13b78d
Obsoletes:          bacula-storage-common < 5.2.2-2
13b78d
Provides:           bacula-storage-mysql = %{version}-%{release}
13b78d
Obsoletes:          bacula-storage-mysql < 5.2.0
13b78d
Provides:           bacula-storage-sqlite = %{version}-%{release}
13b78d
Obsoletes:          bacula-storage-sqlite < 5.2.0
13b78d
Provides:           bacula-storage-postgresql = %{version}-%{release}
13b78d
Obsoletes:          bacula-storage-postgresql < 5.2.0
13b78d
13b78d
Requires(post):     systemd
13b78d
Requires(preun):    systemd
13b78d
Requires(postun):   systemd
13b78d
13b78d
%description storage
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the storage daemon, the daemon responsible for writing
13b78d
the data received from the clients onto tape drives or other mass storage
13b78d
devices.
13b78d
13b78d
%package client
13b78d
Summary:            Bacula backup client
13b78d
Requires:           bacula-common%{?_isa} = %{version}-%{release}
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
13b78d
Requires(post):     systemd
13b78d
Requires(preun):    systemd
13b78d
Requires(postun):   systemd
13b78d
13b78d
%description client
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the bacula client, the daemon running on the system to be
13b78d
backed up.
13b78d
13b78d
%package console
13b78d
Summary:            Bacula management console
13b78d
Obsoletes:          bacula-console-wxwidgets <= 5.0.3
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
13b78d
%description console
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the command-line management console for the bacula backup
13b78d
system.
13b78d
13b78d
%package console-bat
13b78d
Summary:            Bacula bat console
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires:           dejavu-lgc-sans-fonts
13b78d
13b78d
%description console-bat
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the bat version of the bacula management console.
13b78d
13b78d
%package traymonitor
13b78d
Summary:            Bacula system tray monitor
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires:           dejavu-lgc-sans-fonts
13b78d
13b78d
%description traymonitor
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This package contains the Gnome and KDE compatible tray monitor to monitor your
13b78d
bacula server.
13b78d
13b78d
%package devel
13b78d
Summary:            Bacula development files
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires:           bacula-libs-sql%{?_isa} = %{version}-%{release}
13b78d
13b78d
%description devel
13b78d
Bacula is a set of programs that allow you to manage the backup, recovery, and
13b78d
verification of computer data across a network of different computers. It is
13b78d
based on a client/server architecture.
13b78d
13b78d
This development package contains static libraries and header files.
13b78d
13b78d
%package -n nagios-plugins-bacula
13b78d
Summary:            Nagios Plugin - check_bacula
13b78d
Requires:           bacula-libs%{?_isa} = %{version}-%{release}
13b78d
Requires:           nagios-common%{?_isa}
13b78d
13b78d
%description -n nagios-plugins-bacula
13b78d
Provides check_bacula support for Nagios.
13b78d
13b78d
%prep
13b78d
%autosetup -p1
13b78d
13b78d
cp %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} .
13b78d
13b78d
# Regenerate configure
13b78d
pushd autoconf
13b78d
sed -i -r 's/(hardcode_into_libs)=.*$/\1=no/' libtool/libtool.m4
13b78d
aclocal -I bacula-macros/ -I gettext-macros/ -I libtool/
13b78d
popd
13b78d
autoconf -I autoconf/ -o configure autoconf/configure.in
13b78d
13b78d
# Remove execution permissions from files we're packaging as docs later on
13b78d
find updatedb -type f | xargs chmod -x
13b78d
13b78d
%build
13b78d
export CFLAGS="%{optflags} -I%{_includedir}/ncurses"
13b78d
export CPPFLAGS="%{optflags} -I%{_includedir}/ncurses"
13b78d
export PATH="$PATH:%{_qt5_bindir}"
13b78d
13b78d
%configure \
13b78d
    --disable-conio \
13b78d
    --disable-rpath \
13b78d
    --disable-s3 \
13b78d
    --docdir=%{_datadir}/bacula \
13b78d
    --enable-bat \
13b78d
    --enable-batch-insert \
13b78d
    --enable-build-dird \
13b78d
    --enable-build-stored \
13b78d
    --enable-includes \
13b78d
    --enable-largefile \
13b78d
    --enable-readline \
13b78d
    --enable-smartalloc \
13b78d
    --sysconfdir=%{_sysconfdir}/bacula \
13b78d
    --with-basename=bacula \
13b78d
    --with-bsrdir=%{_localstatedir}/spool/bacula \
13b78d
    --with-dir-password=@@DIR_PASSWORD@@ \
13b78d
    --with-fd-password=@@FD_PASSWORD@@ \
13b78d
    --with-hostname=localhost \
13b78d
    --with-logdir=%{_localstatedir}/log/bacula \
13b78d
    --with-mon-dir-password=@@MON_DIR_PASSWORD@@ \
13b78d
    --with-mon-fd-password=@@MON_FD_PASSWORD@@ \
13b78d
    --with-mon-sd-password=@@MON_SD_PASSWORD@@ \
13b78d
    --with-mysql \
13b78d
    --with-openssl \
13b78d
    --with-pid-dir=%{_localstatedir}/run \
13b78d
    --with-plugindir=%{_libdir}/%{name} \
13b78d
    --with-postgresql \
13b78d
    --with-scriptdir=%{_libexecdir}/bacula \
13b78d
    --with-sd-password=@@SD_PASSWORD@@ \
13b78d
    --with-smtp-host=localhost \
13b78d
    --with-sqlite3 \
13b78d
    --with-subsys-dir=%{_localstatedir}/lock/subsys \
13b78d
%if 0%{!?fedora} || 0%{!?rhel} > 7
13b78d
    --with-tcp-wrappers \
13b78d
%endif
13b78d
    --with-working-dir=%{_localstatedir}/spool/bacula \
13b78d
    --with-x
13b78d
13b78d
# Remove RPATH
13b78d
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
13b78d
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
13b78d
13b78d
%make_build
13b78d
%make_build -C src/tools/cdp-client
13b78d
%make_build -C examples/nagios/check_bacula
13b78d
13b78d
pushd src/qt-console/tray-monitor
13b78d
    %{?qmake_qt5}%{!?qmake_qt5:qmake-qt5} tray-monitor.pro
13b78d
    %make_build
13b78d
popd
13b78d
13b78d
# Convert image to png for tray monitor icon
13b78d
%install
13b78d
%make_install
13b78d
%make_install -C src/tools/cdp-client
13b78d
%make_install -C examples/nagios/check_bacula
13b78d
13b78d
# This will be managed through alternatives, as it requires the name to NOT
13b78d
# change between upgrades, so the versioned library name can not be used.
13b78d
rm -f %{buildroot}%{_libdir}/libbaccats.so
13b78d
13b78d
# Bat
13b78d
install -p -m 644 -D src/qt-console/images/bat_icon.png %{buildroot}%{_datadir}/pixmaps/bat_icon.png
13b78d
install -p -m 644 -D scripts/bat.desktop %{buildroot}%{_datadir}/applications/bat.desktop
13b78d
install -p -m 755 -D src/qt-console/.libs/bat %{buildroot}%{_sbindir}/bat
13b78d
13b78d
install -p -m 644 -D manpages/bacula-tray-monitor.1 %{buildroot}%{_mandir}/man1/bacula-tray-monitor.1
13b78d
install -p -m 644 -D %{SOURCE19} %{buildroot}%{_datadir}/pixmaps/bacula-tray-monitor.png
13b78d
install -p -m 644 -D scripts/bacula-tray-monitor.desktop %{buildroot}%{_datadir}/applications/bacula-tray-monitor.desktop
13b78d
13b78d
# Logrotate
13b78d
mkdir -p %{buildroot}%{_localstatedir}/log/bacula
13b78d
install -p -m 644 -D %{SOURCE6} %{buildroot}%{_sysconfdir}/logrotate.d/bacula
13b78d
13b78d
# Logwatch
13b78d
install -p -m 755 -D scripts/logwatch/bacula %{buildroot}%{_sysconfdir}/logwatch/scripts/services/bacula
13b78d
install -p -m 755 -D scripts/logwatch/applybaculadate %{buildroot}%{_sysconfdir}/logwatch/scripts/shared/applybaculadate
13b78d
install -p -m 644 -D scripts/logwatch/logfile.bacula.conf %{buildroot}%{_sysconfdir}/logwatch/conf/logfiles/bacula.conf
13b78d
install -p -m 644 -D scripts/logwatch/services.bacula.conf %{buildroot}%{_sysconfdir}/logwatch/conf/services/bacula.conf
13b78d
13b78d
# Systemd unit files
13b78d
mkdir -p %{buildroot}%{_unitdir}
13b78d
install -p -m 644 -D %{SOURCE10} %{buildroot}%{_unitdir}/bacula-fd.service
13b78d
install -p -m 644 -D %{SOURCE11} %{buildroot}%{_unitdir}/bacula-dir.service
13b78d
install -p -m 644 -D %{SOURCE12} %{buildroot}%{_unitdir}/bacula-sd.service
13b78d
13b78d
# Sysconfig
13b78d
install -p -m 644 -D %{SOURCE15} %{buildroot}%{_sysconfdir}/sysconfig/bacula-fd
13b78d
install -p -m 644 -D %{SOURCE16} %{buildroot}%{_sysconfdir}/sysconfig/bacula-dir
13b78d
install -p -m 644 -D %{SOURCE17} %{buildroot}%{_sysconfdir}/sysconfig/bacula-sd
13b78d
13b78d
# Spool directory
13b78d
mkdir -p %{buildroot}%{_localstatedir}/spool/bacula
13b78d
13b78d
# Remove stuff we do not need
13b78d
rm -f %{buildroot}%{_libexecdir}/bacula/{bacula,bacula-ctl-*,startmysql,stopmysql,bconsole,make_catalog_backup}
13b78d
rm -f %{buildroot}%{_sbindir}/bacula
13b78d
rm -f %{buildroot}%{_mandir}/man8/bacula.8.gz
13b78d
rm -f %{buildroot}%{_libdir}/*.la
13b78d
rm -f %{buildroot}%{_datadir}/bacula/{ChangeLog,INSTALL,LICENSE*,README,ReleaseNotes,VERIFYING,technotes}
13b78d
13b78d
# Fix up some perms so rpmlint does not complain too much
13b78d
chmod 755 %{buildroot}%{_sbindir}/*
13b78d
chmod 755 %{buildroot}%{_libdir}/%{name}/*
13b78d
chmod 755 %{buildroot}%{_libexecdir}/bacula/*
13b78d
chmod 644 %{buildroot}%{_libexecdir}/bacula/btraceback.*
13b78d
13b78d
%ldconfig_scriptlets libs
13b78d
13b78d
%post libs-sql
13b78d
/usr/sbin/alternatives --install %{_libdir}/libbaccats.so libbaccats.so %{_libdir}/libbaccats-mysql.so 50
13b78d
/usr/sbin/alternatives --install %{_libdir}/libbaccats.so libbaccats.so %{_libdir}/libbaccats-sqlite3.so 40
13b78d
/usr/sbin/alternatives --install %{_libdir}/libbaccats.so libbaccats.so %{_libdir}/libbaccats-postgresql.so 60
13b78d
13b78d
# Fix for automatic selection of backends during upgrades
13b78d
if readlink /etc/alternatives/libbaccats.so | grep --silent mysql || \
13b78d
    readlink /etc/alternatives/bacula-dir | grep --silent mysql || \
13b78d
    readlink /etc/alternatives/bacula-sd | grep --silent mysql; then
13b78d
    /usr/sbin/alternatives --set libbaccats.so %{_libdir}/libbaccats-mysql.so
13b78d
elif readlink /etc/alternatives/libbaccats.so | grep --silent sqlite || \
13b78d
    readlink /etc/alternatives/bacula-dir | grep --silent sqlite || \
13b78d
    readlink /etc/alternatives/bacula-sd | grep --silent sqlite; then
13b78d
    /usr/sbin/alternatives --set libbaccats.so %{_libdir}/libbaccats-sqlite3.so
13b78d
else
13b78d
    /usr/sbin/alternatives --set libbaccats.so %{_libdir}/libbaccats-postgresql.so
13b78d
fi
13b78d
%{?ldconfig}
13b78d
13b78d
%preun libs-sql
13b78d
if [ "$1" = 0 ]; then
13b78d
    /usr/sbin/alternatives --remove libbaccats.so %{_libdir}/libbaccats-mysql.so
13b78d
    /usr/sbin/alternatives --remove libbaccats.so %{_libdir}/libbaccats-sqlite3.so
13b78d
    /usr/sbin/alternatives --remove libbaccats.so %{_libdir}/libbaccats-postgresql.so
13b78d
fi
13b78d
13b78d
%ldconfig_postun libs-sql
13b78d
13b78d
%pre common
13b78d
getent group %username >/dev/null || groupadd -g %uid -r %username &>/dev/null || :
13b78d
getent passwd %username >/dev/null || useradd -u %uid -r -s /sbin/nologin \
13b78d
    -d /var/spool/bacula -M -c 'Bacula Backup System' -g %username %username &>/dev/null || :
13b78d
exit 0
13b78d
13b78d
%post client
13b78d
%systemd_post %{name}-fd.service
13b78d
13b78d
%preun client
13b78d
%systemd_preun %{name}-fd.service
13b78d
13b78d
%postun client
13b78d
%systemd_postun_with_restart %{name}-fd.service
13b78d
13b78d
%post director
13b78d
%systemd_post %{name}-dir.service
13b78d
13b78d
%preun director
13b78d
%systemd_preun %{name}-dir.service
13b78d
13b78d
%postun director
13b78d
%systemd_postun_with_restart %{name}-dir.service
13b78d
13b78d
%post storage
13b78d
%systemd_post %{name}-sd.service
13b78d
13b78d
%preun storage
13b78d
%systemd_preun %{name}-sd.service
13b78d
13b78d
%postun storage
13b78d
%systemd_postun_with_restart %{name}-sd.service
13b78d
13b78d
%files libs
13b78d
%license LICENSE
13b78d
%doc AUTHORS ChangeLog SUPPORT ReleaseNotes LICENSE-FAQ LICENSE-FOSS
13b78d
%{_libdir}/libbac-%{version}.so
13b78d
%{_libdir}/libbaccfg-%{version}.so
13b78d
%{_libdir}/libbacfind-%{version}.so
13b78d
%{_libdir}/libbacsd-%{version}.so
13b78d
13b78d
%files libs-sql
13b78d
# On Fedora 28 this gets recreated automatically even if the library is
13b78d
# deleted in the install section.
13b78d
# On EPEL 6 this is required until RPM assembly time or an error is given due
13b78d
# to the missing library.
13b78d
# So: leave the library in place until the very end and just exclude it.
13b78d
%exclude %{_libdir}/libbaccats-%{version}.so
13b78d
%{_libdir}/libbaccats-mysql-%{version}.so
13b78d
%{_libdir}/libbaccats-mysql.so
13b78d
%{_libdir}/libbaccats-postgresql-%{version}.so
13b78d
%{_libdir}/libbaccats-postgresql.so
13b78d
%{_libdir}/libbaccats-sqlite3-%{version}.so
13b78d
%{_libdir}/libbaccats-sqlite3.so
13b78d
%{_libdir}/libbacsql-%{version}.so
13b78d
13b78d
%files common
13b78d
%doc README.Redhat quickstart_*
13b78d
%config(noreplace) %{_sysconfdir}/logrotate.d/bacula
13b78d
%dir %{_localstatedir}/log/bacula %attr(750, bacula, bacula)
13b78d
%dir %{_localstatedir}/spool/bacula %attr(750, bacula, bacula)
13b78d
%dir %{_libexecdir}/%{name}
13b78d
%dir %{_sysconfdir}/%{name} %attr(755,root,root)
13b78d
%{_libexecdir}/%{name}/btraceback.dbx
13b78d
%{_libexecdir}/%{name}/btraceback.gdb
13b78d
%{_libexecdir}/%{name}/bacula_config
13b78d
%{_libexecdir}/%{name}/btraceback.mdb
13b78d
%{_mandir}/man8/btraceback.8*
13b78d
%{_sbindir}/btraceback
13b78d
13b78d
%files director
13b78d
%doc updatedb examples/sample-query.sql
13b78d
%config(noreplace) %{_sysconfdir}/bacula/bacula-dir.conf %attr(640,root,bacula)
13b78d
%config(noreplace) %{_sysconfdir}/bacula/query.sql %attr(640,root,bacula)
13b78d
%config(noreplace) %{_sysconfdir}/sysconfig/bacula-dir
13b78d
%{_libexecdir}/%{name}/baculabackupreport
13b78d
%{_libexecdir}/%{name}/create_bacula_database
13b78d
%{_libexecdir}/%{name}/delete_catalog_backup
13b78d
%{_libexecdir}/%{name}/drop_bacula_database
13b78d
%{_libexecdir}/%{name}/drop_bacula_tables
13b78d
%{_libexecdir}/%{name}/grant_bacula_privileges
13b78d
%{_libexecdir}/%{name}/make_bacula_tables
13b78d
%{_libexecdir}/%{name}/make_catalog_backup.pl
13b78d
%{_libexecdir}/%{name}/update_bacula_tables
13b78d
%{_libexecdir}/%{name}/create_mysql_database
13b78d
%{_libexecdir}/%{name}/drop_mysql_database
13b78d
%{_libexecdir}/%{name}/drop_mysql_tables
13b78d
%{_libexecdir}/%{name}/grant_mysql_privileges
13b78d
%{_libexecdir}/%{name}/make_mysql_tables
13b78d
%{_libexecdir}/%{name}/update_mysql_tables
13b78d
%{_libexecdir}/%{name}/create_sqlite3_database
13b78d
%{_libexecdir}/%{name}/drop_sqlite3_database
13b78d
%{_libexecdir}/%{name}/drop_sqlite3_tables
13b78d
%{_libexecdir}/%{name}/grant_sqlite3_privileges
13b78d
%{_libexecdir}/%{name}/make_sqlite3_tables
13b78d
%{_libexecdir}/%{name}/update_sqlite3_tables
13b78d
%{_libexecdir}/%{name}/create_postgresql_database
13b78d
%{_libexecdir}/%{name}/drop_postgresql_database
13b78d
%{_libexecdir}/%{name}/drop_postgresql_tables
13b78d
%{_libexecdir}/%{name}/grant_postgresql_privileges
13b78d
%{_libexecdir}/%{name}/make_postgresql_tables
13b78d
%{_libexecdir}/%{name}/update_postgresql_tables
13b78d
%{_mandir}/man1/bsmtp.1*
13b78d
%{_mandir}/man8/bacula-dir.8*
13b78d
%{_mandir}/man8/bregex.8*
13b78d
%{_mandir}/man8/bwild.8*
13b78d
%{_mandir}/man8/dbcheck.8*
13b78d
%{_sbindir}/bacula-dir
13b78d
%{_sbindir}/bdirjson
13b78d
%{_sbindir}/bregex
13b78d
%{_sbindir}/bsmtp
13b78d
%{_sbindir}/bwild
13b78d
%{_sbindir}/dbcheck
13b78d
%{_unitdir}/bacula-dir.service
13b78d
13b78d
%files logwatch
13b78d
%config(noreplace) %{_sysconfdir}/logwatch/conf/logfiles/bacula.conf
13b78d
%config(noreplace) %{_sysconfdir}/logwatch/conf/services/bacula.conf
13b78d
%{_sysconfdir}/logwatch/scripts/services/bacula
13b78d
%{_sysconfdir}/logwatch/scripts/shared/applybaculadate
13b78d
13b78d
%files storage
13b78d
%config(noreplace) %{_sysconfdir}/bacula/bacula-sd.conf %attr(640,root,root)
13b78d
%config(noreplace) %{_sysconfdir}/sysconfig/bacula-sd
13b78d
%{_libexecdir}/%{name}/disk-changer
13b78d
%{_libexecdir}/%{name}/isworm
13b78d
%{_libexecdir}/%{name}/mtx-changer
13b78d
%{_libexecdir}/%{name}/mtx-changer.conf
13b78d
%{_libexecdir}/%{name}/tapealert
13b78d
%{_mandir}/man8/bacula-sd.8*
13b78d
%{_mandir}/man8/bcopy.8*
13b78d
%{_mandir}/man8/bextract.8*
13b78d
%{_mandir}/man8/bls.8*
13b78d
%{_mandir}/man8/bscan.8*
13b78d
%{_mandir}/man8/btape.8*
13b78d
%{_sbindir}/bacula-sd
13b78d
%{_sbindir}/bcopy
13b78d
%{_sbindir}/bextract
13b78d
%{_sbindir}/bls
13b78d
%{_sbindir}/bscan
13b78d
%{_sbindir}/bsdjson
13b78d
%{_sbindir}/btape
13b78d
%{_unitdir}/bacula-sd.service
13b78d
13b78d
%files client
13b78d
%config(noreplace) %{_sysconfdir}/bacula/bacula-fd.conf %attr(640,root,root)
13b78d
%config(noreplace) %{_sysconfdir}/sysconfig/bacula-fd
13b78d
%{_mandir}/man8/bacula-fd.8*
13b78d
%{_libdir}/%{name}/bpipe-fd.so
13b78d
%{_libdir}/%{name}/cdp-fd.so
13b78d
%{_libdir}/%{name}/docker-fd.so
13b78d
%{_sbindir}/bacula-fd
13b78d
%{_sbindir}/bfdjson
13b78d
%{_sbindir}/cdp-client
13b78d
%{_unitdir}/bacula-fd.service
13b78d
13b78d
%files console
13b78d
%config(noreplace) %{_sysconfdir}/bacula/bconsole.conf %attr(640,root,root)
13b78d
%{_mandir}/man8/bconsole.8*
13b78d
%{_sbindir}/bconsole
13b78d
%{_sbindir}/bbconsjson
13b78d
13b78d
%files console-bat
13b78d
%config(noreplace) %{_sysconfdir}/bacula/bat.conf %attr(640,root,root)
13b78d
%{_datadir}/applications/bat.desktop
13b78d
%{_datadir}/bacula/*.html
13b78d
%{_datadir}/bacula/*.png
13b78d
%{_datadir}/pixmaps/bat_icon.png
13b78d
%{_mandir}/man1/bat.1*
13b78d
%{_sbindir}/bat
13b78d
13b78d
%files traymonitor
13b78d
%config(noreplace) %{_sysconfdir}/bacula/bacula-tray-monitor.conf %attr(640,root,root)
13b78d
%{_datadir}/applications/bacula-tray-monitor.desktop
13b78d
%{_datadir}/pixmaps/bacula-tray-monitor.png
13b78d
%{_mandir}/man1/bacula-tray-monitor.1*
13b78d
%{_sbindir}/bacula-tray-monitor
13b78d
13b78d
%files devel
13b78d
%{_includedir}/bacula
13b78d
%{_libdir}/libbac.so
13b78d
%{_libdir}/libbaccfg.so
13b78d
%{_libdir}/libbacfind.so
13b78d
%{_libdir}/libbacsd.so
13b78d
%{_libdir}/libbacsql.so
13b78d
13b78d
%files -n nagios-plugins-bacula
13b78d
%{_libdir}/nagios/plugins/check_bacula
13b78d
13b78d
%changelog
13b78d
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.1-4
13b78d
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
13b78d
  Related: rhbz#1991688
13b78d
13b78d
* Wed Jun 16 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.1-3
13b78d
- Rebuilt for RHEL 9 BETA for openssl 3.0
13b78d
  Related: rhbz#1971065
13b78d
13b78d
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 11.0.1-2
13b78d
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
13b78d
13b78d
* Thu Feb 11 2021 Simone Caronni <negativo17@gmail.com> - 11.0.1-1
13b78d
- Update to 11.0.1.
13b78d
13b78d
* Mon Feb 08 2021 Pavel Raiskup <praiskup@redhat.com> - 11.0.0-5
13b78d
- rebuild for libpq ABI fix rhbz#1908268
13b78d
13b78d
* Thu Jan 28 2021 Simone Caronni <negativo17@gmail.com> - 11.0.0-4
13b78d
- Remove leftover ImageMagick build requirement.
13b78d
13b78d
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11.0.0-3
13b78d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
13b78d
13b78d
* Fri Jan 15 2021 Simone Caronni <negativo17@gmail.com> - 11.0.0-2
13b78d
- Build CDP plugin components.
13b78d
13b78d
* Tue Jan 12 2021 Simone Caronni <negativo17@gmail.com> - 11.0.0-1
13b78d
- Update to 11.0.0.
13b78d
- Enable Docker plugin.
13b78d
13b78d
* Tue Jan 12 2021 Simone Caronni <negativo17@gmail.com> - 9.6.7-1
13b78d
- Update to 9.6.7.
13b78d
- Drop support for building on CentOS/RHEL 6 and upgrades from version 2.4.
13b78d
- Trim changelog.
13b78d
13b78d
* Wed Oct 07 2020 Simone Caronni <negativo17@gmail.com> - 9.6.6-1
13b78d
- Update to 9.6.6.
13b78d
13b78d
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.6.5-2
13b78d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
13b78d
13b78d
* Fri Jul 24 2020 Simone Caronni <negativo17@gmail.com> - 9.6.5-1
13b78d
- Update to 9.6.5.
13b78d
13b78d
* Tue Mar 17 2020 Simone Caronni <negativo17@gmail.com> - 9.6.3-1
13b78d
- Update to 9.6.3.
13b78d
13b78d
* Thu Mar 05 2020 Simone Caronni <negativo17@gmail.com> - 9.6.2-2
13b78d
- Fix RHEL/CentOS 6 builds.
13b78d
13b78d
* Sat Feb 29 2020 Simone Caronni <negativo17@gmail.com> - 9.6.2-1
13b78d
- Update to 9.6.2.
13b78d
13b78d
* Mon Feb 10 2020 Václav Doležal <vdolezal@redhat.com> - 9.4.4-4
13b78d
- Fix FTBFS (#1799185)
13b78d
13b78d
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 9.4.4-3
13b78d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
13b78d
13b78d
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9.4.4-2
13b78d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
13b78d
13b78d
* Wed May 29 2019 Simone Caronni <negativo17@gmail.com> - 9.4.4-1
13b78d
- Update to 9.4.4.
13b78d
13b78d
* Sat May 18 2019 Simone Caronni <negativo17@gmail.com> - 9.4.3-2
13b78d
- SPEC file cleanups.
13b78d
13b78d
* Wed May 15 2019 Simone Caronni <negativo17@gmail.com> - 9.4.3-1
13b78d
- Update to 9.4.3.
13b78d
13b78d
* Thu Apr 18 2019 Simone Caronni <negativo17@gmail.com> - 9.4.2-1
13b78d
- Update to 9.4.2.
13b78d
13b78d
* Sun Feb 17 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 9.4.1-6
13b78d
- Rebuild for readline 8.0
13b78d
13b78d
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 9.4.1-5
13b78d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
13b78d
13b78d
* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 9.4.1-4
13b78d
- Rebuilt for libcrypt.so.2 (#1666033)
13b78d
13b78d
* Sun Jan 13 2019 Simone Caronni <negativo17@gmail.com> - 9.4.1-3
13b78d
- Build QT programs with QT 5 on RHEL/CentOS 7. Also, reduce the number of
13b78d
  required QT packages for building.
13b78d
13b78d
* Sun Jan 13 2019 Simone Caronni <negativo17@gmail.com> - 9.4.1-2
13b78d
- Add Debian patch to enable/disable S3 support at configure time.
13b78d
- Disable S3 as it does not currently build:
13b78d
  http://bugs.bacula.org/view.php?id=2446
13b78d
- Update RPM macros.
13b78d
13b78d
* Sat Jan 12 2019 Simone Caronni <negativo17@gmail.com> - 9.4.1-1
13b78d
- Update to 9.4.1.
13b78d
13b78d
* Sat Jan 12 2019 Simone Caronni <negativo17@gmail.com> - 9.4.0-1
13b78d
- Update to 9.4.0.
13b78d
13b78d
* Sat Jan 12 2019 Simone Caronni <negativo17@gmail.com> - 9.2.1-2
13b78d
- Make the build succeed also on supported RHEL and Fedora releases.
13b78d
- Remove Fedora 27 references.