]> git.sur5r.net Git - bacula/bacula/blobdiff - gui/bacula-gui.spec.in
Merge branch 'master' into basejobv3
[bacula/bacula] / gui / bacula-gui.spec.in
index 205f7cc8668b12d183d86e940eb71cffba3aa741..02097bf76b763b7e891a197574890f16374e729b 100644 (file)
@@ -1,5 +1,5 @@
 # Bacula Web GUI RPM spec file
-# Copyright (C) 2004-2006 Kern Sibbald
+# Copyright (C) 2004-2007 Free Software Foundation Europe e.V.
 
 # Platform defines
 
@@ -44,6 +44,7 @@ exit 1
 %endif
 
 %define groupmod /usr/sbin/groupmod
+%define groupfile /etc/group
 
 Summary: Bacula - The Network Backup Solution
 Name: bacula-gui
@@ -112,7 +113,7 @@ web server based utility to monitor your bacula server.
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 
-Requires: perl, perl-DBI, perl-DBD-mysql, perl-DBD-Pg, perl-GDGraph
+Requires: perl, perl-DBI, perl-DBD-mysql, perl-DBD-Pg, perl-GDGraph, perl-GD
 Requires: perl-HTML-Template, perl-Time-modules
 
 %if %{suse}
@@ -131,7 +132,7 @@ of perl modules required by bacula-gui-bweb and bacula-gui-brestore utilities.
 Summary: Bacula - The Network Backup Solution
 Group: System Environment/Daemons
 
-Requires: perl, perl-DBI, perl-DBD-mysql, perl-DBD-Pg, perl-Expect
+Requires: perl, perl-DBI, perl-DBD-mysql, perl-DBD-Pg, perl-Expect, perl-libwww-perl
 Requires: perl-Gtk2-GladeXML, bacula-gui-libbweb = %{version}
 
 %description brestore
@@ -181,14 +182,19 @@ mkdir -p $RPM_BUILD_ROOT%{sysconfdir}
 mkdir -p $RPM_BUILD_ROOT%{perl_sitearch}
 mkdir -p $RPM_BUILD_ROOT/usr/bin
 mkdir -p $RPM_BUILD_ROOT/usr/share/brestore
+mkdir -p $RPM_BUILD_ROOT/usr/share/applications
+mkdir -p $RPM_BUILD_ROOT/usr/share/pixmaps
 
 mkdir -p $RPM_BUILD_ROOT%{cgidir}/bweb
 chmod 755 $RPM_BUILD_ROOT%{cgidir}/bweb
-mkdir -p $RPM_BUILD_ROOT/etc/bweb
-chmod 750 $RPM_BUILD_ROOT/etc/bweb
 mkdir -p $RPM_BUILD_ROOT/usr/share/bweb/tpl
 mkdir -p $RPM_BUILD_ROOT%{docdir}/%{bweb}
 
+%if !%{suse}
+mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps
+mkdir -p $RPM_BUILD_ROOT/etc/pam.d
+%endif
+
 # install bimagemgr files
 cp -p %{bimagemgr}-%{version}/bimagemgr.pl $RPM_BUILD_ROOT%{cgidir}/
 cp -p %{bimagemgr}-%{version}/config.pm $RPM_BUILD_ROOT%{cgidir}/
@@ -214,25 +220,39 @@ chmod 644 $RPM_BUILD_ROOT%{sysconfdir}/README.bacula-web
 
 # install the libbweb files
 cp -p %{bweb}-%{version}/lib/*.pm $RPM_BUILD_ROOT%{perl_sitearch}/
-chmod 644 $RPM_BUILD_ROOT%{perl_site_arch}/*.pm
+chmod 644 $RPM_BUILD_ROOT%{perl_sitearch}/*.pm
 
 # install the brestore files
 cp -p %{brestore}-%{version}/brestore.pl $RPM_BUILD_ROOT/usr/bin/
 cp -p %{brestore}-%{version}/brestore.glade $RPM_BUILD_ROOT/usr/share/brestore/
+%if %{suse}
+cp -p %{brestore}-%{version}/brestore.desktop.xsu $RPM_BUILD_ROOT/usr/share/applications/brestore.desktop
+%else
+cp -p %{brestore}-%{version}/brestore.desktop.consolehelper $RPM_BUILD_ROOT/usr/share/applications/brestore.desktop
+cp -p %{brestore}-%{version}/brestore.console_apps $RPM_BUILD_ROOT/etc/security/console.apps/brestore
+cp -p %{brestore}-%{version}/brestore.pamd $RPM_BUILD_ROOT/etc/pam.d/brestore
+ln -sf consolehelper $RPM_BUILD_ROOT/usr/bin/brestore
+%endif
+cp -p %{brestore}-%{version}/brestore.png $RPM_BUILD_ROOT/usr/share/pixmaps/
 chmod 755 $RPM_BUILD_ROOT/usr/bin/brestore.pl
 chmod 644 $RPM_BUILD_ROOT/usr/share/brestore/brestore.glade
+chmod 644 $RPM_BUILD_ROOT/usr/share/applications/brestore.desktop
+chmod 644 $RPM_BUILD_ROOT/usr/share/pixmaps/brestore.png
 
 # install the bweb files
 cp -p %{bweb}-%{version}/cgi/*.pl $RPM_BUILD_ROOT%{cgidir}/bweb/
 chmod 755 $RPM_BUILD_ROOT%{cgidir}/bweb/*
-echo "template_dir = /usr/share/bweb/tpl" > $RPM_BUILD_ROOT/etc/bweb/config
+echo "template_dir = /usr/share/bweb/tpl" > $RPM_BUILD_ROOT%{sysconfdir}/bweb.conf
 cp -p %{bweb}-%{version}/tpl/*.tpl $RPM_BUILD_ROOT/usr/share/bweb/tpl/
 chmod 644 $RPM_BUILD_ROOT/usr/share/bweb/tpl/*
 cp -p %{bweb}-%{version}/html/*.js $RPM_BUILD_ROOT%{docdir}/%{bweb}/
 cp -p %{bweb}-%{version}/html/*.png $RPM_BUILD_ROOT%{docdir}/%{bweb}/
 cp -p %{bweb}-%{version}/html/*.css $RPM_BUILD_ROOT%{docdir}/%{bweb}/
 cp -p %{bweb}-%{version}/html/*.gif $RPM_BUILD_ROOT%{docdir}/%{bweb}/
+cp -p %{bweb}-%{version}/html/*.html $RPM_BUILD_ROOT%{docdir}/%{bweb}/
 chmod 644 $RPM_BUILD_ROOT%{docdir}/%{bweb}/*
+cp -p %{bweb}-%{version}/script/bweb-postgresql.sql $RPM_BUILD_ROOT%{sysconfdir}
+chmod 644 $RPM_BUILD_ROOT%{sysconfdir}/bweb-postgresql.sql
 
 
 # remove the standard doc files from the install directory
@@ -245,6 +265,8 @@ rm -f $RPM_BUILD_ROOT%{docdir}/%{web}/TODO
 # setup the docs dir
 mkdir -p docs/%{bimagemgr}
 mkdir docs/%{web}
+mkdir docs/%{brestore}
+mkdir docs/%{bweb}
 
 cp -p %{bimagemgr}-%{version}/README docs/%{bimagemgr}/
 cp -p %{bimagemgr}-%{version}/COPYING docs/%{bimagemgr}/
@@ -258,6 +280,14 @@ cp -p %{web}-%{version}/CONTACT docs/%{web}/
 cp -p %{web}-%{version}/COPYING docs/%{web}/
 cp -p bacula-docs-%{version}/%{web}/%{web}.pdf docs/%{web}/
 
+cp -p %{brestore}-%{version}/README docs/%{brestore}/
+cp -p %{brestore}-%{version}/COPYING docs/%{brestore}/
+cp -p %{brestore}-%{version}/ReleaseNotes docs/%{brestore}/
+
+cp -p %{bweb}-%{version}/INSTALL docs/%{bweb}/
+cp -p %{bweb}-%{version}/COPYING docs/%{bweb}/
+cp -p %{bweb}-%{version}/ReleaseNotes docs/%{bweb}/
+
 %clean
 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT"
 rm -rf docs
@@ -305,29 +335,88 @@ rm -rf docs
 %defattr(-,root,root)
 /usr/bin/brestore.pl
 /usr/share/brestore/brestore.glade
+/usr/share/applications/brestore.desktop
+/usr/share/pixmaps/brestore.png
+%doc docs/%{brestore}/*
+%if !%{suse}
+# add the console helper files
+%config(noreplace,missingok) /etc/pam.d/brestore
+%config(noreplace,missingok) /etc/security/console.apps/brestore
+/usr/bin/brestore
+%endif
 
 %files bweb
 %defattr(-,%{binowner},%{bingroup})
 %{cgidir}/bweb/*.pl
 /usr/share/bweb/tpl/*.tpl
 %{docdir}/bweb/*
+%{sysconfdir}/bweb-postgresql.sql
+%doc docs/%{bweb}/*
 
 %defattr(-,%{binowner},%{datagroup})
-%dir /etc/bweb
+%dir %{sysconfdir}
 
 %defattr(-,%{dataowner},%{datagroup})
-/etc/bweb/config
+%{sysconfdir}/bweb.conf
 
 %post bimagemgr
-
+%if %{suse}
 # add the web server user to group bacula
 %{groupmod} -A %{dataowner} bacula
+%else
+# do it the hard way
+cp -p %{groupfile} %{groupfile}.old
+awk '{if (/bacula:/) print $0",%{dataowner}"; else print $0}' %{groupfile}.old > %{groupfile}
+%endif
 
 %postun bimagemgr
+%if %{suse}
 # remove the web server user to group bacula
 %{groupmod} -R %{dataowner} bacula
+%else
+echo
+echo "You should remove user %{dataowner} from group bacula."
+echo
+%endif
+
+%post bweb
+%if %{suse}
+# add the web server user to group bacula
+%{groupmod} -A %{dataowner} bacula
+%else
+# do it the hard way
+cp -p %{groupfile} %{groupfile}.old
+awk '{if (/bacula:/) print $0",%{dataowner}"; else print $0}' %{groupfile}.old > %{groupfile}
+%endif
+echo
+echo If you are using postgresql, you should load %{sysconfdir}/bweb-postgresql.sql into
+echo your database.
+echo postgres:~$ psql bacula < %{sysconfdir}/bweb-postgresql.sql
+echo
+
+%postun bweb
+%if %{suse}
+# remove the web server user to group bacula
+%{groupmod} -R %{dataowner} bacula
+%else
+echo
+echo "You should remove user %{dataowner} from group bacula."
+echo
+%endif
 
 %changelog
+* Sun Dec 31 2006 ebl
+- move /etc/bweb/config to /etc/bacula/bweb.conf
+* Sun Sep 24 2006 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- it's bweb not brestore that needs to add dataowner to group bacula
+- brestore will need to run xsu or consolehelper
+* Sun Sep 03 2006 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- seems that groupmod -A or -R is only available on SuSE
+- use awk or add warning for other platforms
+* Sat Aug 26 2006 D. Scott Barninger <barninger at fairfieldcomputers.com>
+- add brestore menu entry and post script
+- add /etc/bweb/bweb-postgresql.sql
+- add bweb and brestore docs
 * Sun Aug 20 2006 D. Scott Barninger <barninger at fairfieldcomputers.com>
 - add libbweb, bweb and brestore packages
 * Sun May 14 2006 D. Scott Barninger <barninger at fairfieldcomputers.com>