%if 0%{?rhel} && 0%{?rhel} <= 5
%global tomcat_major 5
%global endorsed_dir /var/lib/tomcat%{tomcat_major}/common/endorsed
%else
%global tomcat_major 6
%global endorsed_dir %{_datadir}/tomcat%{tomcat_major}/lib
%endif
%global tomcat_app_dir %{_localstatedir}/lib/tomcat%{tomcat_major}/webapps
%global extension_dir /var/lib/tomcat%{tomcat_major}/shared/classes
%global alfresco_data %{_localstatedir}/lib/alfresco/alf_data
Summary: Alfresco CMS
Name: alfresco-community
Version: 3.4.d
Release: 1
#Source0: http://dev.alfresco.com/downloads/nightly/dist/alfresco-community-war-3.3G.tar.gz
Source0: http://dl.alfresco.com/release/community/build-3370/alfresco-community-%{version}.zip
#Source6: alfresco-README-redhat.txt
#Source7: alfresco-setup.sh
#Source8: alfresco-custom-content-services-context.xml
License: GPL
Group: System/Daemons
BuildRoot: %{_tmppath}/%{name}-buildroot
BuildArch: noarch
Requires: tomcat%{tomcat_major}
#CoRA
Requires: swftools
#Currently barfs on openjdk - EXACT_LANGUAGE_AND_ALL
#Seen process hanging with openjdk too
# Need SDK for tomcat5
%if 0%{?rhel} && 0%{?rhel} <= 5
Requires: java-1.6.0-sun-devel
%endif
#Needed?
Requires: ImageMagick
Requires: mysql-connector-java
Requires: openoffice.org-headless
Requires: openoffice.org-writer
Requires: xalan-j2
Requires(post): jpackage-utils
%global __jar_repack 0
%description
Alfresco is the Open Source Alternative for
Enterprise Content Management (ECM), providing Document Management,
Collaboration, Records Management, Knowledge Management,
Web Content Management and Imaging.
%prep
%setup -q -c -n %{name}
pushd web-server/webapps
for war in *.war
do
dir=${war/./_}
mkdir ${dir}
pushd ${dir}
unzip -q ../${war}
#Fix log location
sed -i -e '/^log4j.appender.File.File=/s,=alfresco.log,=%{_localstatedir}/log/tomcat%{tomcat_major}/alfresco.log,' WEB-INF/classes/log4j.properties
popd
done
popd
cp web-server/shared/classes/alfresco-global.properties.sample \
web-server/shared/classes/alfresco-global.properties
#Fix data location
sed -i -e '/^#*dir.root=/s,.*,dir.root=%{alfresco_data},' web-server/shared/classes/alfresco-global.properties
#OpenOffice
sed -i -e 's,^#ooo.exe=soffice,ooo.exe=/usr/bin/ooffice,' web-server/shared/classes/alfresco-global.properties
sed -i -e 's,^#ooo.enabled=false,ooo.enabled=true,' web-server/shared/classes/alfresco-global.properties
#ImageMagick
sed -i -e 's,^#img.root=./ImageMagick,img.root=/usr,' web-server/shared/classes/alfresco-global.properties
#pdf2swf
sed -i -e 's,^#swf.exe=./bin,swf.exe=/usr/bin,' web-server/shared/classes/alfresco-global.properties
#Should work but doesn't
#sed -i.orig -e '/^#dir.root=/s,.*,dir.root=%{alfresco_data},' extensions/extension/custom-repository.properties
#db.url=jdbc:derby:alf_data/derby_data/alfresco;create=true
#sed -i.orig -e '/^db.url=/s,alf_data,%{alfresco_data},' extensions/extension/custom-repository.properties
#sed -i.orig -e '/^dir.root=/s,=./alf_data,=%{alfresco_data},' %{name}_war/WEB-INF/classes/alfresco/repository.properties
#Fix openoffice command
#
#Wrapper sets SAL_USE_VCLPLUGIN=gtk, which breaks -headless
#https://bugzilla.redhat.com/show_bug.cgi?id=461984
#Also needed to change tomcat5 home dir in /etc/passwd to /var/cache/tomcat5/work
#sed -i.orig -e 's,soffice,/usr/lib64/openoffice.org/program/soffice.bin,g' extensions/extension/bootstrap/openoffice-startup-context.xml
%build
%install
rm -rf $RPM_BUILD_ROOT
pushd web-server/webapps
# Base
mkdir -p $RPM_BUILD_ROOT/%{tomcat_app_dir}
for war in *_war
do
cp -a ${war} $RPM_BUILD_ROOT%{tomcat_app_dir}/${war/_war/}
done
popd
#alfresco-community/web-server/conf:
#catalina.properties context.xml server.xml
#
#alfresco-community/web-server/lib:
#commons-el.jar mysql-connector-java-5.1.7-bin.jar
#Need system javamail
#ln -sf /usr/share/java/javamail.jar \
# $RPM_BUILD_ROOT%{tomcat_app_dir}/alfresco/WEB-INF/lib/mail.jar
#Shared classes
mkdir -p $RPM_BUILD_ROOT%{extension_dir}
cp -a web-server/shared/classes/* $RPM_BUILD_ROOT%{extension_dir}/
#Has xalan.jar and serializer.jar. We can use system xalan-j2
#mkdir -p $RPM_BUILD_ROOT%{endorsed_dir}
#cp -a web-server/endorsed/serializer.jar $RPM_BUILD_ROOT%{endorsed_dir}
mkdir -p $RPM_BUILD_ROOT%{alfresco_data}
%clean
rm -rf $RPM_BUILD_ROOT
%post
#Install the system xalan-j2 package into tomcat
build-jar-repository -p -s %{endorsed_dir} xalan-j2 mysql-connector-java
%files
%defattr (-,root,tomcat,-)
#%doc README-redhat.txt
#%doc alfresco-setup.sh
%doc licenses
%attr(-,tomcat,tomcat) %dir %{alfresco_data}
%{tomcat_app_dir}/alfresco
%{tomcat_app_dir}/share
%config(noreplace) %{extension_dir}/alfresco-global.properties
%{extension_dir}/alfresco-global.properties.sample
%{extension_dir}/alfresco
#%{endorsed_dir}/*
%changelog
* Wed Sep 29 2010 Orion Poplawski 3.4.a-1
- Update to 3.4.a
* Mon Apr 12 2010 Orion Poplawski 3.3-1
- Update to 3.3
* Fri Dec 11 2009 Orion Poplawski 3.2r2-3
- Tomcat 6
* Thu Dec 10 2009 Orion Poplawski 3.2r2-2
- Include share and mobile
* Thu Dec 10 2009 Orion Poplawski 3.2r2-1
- Update to 3.2r2
* Thu Jan 8 2009 Orion Poplawski 3c-1
- Update to 3c
* Wed Sep 10 2008 Orion Poplawski 3-0.b.1
- Initial package