diff options
| author | Remi Collet <fedora@famillecollet.com> | 2013-01-12 18:26:27 +0100 | 
|---|---|---|
| committer | Remi Collet <fedora@famillecollet.com> | 2013-01-12 18:26:27 +0100 | 
| commit | 1e1e421697f43bfe8762959a4df37d2ab959be1a (patch) | |
| tree | cce80968ad4dafe6b24af6a3d7f790a28ab0dca4 | |
| parent | 22e71d8a67c5e99edfcd54f190e0f52502bd4381 (diff) | |
php-horde-ingo: new package
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | php-horde-ingo.spec | 166 | 
2 files changed, 119 insertions, 51 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..13af741 --- /dev/null +++ b/Makefile @@ -0,0 +1,4 @@ +SRCDIR := $(shell pwd) +NAME := $(shell basename $(SRCDIR)) +include ../../../common/Makefile + diff --git a/php-horde-ingo.spec b/php-horde-ingo.spec index 0b471be..122b619 100644 --- a/php-horde-ingo.spec +++ b/php-horde-ingo.spec @@ -1,6 +1,7 @@  %{!?pear_metadir: %global pear_metadir %{pear_phpdir}}  %{!?__pear: %{expand: %%global __pear %{_bindir}/pear}} -%global pear_name ingo +%global pear_name    ingo +%global pear_channel pear.horde.org  Name:           php-horde-ingo  Version:        3.0.2 @@ -8,45 +9,65 @@ Release:        1%{?dist}  Summary:        An email filter rules manager  Group:          Development/Libraries -License:        BSD-2-Clause -URL:            http://pear.horde.org/package/ingo -Source0:        http://pear.horde.org/get/%{pear_name}-%{version}.tgz +License:        BSD +URL:            http://www.horde.org/apps/ingo +Source0:        http://%{pear_channel}/get/%{pear_name}-%{version}.tgz  BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)  BuildArch:      noarch -BuildRequires:  php-pear(PEAR) +BuildRequires:  gettext +BuildRequires:  php-common >= 5.3.0 +BuildRequires:  php-pear(PEAR) >= 1.7.0 +BuildRequires:  php-channel(%{pear_channel}) +BuildRequires:  php-pear(%{pear_channel}/Horde_Role) >= 1.0.0  Requires(post): %{__pear}  Requires(postun): %{__pear} -Requires:       php-pear(PEAR) -Requires:       php-pear(pear.horde.org/horde) >= 5.0.0 -Requires:       php-pear(pear.horde.org/horde) < 6.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Auth) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Auth) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Autoloader) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Autoloader) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Core) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Core) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Exception) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Exception) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Group) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Group) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Form) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Form) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Imap_Client) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Imap_Client) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Mime) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Mime) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Perms) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Perms) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Share) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Share) < 3.0.0alpha1 -Requires:       php-pear(pear.horde.org/Horde_Util) >= 2.0.0 -Requires:       php-pear(pear.horde.org/Horde_Util) < 3.0.0alpha1 +Requires:       php-common >= 5.3.0 +# extensions required from package.xml +Requires:       php-gettext +# extensions required from phpci analysis +Requires:       php-date +Requires:       php-ldap +Requires:       php-pcre +Requires:       php-spl  Requires:       php-pear(PEAR) >= 1.7.0 -Provides:       php-pear(pear.horde.org/ingo) = %{version} -BuildRequires:  php-channel(pear.horde.org) -Requires:       php-channel(pear.horde.org) +Requires:       php-channel(%{pear_channel}) +Requires:       php-pear(%{pear_channel}/Horde_Role) >= 1.0.0 +Requires:       php-pear(%{pear_channel}/horde) >= 5.0.0 +Conflicts:      php-pear(%{pear_channel}/horde) >= 6.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Auth) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Auth) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Autoloader) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Autoloader) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Core) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Core) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Exception) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Exception) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Group) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Group) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Form) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Form) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Imap_Client) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Imap_Client) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Mime) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Mime) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Perms) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Perms) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Share) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Share) >= 3.0.0 +Requires:       php-pear(%{pear_channel}/Horde_Util) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Util) >= 3.0.0 +# Optional +Requires:       php-pear(Net_Sieve) >= 1.3.1 +Requires:       php-pear(Net_Socket) +Requires:       php-pear(%{pear_channel}/Horde_Vfs) >= 2.0.0 +Conflicts:      php-pear(%{pear_channel}/Horde_Vfs) >= 3.0.0 + +Provides:       php-pear(%{pear_channel}/%{pear_name}) = %{version} +Obsoletes:      ingo < 3 +Provides:       ingo = %{version} +  %description  Ingo is an email-filter management application. It is fully @@ -54,34 +75,66 @@ internationalized, integrated with Horde and the IMP Webmail client, and  supports both server-side (Sieve, Procmail, Maildrop) and client-side  (IMAP) message filtering. +  %prep  %setup -q -c -[ -f package2.xml ] || mv package.xml package2.xml -mv package2.xml %{pear_name}-%{version}/%{name}.xml + +cat <<EOF | tee httpd.conf +<DirectoryMatch %{pear_hordedir}/%{pear_name}/(config|lib|locale)> +     Deny from all +</DirectoryMatch> +EOF  cd %{pear_name}-%{version} +# Don't install .po and .pot files +# Remove checksum for .mo, as we regenerate them +sed -e '/%{pear_name}\.po/d' \ +    -e '/htaccess/d' \ +    -e '/%{pear_name}.mo/s/md5sum=.*name=/name=/' \ +    ../package.xml >%{name}.xml  %build  cd %{pear_name}-%{version} -# Empty build section, most likely nothing required. + +# Regenerate the locales +for po in $(find locale -name \*.po) +do +   msgfmt $po -o $(dirname $po)/$(basename $po .po).mo +done  %install +rm -rf %{buildroot}  cd %{pear_name}-%{version} -rm -rf $RPM_BUILD_ROOT -%{__pear} install --nodeps --packagingroot $RPM_BUILD_ROOT %{name}.xml +%{__pear} install --nodeps --packagingroot %{buildroot} %{name}.xml  # Clean up unnecessary files -rm -rf $RPM_BUILD_ROOT%{pear_metadir}/.??* +rm -rf %{buildroot}%{pear_metadir}/.??*  # Install XML package description -mkdir -p $RPM_BUILD_ROOT%{pear_xmldir} -install -pm 644 %{name}.xml $RPM_BUILD_ROOT%{pear_xmldir} +mkdir -p %{buildroot}%{pear_xmldir} +install -pm 644 %{name}.xml %{buildroot}%{pear_xmldir} + +# Install Apache configuration +install -Dpm 0644 ../httpd.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}.conf + +# Move configuration to /etc +mkdir -p %{buildroot}%{_sysconfdir}/horde +mv %{buildroot}%{pear_hordedir}/%{pear_name}/config \ +   %{buildroot}%{_sysconfdir}/horde/%{pear_name} +ln -s %{_sysconfdir}/horde/%{pear_name} %{buildroot}%{pear_hordedir}/%{pear_name}/config + +# Locales +for loc in locale/?? locale/??_?? +do +    lang=$(basename $loc) +    echo "%%lang(${lang%_*}) %{pear_hordedir}/%{pear_name}/$loc" +done | tee ../%{pear_name}.lang  %clean -rm -rf $RPM_BUILD_ROOT +rm -rf %{buildroot}  %post @@ -91,23 +144,34 @@ rm -rf $RPM_BUILD_ROOT  %postun  if [ $1 -eq 0 ] ; then      %{__pear} uninstall --nodeps --ignore-errors --register-only \ -        pear.horde.org/%{pear_name} >/dev/null || : +        %{pear_channel}/%{pear_name} >/dev/null || :  fi -%files +%files -f %{pear_name}.lang  %defattr(-,root,root,-)  %doc %{pear_docdir}/%{pear_name} - -  %{pear_xmldir}/%{name}.xml -# Expand this as needed to avoid owning dirs owned by our dependencies -# and to avoid unowned dirs - -%{pear_datadir}/ingo - +%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf +%attr(0770,apache,apache) %dir %{_sysconfdir}/horde/%{pear_name} +%attr(0640,apache,apache) %config %{_sysconfdir}/horde/%{pear_name}/*.dist +%attr(0660,apache,apache) %config(noreplace) %{_sysconfdir}/horde/%{pear_name}/*.php +%attr(0660,apache,apache) %config %{_sysconfdir}/horde/%{pear_name}/*.xml  %{_bindir}/ingo-convert-prefs-to-sql  %{_bindir}/ingo-convert-sql-shares-to-sqlng  %{_bindir}/ingo-postfix-policyd +%dir %{pear_hordedir}/%{pear_name} +%dir %{pear_hordedir}/%{pear_name}/locale +%{pear_hordedir}/%{pear_name}/*.php +%{pear_hordedir}/%{pear_name}/config +%{pear_hordedir}/%{pear_name}/js +%{pear_hordedir}/%{pear_name}/lib +%{pear_hordedir}/%{pear_name}/migration +%{pear_hordedir}/%{pear_name}/templates +%{pear_hordedir}/%{pear_name}/themes +%{pear_datadir}/%{pear_name} +  %changelog +* Sat Jan 12 2013 Remi Collet <RPMS@FamilleCollet.com> - 3.0.2-1 +- Initial package  | 
