# Some sort of "detection" of suse %{?suse_version:%define suse 1} %{!?suse_version:%define suse 0} # Define Packagename, e.g.: # rpmbuild --rebuild --define 'sourcename gosa' gosa.srpm %{!?sourcename:%define sourcename %{name}-%{version}} # # Distribution # Summary: Web Based LDAP Administration Program Name: gosa Version: 2.5.11a Release: 1 License: GPL Source: http://oss.gonicus.de/pub/gosa/%{sourcename}.tar.bz2 URL: http://www.gosa-project.org Group: System/Administration Vendor: GONICUS GmbH Packager: Lars Scheiter Buildarch: noarch %if %{suse} Requires: apache2,apache2-mod_php5 >= 5.2.0,php5,php5-gd,php5-ldap,php5-mcrypt,php5-mysql,php5-imap,php5-iconv,php5-mbstring,php5-gettext,php5-mhash,php5-snmp,php5-posix,fping,ImageMagick %else Requires: httpd,php,php-ldap,php-imap,php-snmp,php-mysql,php-mbstring,ImageMagick %endif BuildRoot: %{_tmppath}/%{name}-%{version}-root BuildArch: noarch %define confdir /etc/%{name} %if %{suse} %{echo:Building SuSE rpm} %define apacheuser wwwrun %define apachegroup root %define webconf /etc/apache2/conf.d/ %define docdir /usr/share/doc/packages/gosa %else %{echo:Building other rpm} %define apacheuser apache %define apachegroup apache %define webconf /etc/httpd/conf.d/ %define docdir /usr/share/doc/gosa-%{version} %endif %description GOsa is a combination of system-administrator and end-user web interface, designed to handle LDAP based setups. Provided is access to posix, shadow, samba, proxy, fax, and kerberos accounts. It is able to manage the postfix/cyrus server combination and can write user adapted sieve scripts. %package schema Group: System/Administration Summary: Schema Definitions for the GOSA package %if %{suse} Requires: openldap2 >= 2.2.0 %else Requires: openldap-servers >= 2.2.0 %endif Obsoletes: gosa-ldap %description schema Contains the Schema definition files for the GOSA admin package. This one is needed on the master LDAP and all slave LDAP Servers. %package mkntpasswd Group: System/Administration Summary: Schema Definitions for the GOSA package %if %{suse} Requires: perl-Crypt-SmbHash %else Requires: perl-Crypt-SmbHash >= 0.02 %endif %description mkntpasswd Wrapper Script around perl to create Samba Hashes on the fly, added for completeness only. If in doubt use sambas "native" mkntpwd tool to generate hashes for GOsa. %package help-en Group: System/Administration Summary: English online manual for GOSA package Requires: gosa >= %{version} %description help-en English online manual page for GOSA package %package help-de Group: System/Administration Summary: German localized online manual for GOSA package Requires: gosa >= %{version} %description help-de German localized online manual page for GOSA package %package help-fr Group: System/Administration Summary: French localized online manual for GOSA package Requires: gosa >= %{version} %description help-fr French localized online manual page for GOSA package %package help-nl Group: System/Administration Summary: Dutch localized online manual for GOSA package Requires: gosa >= %{version} %description help-nl Dutch localized online manual page for GOSA package %prep %setup -q -n %{sourcename} find . -depth -name CVS -type d | xargs rm -rf %build %install # Create buildroot mkdir -p %{buildroot}/usr/share/gosa # Copy DIRS="doc ihtml plugins html include setup locale" for i in $DIRS; do \ cp -ua $i %{buildroot}/usr/share/gosa/$i ; \ done mkdir %{buildroot}/usr/bin cp bin/mkntpasswd %{buildroot}/usr/bin/ # Create files for temporary stuff for i in compile config cache; do \ mkdir -p %{buildroot}/var/spool/gosa/$i ; \ done # Cleanup manual dirs for i in admin devel; do \ rm -rf %{buildroot}/usr/share/gosa/doc/guide/$i ; \ done # Remove (some) unneeded files for i in gen_locale.sh gen_online_help.sh gen_function_list.php update.sh; do \ rm -rf %{buildroot}/usr/share/gosa/$i ; \ done # Cleanup lyx warnings find %{buildroot}/usr/share/gosa -name WARNINGS |xargs rm # Cleanup guide rm -rf %{buildroot}/usr/share/gosa/doc/guide/user/*/lyx-source # Copy default config mkdir -p %{buildroot}%{confdir} mkdir -p %{buildroot}%{webconf} cat > %{buildroot}%{webconf}/gosa_include.conf < Options None AllowOverride None Order allow,deny Allow from all # Set alias to gosa Alias /gosa /usr/share/gosa/html EOF mkdir -p %{buildroot}/etc/openldap/schema/gosa mv contrib/openldap/*.schema %{buildroot}/etc/openldap/schema/gosa sed 's%"CONFIG_TEMPLATE_DIR", "../contrib/"%"CONFIG_TEMPLATE_DIR", "%{docdir}/"%g' %{buildroot}/usr/share/gosa/include/functions.inc > %{buildroot}/usr/share/gosa/include/functions.inc.new mv -f %{buildroot}/usr/share/gosa/include/functions.inc.new %{buildroot}/usr/share/gosa/include/functions.inc mv -f doc manual mkdir -p %{buildroot}/etc/gosa/vacation mv -f %{buildroot}/usr/share/gosa/plugins/personal/mail/sieve-*.txt %{buildroot}/etc/gosa mkdir -p %{buildroot}/usr/share/doc/gosa-%{version} rm -rf %{buildroot}/usr/share/gosa/contrib #rm -rf %{buildroot}/usr/share/gosa/doc #rmdir contrib/openldap bzip2 -9 contrib/opensides/goSamba.pl cp contrib/encodings %{buildroot}/etc/gosa %clean rm -rf %{buildroot} %post # Add shells file to /etc/gosa /bin/cp /etc/shells /etc/gosa %pre # Cleanup compile dir on updates, always exit cleanly even on errors [ -d /var/spool/gosa ] && rm -rf /var/spool/gosa/* ; exit 0 %postun # Remove temporary files, just to be sure [ -d /var/spool/gosa ] && rm -rf /var/spool/gosa/* ; exit 0 %files %defattr(-,%{apacheuser},%{apachegroup}) %doc %attr(-,root,root) AUTHORS TODO README README.safemode Changelog COPYING INSTALL FAQ %doc %attr(-,root,root) contrib/altlinux contrib/fix_config.sh contrib/gosa.conf contrib/mysql contrib/opensides %doc %attr(-,root,root) contrib/patches contrib/scripts contrib/vacation_example.txt contrib/demo.ldif contrib/openldap %config(noreplace) %attr(0600,%{apacheuser},%{apachegroup}) %{webconf}/gosa_include.conf %config(noreplace) %attr(0700,%{apacheuser},%{apachegroup}) /etc/gosa %attr(0700, %{apacheuser}, %{apachegroup}) /var/spool/gosa %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/setup %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/html %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/ihtml %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/include %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/locale %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/plugins %attr(0744, %{apacheuser}, %{apachegroup}) /usr/share/gosa/doc/guide.xml %files schema %defattr(-,root,root) %doc COPYING AUTHORS README contrib/demo.ldif contrib/openldap /etc/openldap/schema/gosa %files mkntpasswd %defattr(-,root,root) /usr/bin/mkntpasswd %files help-en %defattr(-,root,root) /usr/share/gosa/doc/guide/user/en %files help-de %defattr(-,root,root) /usr/share/gosa/doc/guide/user/de %files help-fr %defattr(-,root,root) /usr/share/gosa/doc/guide/user/fr %files help-nl %defattr(-,root,root) /usr/share/gosa/doc/guide/user/nl %changelog * Tue Jun 12 2007 Lars Scheiter 2.5.11a - New upstream - Added encodings file - Added SuSE dependency for needed php5 >= 5.2.0, and modules - Fixed URLs to GOsa packages and homepage * Wed May 16 2007 Lars Scheiter 2.5.11 - New upstream - Added new setup * Wed Apr 11 2007 Lars Scheiter 2.5.10 - New upstream - Added new subpackage mkntpasswd - Remove perl dependencies off of GOsa main package * Tue Mar 6 2007 Lars Scheiter 2.5.9 - New upstream - fixed typo in updateprocess * Mon Jan 15 2007 Lars Scheiter 2.5.8 - New upstream release with security fixes * Wed Dec 20 2006 Lars Scheiter 2.5.7 - New upstream - %pre and %postun always end successfully now, even on errors * Fri Nov 17 2006 Lars Scheiter 2.5.6 - New upstream - Cleanup temporary dir after package removal - Cleanup temporary dir before update * Thu Sep 28 2006 Lars Scheiter 2.5.4 - New upstream version - Downgraded SuSE dependencies to php4 * Wed Jun 21 2006 Lars Scheiter 2.5.1 - New upstream version * Tue May 30 2006 Lars Scheiter 2.5 - Updated RedHat dependencies - New upstream version - Spelling errors fixed ;) - Seperation of online manual * Mon Dec 19 2005 Lars Scheiter 2.4-2 - Updated SuSE dependencies to php5 * Mon Nov 21 2005 Lars Scheiter 2.4 - New upstream version - Removed %doc for postgresql and openexchange * Wed Jun 01 2005 Lars Scheiter 2.4beta1 - New upstream version - Added gosa.conf to contrib dir - Rearranged documentation stuff - Updated dependencies - compress some files * Mon Feb 21 2005 Lars Scheiter 2.3 - Update version to 2.3 (upstream) * Mon Dec 13 2004 Lars Scheiter 2.2-2 - Optionally allow different sourcenames * Mon Nov 22 2004 Lars Scheiter 2.2 - Update to 2.2 (upstream) - reintroduction of suse detection - small fixes - Corrected URL - Synchronize schema package name with debian * Mon May 19 2004 Levente Farkas 2.1.1 - update to 2.1.1 * Mon Apr 19 2004 Levente Farkas 2.1 - update to 2.1 * Fri Apr 16 2004 Levente Farkas 2.1 - minor fixes - update to 2.1rc2 * Tue Jan 24 2004 Henning P. Schmiedehausen 2.1-2t - bumped to 2.1beta2 - first INTERMETA internal build * Mon Oct 20 2003 Lars Scheiter - Update to new upstream release (2.0rc1) * Fri Oct 17 2003 Lars Scheiter - First build of GOsa as an RPM, should work on SuSE and RedHat