Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37552401
en ru br
Репозитории ALT
5.1: 3.0.3-alt1
4.1: 2.4.3-alt3.M41.1
4.0: 2.4.3-alt3.M40.1
www.altlinux.org/Changes

Другие репозитории
Upstream:2.2.8

Группа :: Архивирование/Резервное копирование
Пакет: bacula

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%def_enable bat
%def_enable bwx
# disable gconsole - need fix linking
%def_disable gconsole
%def_disable readline
%def_disable debug

Name: bacula
Version: 2.4.3
Release: alt3.M41.1

License: GPL
Summary: Network based backup program
Group: Archiving/Backup
Url: http://www.bacula.org/
Packager: Vitaly Kuznetsov <vitty at altlinux.ru>
Source0: bacula-%version.tar.bz2

Source1: bacula-dir.init
Source2: bacula-fd.init
Source3: bacula-sd.init

Source5: bacula-wxconsole.pam
Source6: bacula-gnome-console.pam
Source7: bacula-bat.pam

Source8: bacula-configs-default-%version.tar.bz2

Patch1: bacula-2.2.1-link.patch
Patch2: bacula-2.2.1-libmysql-x86_64.patch
Patch3: bacula-2.2.4-bat.patch
Patch4: bacula-2.4.3-gcc43-alt.patch

Patch5: 2.4.3-cancel-after-network-outage.patch
Patch6: 2.4.3-update-slots.patch
Patch7: 2.4.3-orphaned-jobs.patch

BuildRequires: gcc-c++ groff-base libMySQL-devel libssl-devel libncurses-devel
BuildRequires: openssl libacl-devel libcap-devel python-devel zlib-devel

# storage buildrequires

BuildRequires: dvd+rw-tools

%if_enabled bwx
# console-wx buildrequires
BuildRequires: imake libICE-devel libX11-devel wxGTK-devel xorg-cf-files
%endif

%if_enabled bat
# bat buildrequires
BuildRequires: imake libICE-devel libX11-devel libqt4-devel libqwt-devel xorg-cf-files
%endif

Provides: bacula-updatedb = %version-%release
Obsoletes: bacula-updatedb < %version-%release
Requires: bacula-common = %version-%release
Requires: bacula-client = %version-%release
Requires: bacula-storage = %version-%release
Requires: bacula-console = %version-%release
Requires: bacula-director = %version-%release
Requires: bacula-debug = %version-%release

%package client
Summary: Network based backup program (client only)
Group: Archiving/Backup
Provides: bacula-fd = %version-%release
Requires: bacula-common = %version-%release

%package storage
Summary: Network based backup program (storage only)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%package console
Summary: Network based backup program (console only)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%package console-wx
Summary: Network based backup program (wxWidgets console only)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%package console-gnome
Summary: Network based backup program (Gnome console only)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%package bat
Summary: Network based backup program (QT4 Bacula Administration Tool)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%package director
Summary: Network based backup program (director only)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%package common
Summary: Network based backup program (common files)
Group: Archiving/Backup

%package debug
Summary: Network based backup program (debug files)
Group: Archiving/Backup
Requires: bacula-common = %version-%release

%description
Bacula is a set of computer programs that permits the system administrator to
manage backup, recovery, and verification of computer data across a network of
computers of different kinds.
Bacula can also run entirely upon a single computer and can backup to various
types of media, including tape and disk. In technical terms, it is a network
Client/Server based backup program. Bacula is relatively easy to use and
efficient, while offering many advanced storage management features that make
it easy to find and recover lost or damaged files. Due to its modular design,
Bacula is scalable from small single computer systems to systems consisting of
hundreds of computers located over a large network.

This package contains bacula director.

%description client
Client-only package (FD) for bacula.

%description storage
Storage-only package (SD) for bacula.

%description director
Director-only package for bacula.

%description console
Console-only package for bacula.

%description console-wx
WXWindows Console-only package for bacula.

%description console-gnome
Gnome Console-only package for bacula. Plus tray icon.

%description bat
Bacula Administration Tool package.

%description common
Common files for bacula parts.

%description debug
Debug files for bacula.

%prep
%setup -b 0
%setup -b 8

%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p2

%patch5 -p0
%patch6 -p0
%patch7 -p0

%__subst 's|qmake|qmake-qt4|g' autoconf/configure.in
%__subst 's|-lreadline -lhistory -ltermcap|-lreadline -lhistory|g' autoconf/configure.in

export MTX=%_sbindir/mtx

pushd autoconf
autoconf
popd
cp -f autoconf/configure .
./configure \
--with-mysql \
--with-openssl \
--with-python \
--disable-rpath \
--mandir=%_mandir \
--with-working-dir=%_localstatedir/bacula \
--with-scriptdir=%_datadir/%name/scripts \
--with-pid-dir=%_var/run/bacula \
--exec-prefix=%_usr \
%if_enabled bwx
--enable-bwx-console \
%endif
%if_enabled gconsole
--enable-gnome \
--enable-tray-monitor \
%endif
%if_enabled readline
--with-readline \
--disable-conio \
%endif
       %{subst_enable bat} \
--with-dir-user=bacula \
--with-dir-group=bacula \
--with-sd-user=bacula \
--with-sd-group=bacula
     
%build
%make_build

%install
%make_install DESTDIR="%buildroot" install

#mkdir -p %buildroot%_sysconfdir/bacula

#mv %buildroot%_sysconfdir/*.conf %buildroot%_sysconfdir/bacula/

mkdir -p %buildroot%_initdir
install -pm 755 %SOURCE1 %buildroot%_initdir/bacula-dir
install -pm 755 %SOURCE2 %buildroot%_initdir/bacula-fd
install -pm 755 %SOURCE3 %buildroot%_initdir/bacula-sd

mkdir -p %buildroot%_sysconfdir/logrotate.d/
install -pm 644 scripts/logrotate %buildroot%_sysconfdir/logrotate.d/%name

rm -f %buildroot%_datadir/%name/scripts/gconsole
touch %buildroot%_datadir/%name/scripts/create_postgresql_database
touch %buildroot%_datadir/%name/scripts/drop_postgresql_database
touch %buildroot%_datadir/%name/scripts/drop_postgresql_tables
touch %buildroot%_datadir/%name/scripts/grant_postgresql_privileges
touch %buildroot%_datadir/%name/scripts/make_postgresql_tables
touch %buildroot%_datadir/%name/scripts/update_postgresql_tables

mkdir -p %buildroot/var/run/%name
#sed -i 's|/var/run|/var/run/%name|' %buildroot%_sysconfdir/%name/*.conf


# usermode


mkdir -p %buildroot%_datadir/{pixmaps,applications}
mkdir -p %buildroot%_sysconfdir/{security/console.apps,pam.d}
install -d -m755 %buildroot%_bindir

%if_enabled bwx
install -pD -m644 src/wx-console/wxwin16x16.xpm %buildroot%_datadir/pixmaps/wxwin16x16.xpm
install -pD -m644 scripts/wxconsole.desktop.consolehelper %buildroot%_datadir/applications/wxconsole.desktop
install -pD -m640 scripts/wxconsole.console_apps %buildroot%_sysconfdir/security/console.apps/bwx-console
install -pD -m640 %SOURCE5 %buildroot%_sysconfdir/pam.d/bwx-console
ln -s %_bindir/consolehelper %buildroot%_bindir/bwx-console
%endif

%if_enabled gconsole
install -pD -m644 scripts/bacula.png %buildroot%_datadir/%_datadir/pixmaps/bacula.png
install -pD -m644 scripts/bacula.desktop.gnome2.consolehelper %buildroot%_datadir/applications/bacula.desktop
install -pD -m640 scripts/bgnome-console.console_apps %buildroot%_sysconfdir/security/console.apps/bgnome-console
install -pD -m640 %SOURCE6 %buildroot%_sysconfdir/pam.d/bgnome-console
install -pD -m644 src/tray-monitor/generic.xpm %buildroot%_datadir/pixmaps/bacula-tray-monitor.xpm
mv %buildroot%_sbindir/bacula-tray-monitor %buildroot%_bindir
%__subst 's|%_sbindir|%_bindir|' scripts/bacula-tray-monitor.desktop
install -pD -m644 scripts/bacula-tray-monitor.desktop %buildroot%_datadir/applications/bacula-tray-monitor.desktop
ln -s %_bindir/consolehelper %buildroot%_bindir/bgnome-console
%endif

%if_enabled bat
install -pD -m755 src/qt-console/bat %buildroot%_sbindir/bat
install -pD -m644 src/qt-console/images/bat_icon.png %buildroot%_datadir/pixmaps/bat_icon.png
install -pD -m644 scripts/bat.desktop.consolehelper %buildroot%_datadir/applications/bat.desktop
install -pD -m640 scripts/bat.console_apps %buildroot%_sysconfdir/security/console.apps/bat
install -pD -m640 %SOURCE7 %buildroot%_sysconfdir/pam.d/bat
ln -sf %_bindir/consolehelper %buildroot%_bindir/bat
%endif

cp -ar ../%name-configs-default-%version/* %buildroot%_sysconfdir/%name/

install -pD -m755 %buildroot%_datadir/%name/scripts/mtx-changer %buildroot%_sbindir
install -pD -m755 %buildroot%_datadir/%name/scripts/disk-changer %buildroot%_sbindir
install -pD -m755 %buildroot%_datadir/%name/scripts/dvd-handler %buildroot%_sbindir
chmod 755 %buildroot%_sbindir/*

%if_enabled bwx

%postun console-wx
%clean_menus

%post console-wx
%update_menus

%endif

%if_enabled bat

%post bat
%update_menus

%postun bat
%clean_menus


%endif

%pre common
%_sbindir/groupadd -r -f bacula &>/dev/null
%_sbindir/useradd -r -n -g bacula -d /var/empty -s /bin/false -c "Bacula pseudo user" bacula >/dev/null 2>&1 ||:
%_sbindir/usermod -d /var/empty -s /bin/false bacula >/dev/null 2>&1

%post client
%post_service bacula-fd

%post storage
%post_service bacula-sd

%post director
%post_service bacula-dir

%preun director
%preun_service bacula-dir

%preun client
%preun_service bacula-fd

%preun storage
%preun_service bacula-sd

%files common
%attr (0770,root,bacula) %_localstatedir/bacula
%attr (0775,root,bacula) %dir %_var/run/bacula
%attr (0750,root,bacula) %dir %_sysconfdir/bacula
%dir %_datadir/bacula
%dir %_datadir/bacula/scripts
%_man8dir/bacula.8.gz
%_sysconfdir/logrotate.d/%name
%_sbindir/bsmtp
%_man1dir/bsmtp.1.gz

%files console
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bconsole.conf
%_sbindir/bconsole
%_man8dir/bconsole.8.gz

%if_enabled bwx
%files console-wx
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bwx-console.conf
%config(noreplace) %_sysconfdir/security/console.apps/bwx-console
%config(noreplace) %_sysconfdir/pam.d/bwx-console
%_sbindir/bwx-console
%_bindir/bwx-console
%_man1dir/bacula-bwxconsole.1.gz
%_datadir/pixmaps/wxwin16x16.xpm
%_datadir/applications/wxconsole.desktop
%endif

%if_enabled gconsole
%files console-gnome
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bgnome-console.conf
%config(noreplace) %_sysconfdir/security/console.apps/bgnome-console
%config(noreplace) %_sysconfdir/pam.d/bgnome-console
%_sbindir/bgnome-console
%_bindir/bgnome-console
%_man1dir/bacula-bgnome-console.1.gz
%_datadir/pixmaps/bacula.png
%_datadir/applications/bacula.desktop

%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bgnome-console.conf
%_bindir/bacula-tray-monitor
%_man1dir/bacula-tray-monitor.1.gz
%_datadir/pixmaps/bacula-tray-monitor.xpm
%_datadir/applications/bacula-tray-monitor.desktop
%endif

%if_enabled bat
%files bat
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bat.conf
%config(noreplace) %_sysconfdir/security/console.apps/bat
%config(noreplace) %_sysconfdir/pam.d/bat
%_bindir/bat
%_sbindir/bat
%_man1dir/bat.1.gz
%_datadir/pixmaps/bat_icon.png
%_datadir/applications/bat.desktop
%endif

%files client
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bacula-fd.conf
%_sbindir/bacula-fd
%_initdir/bacula-fd
%_man8dir/bacula-fd.8.gz

%files storage
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bacula-sd.conf
%_initdir/bacula-sd
%_sbindir/bacula-sd
%_sbindir/bcopy
%_sbindir/bextract
%_sbindir/bls
%_sbindir/bscan
%_sbindir/btape
%_sbindir/mtx-changer
%_sbindir/disk-changer
%_sbindir/dvd-handler
%_man8dir/bacula-sd.8.gz
%_man8dir/bcopy.8.gz
%_man8dir/bextract.8.gz
%_man8dir/bls.8.gz
%_man8dir/bscan.8.gz
%_man8dir/btape.8.gz


%files debug
%_sbindir/btraceback
%_datadir/%name/scripts/btraceback.dbx
%_datadir/%name/scripts/btraceback.gdb
%_man8dir/btraceback.8.gz

%files director
%doc COPYING ChangeLog ReleaseNotes VERIFYING kernstodo updatedb
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/bacula-dir.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/client/*.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/fileset/*.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/job/*.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/messages/*.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/pool/*.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/schedule/*.conf
%config(noreplace) %attr (0640,root,bacula) %_sysconfdir/bacula/storage/*.conf
%_sbindir/bacula-dir
%_sbindir/bregex
%_sbindir/bwild
%_sbindir/dbcheck
%_initdir/bacula-dir
%_man8dir/bacula-dir.8.gz
%_man8dir/dbcheck.8.gz

%_datadir/%name/scripts/query.sql

# for mysql

%_datadir/%name/scripts/create_mysql_database
%_datadir/%name/scripts/drop_mysql_database
%_datadir/%name/scripts/drop_mysql_tables
%_datadir/%name/scripts/grant_mysql_privileges
%_datadir/%name/scripts/make_mysql_tables
%_datadir/%name/scripts/update_mysql_*
#
# for bacula
%_datadir/%name/scripts/make_catalog_backup
%_datadir/%name/scripts/delete_catalog_backup

%files

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin