## START: Set by rpmautospec ## (rpmautospec version 0.8.5) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 6; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec # libs3 %global commit 66885387c9f761253988321de9c4bbfc1660717d %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global uid 133 # GCC 8 does not know about -Wattribute-warning %if 0%{?rhel} == 8 %global warning_flags %{nil} %else %global warning_flags -Wno-error=attribute-warning %endif %global username bacula Name: bacula Version: 17.0.0 Release: %autorelease Summary: Cross platform network backup for Linux, Unix, Mac and Windows # See LICENSE for details # See https://gitlab.com/fedora/legal/fedora-license-data/-/issues/277 License: LicenseRef-Bacula URL: http://www.bacula.org # AGPL-3.0-only with exceptions Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz Source2: quickstart_postgresql.txt Source3: quickstart_mysql.txt Source4: quickstart_sqlite3.txt Source5: README.md Source6: %{name}.logrotate # Firewalld cumulative (bacula.xml) and fd (bacula-client.xml) services are in firewalld: Source7: %{name}-storage.xml Source8: %{name}-director.xml Source10: %{name}-fd.service Source11: %{name}-dir.service Source12: %{name}-sd.service Source15: %{name}-fd.sysconfig Source16: %{name}-dir.sysconfig Source17: %{name}-sd.sysconfig Source19: https://salsa.debian.org/bacula-team/bacula/-/raw/master/debian/additions/bacula-tray-monitor.png#/bacula-tray-monitor.png # LGPL-3.0-only - S3 libs with AWS glacier support # https://gitlab.bacula.org/bacula-community-edition/libs3/-/commits/master?ref_type=heads Source20: https://gitlab.bacula.org/bacula-community-edition/libs3/-/archive/%{commit}/libs3-%{shortcommit}.tar.bz2 Source21: libs3-openssl.patch Patch1: %{name}-openssl.patch Patch2: %{name}-seg-fault.patch Patch3: %{name}-non-free-code.patch Patch4: %{name}-traceback-man.patch Patch5: %{name}-compile-options.patch Patch6: %{name}-install.patch Patch8: %{name}-docker-plugin.patch # Original patch removed by mistake, upstream is not willing to add it again: # http://www.bacula.org/git/cgit.cgi/bacula/commit/?h=Branch-7.0&id=51b3b98fb77ab3c0decee455cc6c4d2eb3c5303a # Without this, there is no library providing the correct shared object name # required by the daemons. # http://bugs.bacula.org/view.php?id=2084 Patch9: %{name}-autoconf.patch Patch10: %{name}-scripts.patch # [PATCH] OpenSSL 4.0 compatibility - based on Debian / Ubuntu patches from: # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/issues/2771 Patch11: %{name}-openssl4.patch # Fixes from Branch-17.0 after the 17.0.0 release: # Generate the 1026 to 1027 PostgreSQL and MySQL catalog update scripts # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/commit/006758c341592099d21626f6e412e44ce090870f Patch12: %{name}-update-tables-1027.patch # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/commit/dc1c47f26661f680368fc558ef942ea4af170e0c Patch13: %{name}-sqlite3-update-typo.patch # Fix SQLite3 catalog update from 1026 to 1027 # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/commit/3b9b67d1289a67db7b8a53e266850575a9004ba7 Patch14: %{name}-sqlite3-update-1027.patch # Fix cloud storage drivers not loading # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/commit/e96a38c018e129ec212f8ef80abe84eaf2b04521 Patch15: %{name}-cloud-driver-loading.patch # Fix Nagios plugin build # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/commit/dc229047c6462016454c0837318747b240b38fa5 Patch16: %{name}-nagios-compilation.patch # Compatibility with Docker CLI 29+ # https://gitlab.bacula.org/bacula-community-edition/bacula-community/-/commit/3f114ff206358ce52a784890e83b1756413e2ea7 Patch17: %{name}-docker-cli-29.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: desktop-file-utils BuildRequires: firewalld-filesystem BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: glibc-devel BuildRequires: libacl-devel BuildRequires: libcurl-devel BuildRequires: libstdc++-devel BuildRequires: libxml2-devel BuildRequires: libcap-devel BuildRequires: libpq-devel BuildRequires: libxcrypt-devel BuildRequires: libzstd-devel BuildRequires: lzo-devel BuildRequires: make BuildRequires: mariadb-connector-c-devel BuildRequires: ncurses-devel BuildRequires: openldap-devel BuildRequires: openssl-devel BuildRequires: perl-generators BuildRequires: perl-interpreter BuildRequires: qt5-qtbase-devel BuildRequires: readline-devel BuildRequires: sed BuildRequires: sqlite-devel BuildRequires: systemd BuildRequires: zlib-devel Requires(post): firewalld-filesystem %description Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture and is efficient and relatively easy to use, while offering many advanced storage management features that make it easy to find and recover lost or damaged files. %package libs Summary: Bacula libraries %description libs Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains basic Bacula libraries, which are used by all Bacula programs. %package libs-sql Summary: Bacula SQL libraries %description libs-sql Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the SQL Bacula libraries, which are used by Director and Storage daemons. You have to select your preferred catalog library through the alternatives system. %package common Summary: Common Bacula files Provides: group(%username) = %uid Provides: user(%username) = %uid Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires(postun): shadow-utils %description common Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains files common to all Bacula daemons. %package director Summary: Bacula Director files Requires: bacula-common%{?_isa} = %{version}-%{release} Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires: bacula-libs-sql%{?_isa} = %{version}-%{release} Requires(post): systemd Requires(preun): systemd Requires(postun): systemd # For generating the QR code for TOTP authentication on console and director: Recommends: qrencode %description director Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the director files. %package logwatch Summary: Bacula Director logwatch scripts BuildArch: noarch Requires: bacula-director = %{version}-%{release} Requires: logwatch %description logwatch Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains logwatch scripts for Bacula Director. %package storage Summary: Bacula storage daemon files Requires: bacula-common%{?_isa} = %{version}-%{release} Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires: bacula-libs-sql%{?_isa} = %{version}-%{release} Requires: mt-st Requires: mtx Requires: sdparm Provides: bundled(libs3) = 4.1.bac # Only required for protecting the volume encryption keys with a GnuPG master # key (install-key-manager.sh): Recommends: gnupg2 Recommends: python3-gnupg Requires(post): systemd Requires(preun): systemd Requires(postun): systemd %description storage Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the storage daemon, the daemon responsible for writing the data received from the clients onto tape drives or other mass storage devices. %package client Summary: Bacula backup client Requires: bacula-common%{?_isa} = %{version}-%{release} Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires(post): systemd Requires(preun): systemd Requires(postun): systemd %description client Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the bacula client, the daemon running on the system to be backed up. %package console Summary: Bacula management console Obsoletes: bacula-console-wxwidgets <= 5.0.3 Requires: bacula-libs%{?_isa} = %{version}-%{release} %description console Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the command-line management console for the bacula backup system. %package console-bat Summary: Bacula bat console Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires: dejavu-lgc-sans-fonts %description console-bat Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the bat version of the bacula management console. %package traymonitor Summary: Bacula system tray monitor Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires: dejavu-lgc-sans-fonts %description traymonitor Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This package contains the Gnome and KDE compatible tray monitor to monitor your bacula server. %package devel Summary: Bacula development files Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires: bacula-libs-sql%{?_isa} = %{version}-%{release} %description devel Bacula is a set of programs that allow you to manage the backup, recovery, and verification of computer data across a network of different computers. It is based on a client/server architecture. This development package contains static libraries and header files. %package -n nagios-plugins-bacula Summary: Nagios Plugin - check_bacula Requires: bacula-libs%{?_isa} = %{version}-%{release} Requires: nagios-common%{?_isa} %description -n nagios-plugins-bacula Provides check_bacula support for Nagios. %prep %autosetup -a20 -p1 cp %{SOURCE2} %{SOURCE3} %{SOURCE4} %{SOURCE5} . # Regenerate configure pushd autoconf aclocal -I bacula-macros/ -I gettext-macros/ -I libtool/ popd autoconf -I autoconf/ -o configure autoconf/configure.in # Remove execution permissions from files we're packaging as docs later on find updatedb -type f | xargs chmod -x # Create a sysusers.d config file cat >bacula.sysusers.conf < - 17.0.0-6 - Fix director file ownership * Sun Nov 08 2026 Simone Caronni - 17.0.0-5 - Update documentation * Sun Nov 08 2026 Simone Caronni - 17.0.0-4 - Make it build on el8/el9 * Sun Nov 08 2026 Simone Caronni - 17.0.0-3 - Update comments in /etc/sysconfig files * Sun Nov 08 2026 Simone Caronni - 17.0.0-2 - Reduce patching * Sun Nov 08 2026 Simone Caronni - 17.0.0-1 - Update to 17.0.0 with backported patches * Mon Aug 03 2026 Filipe Rosset - 15.0.3-8 - Fixes bacula build against Openssl4+ * Wed Jul 15 2026 Fedora Release Engineering - 15.0.3-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild * Fri Jun 12 2026 Yaakov Selkowitz - 15.0.3-6 - Rebuilt for openssl 4.0 * Fri Jan 16 2026 Fedora Release Engineering - 15.0.3-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild * Fri Jan 16 2026 Fedora Release Engineering - 15.0.3-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild * Wed Jul 23 2025 Fedora Release Engineering - 15.0.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild * Thu Jun 26 2025 Simone Caronni - 15.0.3-2 - Adjust compiler flags * Wed Jun 25 2025 Simone Caronni - 15.0.3-1 - Update version * Wed Jun 25 2025 Simone Caronni - 15.0.2-14 - Update README.md * Wed Jun 25 2025 Simone Caronni - 15.0.2-13 - Clean .gitignore ## END: Generated by rpmautospec