X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rpm%2Ffreeside.spec;h=9312270430c8cc07faf3b955a38bcc5c2a74e2f6;hp=897b2dfe7d4c8f4d5ab9307bf32903e0dd4bb3c9;hb=8a8bca8c782c7213d660f8244105654f2863e2c7;hpb=7c0e01319b4adb4f659ea06f01cf004202e14a30 diff --git a/rpm/freeside.spec b/rpm/freeside.spec index 897b2dfe7..931227043 100644 --- a/rpm/freeside.spec +++ b/rpm/freeside.spec @@ -1,52 +1,72 @@ %{!?_initrddir:%define _initrddir /etc/rc.d/init.d} -%{!?version:%define version 1.9} -%{!?release:%define release 1} +%{!?version:%define version 1.9.1} +%{!?release:%define release 8} Summary: Freeside ISP Billing System Name: freeside Version: %{version} Release: %{release} -License: AGPL +License: AGPLv3 Group: Applications/Internet URL: http://www.sisd.com/freeside/ -Packager: Richard Siddall Vendor: Freeside Source: http://www.sisd.com/freeside/%{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildArch: noarch Requires: %{name}-frontend Requires: %{name}-backend +%if "%{_vendor}" != "suse" Requires: tetex-latex +Requires: ghostscript +%else +Requires: te_latex +Requires: ghostscript-library +%endif Requires: perl-Fax-Hylafax-Client +%if "%{_vendor}" != "suse" +%define apache_conffile /etc/httpd/conf/httpd.conf +%define apache_confdir /etc/httpd/conf.d +%define apache_version 2 %define freeside_document_root /var/www/freeside -%define freeside_cache /var/cache/subsys/freeside +%define freeside_selfservice_document_root /var/www/freeside-selfservice +%else +%define apache_conffile /etc/apache2/uid.conf +%define apache_confdir /etc/apache2/conf.d +%define apache_version 2 +%define freeside_document_root /srv/www/freeside +%define freeside_selfservice_document_root /srv/www/freeside-selfservice +%endif +# Can change this back to /var/cache/subsys/freeside when cache relocation is fixed and released +%define freeside_cache /etc/freeside %define freeside_conf /etc/freeside %define freeside_export /etc/freeside %define freeside_lock /var/lock/freeside %define freeside_log /var/log/freeside +%define freeside_socket /etc/freeside %define rt_enabled 0 -%define apache_conffile /etc/httpd/conf/httpd.conf -%define apache_confdir /etc/httpd/conf.d -%define apache_version 2 %define fs_queue_user fs_queue %define fs_selfservice_user fs_selfservice %define fs_cron_user fs_daily %define db_types Pg mysql +%define texmflocal /usr/share/texmf + %define _rpmlibdir /usr/lib/rpm +%define rpmfiles rpm %description -Freeside is a flexible ISP billing system written by Ivan Kohler +Freeside is a flexible ISP billing system %package mason Summary: HTML::Mason interface for %{name} Group: Applications/Internet -Prefix: /var/www/freeside +Prefix: %{freeside_document_root} +%if "%{_vendor}" != "suse" Requires: mod_ssl +%endif Requires: perl-Apache-DBI -Conflicts: %{name}-apacheasp -Provides: %{name}-frontend +Provides: %{name}-frontend = %{version} BuildArch: noarch %description mason @@ -60,7 +80,7 @@ Requires: perl-DBI Requires: perl-DBD-Pg >= 1.32 Requires: %{name} Conflicts: %{name}-mysql -Provides: %{name}-backend +Provides: %{name}-backend = %{version} %description postgresql This package includes the PostgreSQL database backend for %{name}. @@ -74,7 +94,7 @@ Requires: perl-DBI Requires: perl-DBD-MySQL Requires: %{name} Conflicts: %{name}-postgresql -Provides: %{name}-backend +Provides: %{name}-backend = %{version} %description mysql This package includes the MySQL database backend for %{name}. @@ -84,23 +104,70 @@ Please note that this RPM does not create the database or database user; it only %package selfservice Summary: Self-service interface for %{name} Group: Applications/Internet -Conflicts: %{name} +Requires: %{name}-selfservice-cgi %description selfservice This package installs the Perl modules and CGI scripts for the self-service interface for %{name}. -For security reasons, it is set to conflict with %{name} so you cannot install the billing system and self-service interface on the same computer. +For security reasons, it is set to conflict with %{name} as you should not install the billing system and self-service interface on the same computer. + +%package selfservice-core +Summary: Core Perl libraries for the self-service interface for %{name} +Group: Applications/Internet + +%description selfservice-core +This package installs the Perl modules and client daemon for the self-service interface for %{name}. It does not install the CGI interface and can be used with a different front-end. +For security reasons, it is set to conflict with %{name} as you should not install the billing system and self-service interface on the same computer. + +%package selfservice-cgi +Summary: CGI scripts for the self-service interface for %{name} +Group: Applications/Internet +Requires: %{name}-selfservice-core +Prefix: %{freeside_selfservice_document_root} + +%description selfservice-cgi +This package installs the CGI scripts for the self-service interface for %{name}. The scripts use some core libraries packaged in a separate RPM. +For security reasons, it is set to conflict with %{name} as you should not install the billing system and self-service interface on the same computer. + +%package selfservice-php +Summary: Sample PHP files for the self-service interface for %{name} +Group: Applications/Internet +Prefix: %{freeside_selfservice_document_root} + +%description selfservice-php +This package installs the sample PHP scripts for the self-service interface for %{name}. +For security reasons, it is set to conflict with %{name} as you should not install the billing system and self-service interface on the same computer. %prep -%setup -%{__rm} bin/pod2x # Only useful to Ivan Kohler now -perl -pi -e 's|/usr/local/bin|%{buildroot}%{_bindir}|g' FS/Makefile.PL -perl -pi -e 's|\s+-o\s+freeside\s+| |g' Makefile +%setup -q +%{__rm} -f bin/pod2x # Only useful to Ivan Kohler now +perl -pi -e 's|/usr/local/bin|%{_bindir}|g' FS/Makefile.PL +# RPM handles changing file ownership, so Makefile shouldn't +perl -pi -e 's/\s+-o\s+(freeside|root)(\s+-g\s+\$\{\w+\})?\s+/ /g' Makefile perl -ni -e 'print if !/\s+chown\s+/;' Makefile +# Fix-ups for self-service. Should merge this into Makefile +perl -pi -e 's|/usr/local/sbin|%{_sbindir}|g' FS/bin/freeside-selfservice-server +perl -pi -e 's|/usr/local/bin|%{_bindir}|g' fs_selfservice/FS-SelfService/Makefile.PL +perl -pi -e 's|/usr/local/sbin|%{_sbindir}|g' fs_selfservice/FS-SelfService/Makefile.PL +perl -pi -e 's|/usr/local/freeside|%{freeside_socket}|g' fs_selfservice/FS-SelfService/*.pm +perl -pi -e 's|socket\s*=\s*"/usr/local/freeside|socket = "%{freeside_socket}|g' fs_selfservice/FS-SelfService/freeside-selfservice-* +perl -pi -e 's|log_file\s*=\s*"/usr/local/freeside|log_file = "%{freeside_log}|g' fs_selfservice/FS-SelfService/freeside-selfservice-* +perl -pi -e 's|lock_file\s*=\s*"/usr/local/freeside|lock_file = "%{freeside_lock}|g' fs_selfservice/FS-SelfService/freeside-selfservice-* + +# Fix-ups for SuSE +%if "%{_vendor}" == "suse" +perl -pi -e 's|htpasswd|/usr/sbin/htpasswd2|g if /system/;' FS/FS/access_user.pm +perl -pi -e 'print "Order deny,allow\nAllow from all\n" if / %{name}-req #!/bin/sh -tee %{_tmppath}/filelist | %{_rpmlibdir}/rpmdeps --requires | grep -v -E '^perl\(the\)$' | sort -u +tee %{_tmppath}/filelist | %{_rpmlibdir}/rpmdeps --requires | grep -v -E '^perl\(the\)$' \ +| grep -v -E '^perl\((lib|strict|vars|RT)\)$' \ +| grep -v -E '^perl\(RT::' \ +| grep -v -E '^perl\(FS::' \ +| sort -u grep handler.pl %{_tmppath}/filelist | xargs %{_rpmlibdir}/perldeps.pl --requires \ | grep -v -E '^perl\((lib|strict|vars|RT)\)$' \ | grep -v -E '^perl\(RT::' \ @@ -121,14 +188,22 @@ touch htmlman #perl -pi -e 's|%%%%%%VERSION%%%%%%|%{version}|g' FS/bin/* cd FS -CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL PREFIX=$RPM_BUILD_ROOT%{_prefix} SITELIBEXP=$RPM_BUILD_ROOT%{perl_sitelib} SITEARCHEXP=$RPM_BUILD_ROOT%{perl_sitearch} +if [ "%{_vendor}" = "suse" ]; then + CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL +else + CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL PREFIX=$RPM_BUILD_ROOT%{_prefix} SITELIBEXP=$RPM_BUILD_ROOT%{perl_sitelib} SITEARCHEXP=$RPM_BUILD_ROOT%{perl_sitearch} INSTALLSCRIPT=$RPM_BUILD_ROOT%{_bindir} +fi %{__make} OPTIMIZE="$RPM_OPT_FLAGS" cd .. -%{__make} perl-modules VERSION='%{version}-%{release}' FREESIDE_CACHE=%{freeside_cache} FREESIDE_CONF=%{freeside_conf} FREESIDE_EXPORT=%{freeside_export} FREESIDE_LOCK=%{freeside_lock} FREESIDE_LOG=%{freeside_log} +%{__make} perl-modules RT_ENABLED=%{rt_enabled} FREESIDE_CACHE=%{freeside_cache} FREESIDE_CONF=%{freeside_conf} FREESIDE_EXPORT=%{freeside_export} FREESIDE_LOCK=%{freeside_lock} FREESIDE_LOG=%{freeside_log} touch perl-modules cd fs_selfservice/FS-SelfService -CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL PREFIX=$RPM_BUILD_ROOT%{_prefix} SITELIBEXP=$RPM_BUILD_ROOT%{perl_sitelib} SITEARCHEXP=$RPM_BUILD_ROOT%{perl_sitearch} INSTALLSCRIPT=$RPM_BUILD_ROOT%{_sbindir} +if [ "%{_vendor}" = "suse" ]; then + CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL +else + CFLAGS="$RPM_OPT_FLAGS" perl Makefile.PL PREFIX=$RPM_BUILD_ROOT%{_prefix} SITELIBEXP=$RPM_BUILD_ROOT%{perl_sitelib} SITEARCHEXP=$RPM_BUILD_ROOT%{perl_sitearch} INSTALLSCRIPT=$RPM_BUILD_ROOT%{_sbindir} +fi %{__make} OPTIMIZE="$RPM_OPT_FLAGS" cd ../.. @@ -140,16 +215,17 @@ cd ../.. touch install-perl-modules perl-modules %{__mkdir_p} $RPM_BUILD_ROOT%{freeside_cache} %{__mkdir_p} $RPM_BUILD_ROOT%{freeside_conf} -#%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_export} +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_export} %{__mkdir_p} $RPM_BUILD_ROOT%{freeside_lock} %{__mkdir_p} $RPM_BUILD_ROOT%{freeside_log} for DBTYPE in %{db_types}; do %{__mkdir_p} $RPM_BUILD_ROOT/tmp - %{__make} create-config DB_TYPE=$DBTYPE RT_ENABLED=%{rt_enabled} FREESIDE_CACHE=$RPM_BUILD_ROOT%{freeside_cache} FREESIDE_CONF=$RPM_BUILD_ROOT/tmp FREESIDE_EXPORT=$RPM_BUILD_ROOT%{freeside_export} FREESIDE_LOCK=$RPM_BUILD_ROOT%{freeside_lock} FREESIDE_LOG=$RPM_BUILD_ROOT%{freeside_log} - %{__mv} $RPM_BUILD_ROOT/tmp/* $RPM_BUILD_ROOT%{freeside_conf} - /bin/rmdir $RPM_BUILD_ROOT/tmp + [ -d $RPM_BUILD_ROOT%{freeside_conf}/default_conf ] && %{__rm} -rf $RPM_BUILD_ROOT%{freeside_conf}/default_conf + %{__make} create-config DB_TYPE=$DBTYPE DATASOURCE=DBI:$DBTYPE:dbname=%{name} RT_ENABLED=%{rt_enabled} FREESIDE_CACHE=$RPM_BUILD_ROOT%{freeside_cache} FREESIDE_CONF=$RPM_BUILD_ROOT/tmp FREESIDE_EXPORT=$RPM_BUILD_ROOT%{freeside_export} FREESIDE_LOCK=$RPM_BUILD_ROOT%{freeside_lock} FREESIDE_LOG=$RPM_BUILD_ROOT%{freeside_log} DIST_CONF=$RPM_BUILD_ROOT%{freeside_conf}/default_conf + %{__mv} $RPM_BUILD_ROOT/tmp/secrets $RPM_BUILD_ROOT%{freeside_conf} + %{__rm} -rf $RPM_BUILD_ROOT/tmp done -%{__rm} install-perl-modules perl-modules $RPM_BUILD_ROOT%{freeside_conf}/conf*/ticket_system +%{__rm} install-perl-modules perl-modules $RPM_BUILD_ROOT%{freeside_conf}/default_conf/ticket_system touch docs %{__perl} -pi -e "s|%%%%%%FREESIDE_DOCUMENT_ROOT%%%%%%|%{freeside_document_root}|g" htetc/handler.pl @@ -159,20 +235,14 @@ touch docs # Install the init script %{__mkdir_p} $RPM_BUILD_ROOT%{_initrddir} -%{__install} init.d/freeside-init $RPM_BUILD_ROOT%{_initrddir}/%{name} -#%{__make} install-init INSTALLGROUP=root INIT_FILE=$RPM_BUILD_ROOT%{_initrddir}/%{name} +%{__make} install-init INSTALLGROUP=root INIT_FILE=$RPM_BUILD_ROOT%{_initrddir}/%{name} QUEUED_USER=%{fs_queue_user} SELFSERVICE_USER=%{fs_selfservice_user} SELFSERVICE_MACHINES= INIT_INSTALL= %{__perl} -pi -e "\ - s/%%%%%%QUEUED_USER%%%%%%/%{fs_queue_user}/g;\ - s/%%%%%%SELFSERVICE_USER%%%%%%/%{fs_selfservice_user}/g;\ - s/%%%%%%SELFSERVICE_MACHINES%%%%%%//g;\ + s|/etc/default|/etc/sysconfig|g;\ " $RPM_BUILD_ROOT%{_initrddir}/%{name} # Install the HTTPD configuration snippet for HTML::Mason %{__mkdir_p} $RPM_BUILD_ROOT%{apache_confdir} -%{__make} install-apache FREESIDE_DOCUMENT_ROOT=%{freeside_document_root} RT_ENABLED=%{rt_enabled} APACHE_CONF=$RPM_BUILD_ROOT%{apache_confdir} APACHE_VERSION=%{apache_version} MASON_HANDLER=%{freeside_conf}/handler.pl -%{__perl} -pi -e "s|%%%%%%FREESIDE_DOCUMENT_ROOT%%%%%%|%{freeside_document_root}|g" $RPM_BUILD_ROOT%{apache_confdir}/freeside-*.conf -%{__perl} -pi -e "s|%%%%%%MASON_HANDLER%%%%%%|%{freeside_conf}/handler.pl|g" $RPM_BUILD_ROOT%{apache_confdir}/freeside-*.conf -%{__perl} -pi -e "s|/usr/local/etc/freeside|%{freeside_conf}|g" $RPM_BUILD_ROOT%{apache_confdir}/freeside-*.conf +%{__make} install-apache FREESIDE_DOCUMENT_ROOT=%{freeside_document_root} RT_ENABLED=%{rt_enabled} APACHE_CONF=$RPM_BUILD_ROOT%{apache_confdir} APACHE_VERSION=%{apache_version} FREESIDE_CONF=%{freeside_conf} MASON_HANDLER=%{freeside_conf}/handler.pl %{__perl} -pi -e 'print "Alias /%{name} %{freeside_document_root}\n\n" if /^ %{name}-%{version}-%{release}-mason-filelist find $RPM_BUILD_ROOT%{freeside_document_root} -type f -print | \ - sed "s@^$RPM_BUILD_ROOT@@g" >> %{name}-%{version}-%{release}-mason-filelist + sed "s@^$RPM_BUILD_ROOT@@g" >> %{name}-%{version}-%{release}-mason-filelist if [ "$(cat %{name}-%{version}-%{release}-mason-filelist)X" = "X" ] ; then - echo "ERROR: EMPTY FILE LIST" - exit 1 + echo "ERROR: EMPTY FILE LIST" + exit 1 fi # Install all the miscellaneous binaries into /usr/share or similar @@ -207,15 +277,19 @@ fi %{__install} bin/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/bin %{__mkdir_p} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig -%{__install} rpm/freeside.sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name} - -%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_document_root}/selfservice -%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_document_root}/selfservice/cgi -%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_document_root}/selfservice/php -%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_document_root}/selfservice/templates -%{__install} fs_selfservice/FS-SelfService/cgi/* $RPM_BUILD_ROOT%{freeside_document_root}/selfservice/cgi -%{__install} fs_selfservice/php/* $RPM_BUILD_ROOT%{freeside_document_root}/selfservice/php -%{__install} fs_selfservice/FS-SelfService/*.template $RPM_BUILD_ROOT%{freeside_document_root}/selfservice/templates +%{__install} %{rpmfiles}/freeside.sysconfig $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name} + +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_selfservice_document_root} +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/cgi +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/cgi/images +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/cgi/misc +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/php +%{__mkdir_p} $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/templates +%{__install} fs_selfservice/FS-SelfService/cgi/{*.cgi,*.html,*.gif} $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/cgi +%{__install} fs_selfservice/FS-SelfService/cgi/images/* $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/cgi/images +%{__install} fs_selfservice/FS-SelfService/cgi/misc/* $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/cgi/misc +%{__install} fs_selfservice/php/* $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/php +%{__install} fs_selfservice/FS-SelfService/*.template $RPM_BUILD_ROOT%{freeside_selfservice_document_root}/templates # Install the main billing server Perl files cd FS @@ -229,17 +303,17 @@ eval `perl '-V:installarchlib'` find $RPM_BUILD_ROOT%{_prefix} -type f -print | \ grep -v '/etc/freeside/conf' | \ grep -v '/etc/freeside/secrets' | \ - sed "s@^$RPM_BUILD_ROOT@@g" > %{name}-%{version}-%{release}-filelist + sed "s@^$RPM_BUILD_ROOT@@g" > %{name}-%{version}-%{release}-filelist if [ "$(cat %{name}-%{version}-%{release}-filelist)X" = "X" ] ; then - echo "ERROR: EMPTY FILE LIST" - exit 1 + echo "ERROR: EMPTY FILE LIST" + exit 1 fi cd .. # Install the self-service interface Perl files cd fs_selfservice/FS-SelfService %{__mkdir_p} $RPM_BUILD_ROOT%{_prefix}/local/bin -%makeinstall PREFIX=$RPM_BUILD_ROOT%{_prefix} +%makeinstall %{__rm} -f `find $RPM_BUILD_ROOT -type f -name perllocal.pod -o -name .packlist` [ -x %{_rpmlibdir}/brp-compress ] && %{_rpmlibdir}/brp-compress @@ -247,37 +321,59 @@ cd fs_selfservice/FS-SelfService find $RPM_BUILD_ROOT%{_prefix} -type f -print | \ grep -v '/etc/freeside/conf' | \ grep -v '/etc/freeside/secrets' | \ - sed "s@^$RPM_BUILD_ROOT@@g" > %{name}-%{version}-%{release}-temp-filelist -cat ../../FS/%{name}-%{version}-%{release}-filelist %{name}-%{version}-%{release}-temp-filelist | sort | uniq -u > %{name}-%{version}-%{release}-selfservice-filelist -if [ "$(cat %{name}-%{version}-%{release}-selfservice-filelist)X" = "X" ] ; then - echo "ERROR: EMPTY FILE LIST" - exit 1 + sed "s@^$RPM_BUILD_ROOT@@g" > %{name}-%{version}-%{release}-temp-filelist +cat ../../FS/%{name}-%{version}-%{release}-filelist %{name}-%{version}-%{release}-temp-filelist | sort | uniq -u > %{name}-%{version}-%{release}-selfservice-core-filelist +if [ "$(cat %{name}-%{version}-%{release}-selfservice-core-filelist)X" = "X" ] ; then + echo "ERROR: EMPTY FILE LIST" + exit 1 fi cd ../.. +# Install the Apache configuration file for self-service +%{__install} %{rpmfiles}/freeside-selfservice.conf $RPM_BUILD_ROOT%{apache_confdir}/%{name}-selfservice.conf +%{__perl} -pi -e "s|%%%%%%FREESIDE_SELFSERVICE_DOCUMENT_ROOT%%%%%%|%{freeside_selfservice_document_root}|g" $RPM_BUILD_ROOT%{apache_confdir}/%{name}-selfservice.conf + +# This is part of Makefile's install-texmf. The rest is in triggers. These files are not in the filelist +%{__install} -D etc/fslongtable.sty $RPM_BUILD_ROOT%{texmflocal}/tex/generic/fslongtable.sty + %pre if ! %{__id} freeside &>/dev/null; then - /usr/sbin/useradd freeside +%if "%{_vendor}" == "suse" + /usr/sbin/groupadd freeside +%endif + /usr/sbin/useradd -m freeside fi %pre mason if ! %{__id} freeside &>/dev/null; then - /usr/sbin/useradd freeside +%if "%{_vendor}" == "suse" + /usr/sbin/groupadd freeside +%endif + /usr/sbin/useradd -m freeside fi %pre postgresql if ! %{__id} freeside &>/dev/null; then - /usr/sbin/useradd freeside +%if "%{_vendor}" == "suse" + /usr/sbin/groupadd freeside +%endif + /usr/sbin/useradd -m freeside fi %pre mysql if ! %{__id} freeside &>/dev/null; then - /usr/sbin/useradd freeside +%if "%{_vendor}" == "suse" + /usr/sbin/groupadd freeside +%endif + /usr/sbin/useradd -m freeside fi -%pre selfservice +%pre selfservice-cgi if ! %{__id} freeside &>/dev/null; then - /usr/sbin/useradd freeside +%if "%{_vendor}" == "suse" + /usr/sbin/groupadd freeside +%endif + /usr/sbin/useradd -m freeside fi %post @@ -301,8 +397,25 @@ fi %post mason # Make local httpd run with User/Group = freeside if [ -f %{apache_conffile} ]; then +%if "%{_vendor}" != "suse" perl -p -i.fsbackup -e 's/^(User|Group) .*/$1 freeside/' %{apache_conffile} +%else + perl -p -i.fsbackup -e 's/^(User) .*/$1 freeside/' %{apache_conffile} +%endif +fi +# Fix up environment so pslatex will run +%if "%{_vendor}" == "suse" +if ! %{__grep} TEXINPUTS /etc/profile.local >/dev/null; then + echo "unset TEXINPUTS" >>/etc/profile.local fi +if ! %{__grep} TEXINPUTS /etc/init.d/apache2 >/dev/null; then + perl -p -i.fsbackup -e 'print "unset TEXINPUTS\n\n" if /^httpd_conf\s*=\s*/;' /etc/init.d/apache2 +fi +%endif + +%triggerin -- tetex +#texhash `kpsewhich -expand-var \$TEXMFLOCAL` +texhash %{texmflocal} %clean %{__rm} -rf %{buildroot} @@ -315,6 +428,9 @@ fi %attr(-,freeside,freeside) %dir %{freeside_conf} %attr(-,freeside,freeside) %dir %{freeside_lock} %attr(-,freeside,freeside) %dir %{freeside_log} +%attr(0711,freeside,freeside) %config(noreplace) %{freeside_conf}/default_conf +%attr(0644,freeside,freeside) %config(noreplace) %{freeside_conf}/default_conf/* +%attr(444,root,root) %{texmflocal}/tex/generic/fslongtable.sty %files mason -f %{name}-%{version}-%{release}-mason-filelist %defattr(-, freeside, freeside, 0755) @@ -325,13 +441,42 @@ fi %files mysql -f %{name}-%{version}-%{release}-mysql-filelist -%files selfservice -f fs_selfservice/FS-SelfService/%{name}-%{version}-%{release}-selfservice-filelist +%files selfservice +%defattr(-, freeside, freeside, 0644) +%attr(0644,root,root) %config(noreplace) %{apache_confdir}/%{name}-selfservice.conf + +%files selfservice-core -f fs_selfservice/FS-SelfService/%{name}-%{version}-%{release}-selfservice-core-filelist +%defattr(-, freeside, freeside, 0644) +%attr(-,freeside,freeside) %dir %{freeside_socket} +%attr(-,freeside,freeside) %dir %{freeside_lock} +%attr(-,freeside,freeside) %dir %{freeside_log} + +%files selfservice-cgi %defattr(-, freeside, freeside, 0644) -%attr(0755,freeside,freeside) %{freeside_document_root}/selfservice/cgi -%attr(0755,freeside,freeside) %{freeside_document_root}/selfservice/php -%attr(0644,freeside,freeside) %{freeside_document_root}/selfservice/templates +%attr(0711,freeside,freeside) %{freeside_selfservice_document_root}/cgi +%attr(0644,freeside,freeside) %{freeside_selfservice_document_root}/templates + +%files selfservice-php +%defattr(-, freeside, freeside, 0644) +%attr(0755,freeside,freeside) %{freeside_selfservice_document_root}/php %changelog +* Thu Jun 11 2009 Richard Siddall - 1.9-8 +- Since configuration is now kept in the RDBMS, don't install a configuration folder + +* Mon Dec 22 2008 Richard Siddall - 1.9-5 +- Modifications to make self-service work if you really insist on installing it on the same machine as Freeside + +* Tue Dec 9 2008 Richard Siddall - 1.9-4 +- Cleaning up after rpmlint + +* Tue Aug 26 2008 Richard Siddall - 1.9-3 +- More revisions for self-service interface + +* Sat Aug 23 2008 Richard Siddall - 1.7.3-2 +- Revisions for self-service interface +- RT support is still missing + * Sun Jul 8 2007 Richard Siddall - 1.7.3 - Updated for upcoming Freeside 1.7.3 - RT support is still missing