%define lm_dnsdomain example.com %define lm_ldaphost localhost %define lm_ldapport 389 %define lm_ldapsuffix dc=example,dc=com Name: lemonldap-ng Summary: LemonLDAP-NG WebSSO Version: 1.2.4 Release: %mkrel 2 Group: System/Servers License: GPLv2+ URL: http://lemonldap-ng.org Source0: http://lemonldap-ng.org/download/%{name}-%{version}.tar.gz BuildArch: noarch BuildRequires: perl(Regexp::Assemble) BuildRequires: perl(Cache::Cache) BuildRequires: perl(Apache::Session) BuildRequires: perl(Net::LDAP) BuildRequires: perl(Test::Pod) >= 1.00 BuildRequires: perl(IO::String) BuildRequires: perl(MIME::Lite) BuildRequires: perl(Convert::PEM) BuildRequires: perl(Crypt::OpenSSL::Bignum) BuildRequires: perl(XML::LibXSLT) BuildRequires: perl(DBI) BuildRequires: perl(SOAP::Lite) BuildRequires: perl(XML::Simple) BuildRequires: perl(XML::XSLT) BuildRequires: perl(String::Random) BuildRequires: perl(Email::Date::Format) BuildRequires: perl(Crypt::Rijndael) BuildRequires: perl(HTML::Template) BuildRequires: perl(JSON) BuildRequires: perl(Net::CIDR::Lite) BuildRequires: perl(Config::IniFiles) BuildRequires: perl(Crypt::OpenSSL::RSA) BuildRequires: perl(Crypt::OpenSSL::X509) BuildRequires: perl(Class::Inspector) BuildRequires: perl(Test::MockObject) BuildRequires: perl(Clone) Requires: perl(Apache::Session) Requires: perl(IO::String) Requires: perl(Net::OpenID::Server) Requires: perl(AuthCAS) %description LemonLDAP::NG is a modular Web-SSO based on Apache::Session modules. It simplifies the build of a protected area with a few changes in the application. It manages both authentication and authorization and provides headers for accounting. So you can have a full AAA protection for your web space as described below. ############################################################### # Handler ############################################################### %package handler Summary: LemonLDAP-NG Handler Group: System/Servers Requires: %{name} = %{version}-%{release} Requires: apache-mod_perl %description handler This package deploys the Apache Handler. ############################################################### # Manager ############################################################## %package manager Summary: LemonLDAP-NG administration interface Group: System/Servers Requires: %{name} = %{version}-%{release} Requires: webserver %description manager This package deploys the adminsitration interface and sessions explorer. ############################################################## # Portal ############################################################## %package portal Summary: LemonLDAP-NG authentication portal Group: System/Servers Requires: %{name} = %{version}-%{release} Requires: webserver %description portal This package deploys the authentication portal. ############################################################## # Test ############################################################## %package test Summary: LemonLDAP-NG test applications Group: System/Servers Requires: %{name} = %{version}-%{release} %description test This package deploys small test applications. %prep %setup -q %build %{__make} %{?_smp_mflags} configure STORAGECONFFILE=%{_sysconfdir}/lemonldap-ng/lemonldap-ng.ini PERLOPTIONS="INSTALLDIRS=vendor" %{__make} %{?_smp_mflags} %check %make test %install rm -rf %{buildroot} %{__make} install \ DESTDIR=%{buildroot} \ PREFIX=%{_prefix} \ BINDIR=%{_datadir}/lemonldap-ng/bin \ DOCUMENTROOT=%{_localstatedir}/lib/lemonldap-ng \ EXAMPLESDIR=%{_datadir}/lemonldap-ng/examples \ HANDLERDIR=%{_localstatedir}/lib/lemonldap-ng/handler \ PORTALSKINSDIR=%{_datadir}/lemonldap-ng/portal-skins \ MANAGERSKINSDIR=%{_datadir}/lemonldap-ng/manager-skins \ STORAGECONFFILE=%{_sysconfdir}/lemonldap-ng/lemonldap-ng.ini \ TOOLSDIR=%{_datadir}/lemonldap-ng/ressources \ CONFDIR=%{_sysconfdir}/lemonldap-ng \ CRONDIR=%{_sysconfdir}/cron.d \ DATADIR=%{_localstatedir}/lib/lemonldap-ng \ DNSDOMAIN=%{lm_dnsdomain} \ LDAPHOST=%{lm_ldaphost} \ LDAPPORT=%{lm_ldapport} \ LDAPSUFFIX=%{lm_ldapsuffix} # Remove some unwanted file find %{buildroot} -name *.packlist -exec rm -f {} \; find %{buildroot} -name perllocal.pod -exec rm -f {} \; find %{buildroot} -name *.bak -exec rm -f {} \; # Set apache user in some files (see Makefile) # Note: we do not use the APACHEUSER and APACHEGROUP in make install # because it launches a 'chown', which is not permitted if RPM is not # built as root sed -i 's/nobody/apache/' %{buildroot}%{_sysconfdir}/cron.d/* sed -i 's/nobody/apache/' %{buildroot}%{_datadir}/lemonldap-ng/bin/lmConfigEditor # Minify Javascript and CSS ./scripts/minifierjs $(find %{buildroot} -name *.js) ./scripts/minifiercss $(find %{buildroot} -name *.css) # restrict write access to state directories chmod 755 %{buildroot}%{_localstatedir}/lib/lemonldap-ng/conf chmod 755 %{buildroot}%{_localstatedir}/lib/lemonldap-ng/notifications chmod 755 %{buildroot}%{_localstatedir}/lib/lemonldap-ng/sessions chmod 755 %{buildroot}%{_localstatedir}/lib/lemonldap-ng/sessions/lock # restrict read access to configuration files chmod 640 %{buildroot}%{_localstatedir}/lib/lemonldap-ng/conf/lmConf-1 chmod 640 %{buildroot}%{_sysconfdir}/lemonldap-ng/lemonldap-ng.ini # mv examples from configuration to documentation install -d -m 755 %{buildroot}%{_docdir}/%{name} mv %{buildroot}%{_sysconfdir}/lemonldap-ng/for_etc_hosts \ %{buildroot}%{_docdir}/%{name} mv %{buildroot}%{_sysconfdir}/lemonldap-ng/*-apache2.conf \ %{buildroot}%{_docdir}/%{name} %files %doc changelog COPYING INSTALL README %{_mandir}/man3/Lemonldap::NG::Common*.3pm* %{perl_vendorlib}/Lemonldap/NG/Common.pm %{perl_vendorlib}/Lemonldap/NG/Common %{perl_vendorlib}/auto/Lemonldap/NG/Common %dir %{_sysconfdir}/lemonldap-ng %dir %{_datadir}/lemonldap-ng %dir %{_datadir}/lemonldap-ng/bin %{_datadir}/lemonldap-ng/bin/convertConfig %{_datadir}/lemonldap-ng/bin/lmMigrateConfFiles2ini %dir %{_datadir}/lemonldap-ng/examples %{_datadir}/lemonldap-ng/ressources %attr(-,root,apache) %config(noreplace) %{_sysconfdir}/lemonldap-ng/lemonldap-ng.ini %attr(-,apache,apache) %dir %{_localstatedir}/lib/lemonldap-ng %attr(-,apache,apache) %dir %{_localstatedir}/lib/lemonldap-ng/conf %attr(-,apache,apache) %dir %{_localstatedir}/lib/lemonldap-ng/sessions %attr(-,apache,apache) %dir %{_localstatedir}/lib/lemonldap-ng/sessions/lock %attr(-,apache,apache) %config(noreplace) %{_localstatedir}/lib/lemonldap-ng/conf/lmConf-1 %files handler %{_sysconfdir}/cron.d/lemonldap-ng-handler %{_datadir}/lemonldap-ng/bin/purgeLocalCache %{_datadir}/lemonldap-ng/examples/handler %{_localstatedir}/lib/lemonldap-ng/handler %{_mandir}/man3/Lemonldap::NG::Handler*.3pm* %{perl_vendorlib}/Lemonldap/NG/Handler.pm %{perl_vendorlib}/Lemonldap/NG/Handler %{perl_vendorlib}/auto/Lemonldap/NG/Handler %files manager %{_datadir}/lemonldap-ng/bin/lmConfigEditor %{_datadir}/lemonldap-ng/manager-skins %{_datadir}/lemonldap-ng/examples/manager %{_localstatedir}/lib/lemonldap-ng/manager %{_localstatedir}/lib/lemonldap-ng/doc %{_mandir}/man3/Lemonldap::NG::Manager*.3pm* %{perl_vendorlib}/Lemonldap/NG/Manager.pm %{perl_vendorlib}/Lemonldap/NG/Manager %{perl_vendorlib}/auto/Lemonldap/NG/Manager %files portal %{_sysconfdir}/cron.d/lemonldap-ng-portal %{_datadir}/lemonldap-ng/bin/buildPortalWSDL %{_datadir}/lemonldap-ng/bin/purgeCentralCache %{_datadir}/lemonldap-ng/examples/portal %{_datadir}/lemonldap-ng/portal-skins %{_localstatedir}/lib/lemonldap-ng/portal %{_mandir}/man3/Lemonldap::NG::Portal*.3pm* %{perl_vendorlib}/Lemonldap/NG/Portal.pm %{perl_vendorlib}/Lemonldap/NG/Portal %{perl_vendorlib}/auto/Lemonldap/NG/Portal %files test %{_docdir}/%{name}/*-apache2.conf %{_docdir}/%{name}/for_etc_hosts %{_localstatedir}/lib/lemonldap-ng/test %changelog * Sat Oct 19 2013 umeabot <umeabot> 1.2.4-2.mga4 + Revision: 523591 - Mageia 4 Mass Rebuild * Thu May 23 2013 kharec <kharec> 1.2.4-1.mga4 + Revision: 425139 - update to 1.2.4 * Fri Feb 15 2013 pterjan <pterjan> 1.2.3-2.mga3 + Revision: 398515 - Disable broken parallel make install, it is very fast anyway * Sun Feb 10 2013 kharec <kharec> 1.2.3-1.mga3 + Revision: 397689 - new bugfix release 1.2.3 - License update - Patch0 merged by upstream - new BR * Sat Jan 12 2013 umeabot <umeabot> 1.2.2-3.mga3 + Revision: 356748 - Mass Rebuild - https://wiki.mageia.org/en/Feature:Mageia3MassRebuild * Sun Dec 30 2012 kharec <kharec> 1.2.2-2.mga3 + Revision: 336356 - Add a patch to add SAML signatures checks to lasso transactions (security fix) * Tue Sep 18 2012 kharec <kharec> 1.2.2-1.mga3 + Revision: 295983 - bugfix release 1.2.2 + guillomovitch <guillomovitch> - merge doc package with manager package, this is actually mandatory part of it - fix documentation location - clearer permissions set on /var/lib/lemonldap-ng directory - hardcode apache user and group - use %%attr, not %%defattr, to set file attributes - we never shipped lemonldap previously, so we don't need an upgrade procedure - less macros, more readability - no need to explicitely tag man pages as documentation - according to the documentation, only the handlers require mod_perl - reverse the dependencies logic: the various components requires the base package - merge conf package with base package - syntax cleanup - don't ship perl modules in separate packages, they are not general-purpose perl libraries * Wed Aug 29 2012 kharec <kharec> 1.2.1-1.mga3 + Revision: 285386 - Add more BR - Add BR on perl-XML-XSLT - Patch1 was applied in 1.2.1 by upstream - New bugfix version 1.2.1 + guillomovitch <guillomovitch> - ship example configuration files in test package, as documentation - use apache native rpm macros - spec cleanup - new version - spec cleanup - enable tests * Sun Jun 24 2012 kharec <kharec> 1.2.0-2.mga3 + Revision: 263287 - P0: fix a typo that breaks --latest - P1: Fix LDAP groups session store - increase release * Mon Jun 18 2012 kharec <kharec> 1.2.0-1.mga3 + Revision: 261733 - disable %%check because of defined() in perl test files - new version 1.2.0 - complete rewrite of the specfile * Sun Jun 17 2012 kharec <kharec> 1.1.2-2.mga3 + Revision: 261119 - Modules are requires, not buildrequires * Sun Jun 17 2012 kharec <kharec> 1.1.2-1.mga3 + Revision: 261109 - Add a specfile to work with others perl lemonldap modules - update to 1.1.2 + ennael <ennael> - imported package lemonldap-ng * Tue May 11 2010 Nicolas Vigier <nvigier@mandriva.com> 1.0-0.3.rc1mdv2011.0 + Revision: 544496 - mark more files as config files * Wed Apr 28 2010 Nicolas Vigier <nvigier@mandriva.com> 1.0-0.2.rc1mdv2010.1 + Revision: 540437 - set make variables to fix location of config file * Thu Apr 08 2010 Nicolas Vigier <nvigier@mandriva.com> 1.0-0.1.rc1mdv2010.1 + Revision: 533160 - new version * Fri Sep 11 2009 Thierry Vignaud <tv@mandriva.org> 0.9.2-3mdv2010.0 + Revision: 438496 - rebuild * Wed Apr 08 2009 Nicolas Vigier <nvigier@mandriva.com> 0.9.2-2mdv2009.1 + Revision: 365128 - rebuild * Wed Dec 10 2008 Nicolas Vigier <nvigier@mandriva.com> 0.9.2-1mdv2009.1 + Revision: 312550 - import lemonldap-ng