lemonldap-ng.spec 27 KB
Newer Older
1 2 3 4
#==============================================================================
# Specification file for LemonLDAP::NG
#
# Install LemonLDAP::NG modules, htdocs and scripts
5 6
# Authority: dries
# Upstream: Xavier Guimard <x,guimard$free,fr>
7 8 9 10 11
#==============================================================================

#==============================================================================
# Variables
#==============================================================================
12 13 14 15 16 17 18 19
%global real_name lemonldap-ng
%global real_version 2.0.0
%global cpan_version 2.0.0
%global cpan_common_version  %{cpan_version}
%global cpan_handler_version %{cpan_version}
%global cpan_manager_version %{cpan_version}
%global cpan_portal_version  %{cpan_version}

20
%global lm_prefix %{_prefix}
21 22 23 24 25
%global lm_sharedir %{_datadir}/lemonldap-ng
%global lm_examplesdir %{lm_sharedir}/examples
%global lm_vardir %{_localstatedir}/lib/lemonldap-ng
%global lm_confdir %{_sysconfdir}/lemonldap-ng
%global lm_storagefile %{lm_confdir}/lemonldap-ng.ini
26

27
# Apache configuration directory
28
%if 0%{?rhel}%{?fedora}
29
%global apache_confdir %{_sysconfdir}/httpd/conf.d
30
%else
31
%global apache_confdir %{_sysconfdir}/apache2/conf.d
32
%endif
33 34

# Apache User and Group
35
%if 0%{?rhel}%{?fedora}
36 37
%global lm_apacheuser apache
%global lm_apachegroup apache
38
%else
39 40
%global lm_apacheuser wwwrun
%global lm_apachegroup www
41
%endif
42

Clément OUDOT's avatar
Clément OUDOT committed
43 44
# Apache version
%if 0%{?rhel} >= 7
45
%global apache_version 2.4
Clément OUDOT's avatar
Clément OUDOT committed
46
%else
47
%global apache_version 2
Clément OUDOT's avatar
Clément OUDOT committed
48 49
%endif

50
%global lm_dnsdomain example.com
51 52 53 54 55

#==============================================================================
# Main package
#==============================================================================
Name:           %{real_name}
56
Version:        %{real_version}
Clément OUDOT's avatar
Clément OUDOT committed
57
Release:        1%{?dist}
58
Summary:        LemonLDAP-NG WebSSO
Xavier Bachelot's avatar
Xavier Bachelot committed
59
License:        GPLv2+
Clément OUDOT's avatar
Clément OUDOT committed
60
URL:            http://lemonldap-ng.org
61
Source0:        https://release.ow2.org/lemonldap/%{name}-%{version}.tar.gz
62
BuildArch:      noarch
63

Clément OUDOT's avatar
Clément OUDOT committed
64
BuildRequires:  perl(Apache::Session)
65
BuildRequires:  perl(Authen::Captcha)
Clément OUDOT's avatar
Clément OUDOT committed
66 67 68
BuildRequires:  perl(Cache::Cache)
BuildRequires:  perl(Class::Inspector)
BuildRequires:  perl(Clone)
Clément OUDOT's avatar
Clément OUDOT committed
69
BuildRequires:  perl(Config::IniFiles)
Xavier Bachelot's avatar
Xavier Bachelot committed
70
BuildRequires:  perl(Convert::Base32)
71
BuildRequires:  perl(Convert::PEM)
Yadd's avatar
Yadd committed
72
BuildRequires:  perl(Crypt::OpenSSL::Bignum)
Clément OUDOT's avatar
Clément OUDOT committed
73 74
BuildRequires:  perl(Crypt::OpenSSL::RSA)
BuildRequires:  perl(Crypt::OpenSSL::X509)
Clément OUDOT's avatar
Clément OUDOT committed
75
BuildRequires:  perl(Crypt::Rijndael)
Clément OUDOT's avatar
Clément OUDOT committed
76
BuildRequires:  perl(Digest::SHA)
Clément OUDOT's avatar
Clément OUDOT committed
77 78
BuildRequires:  perl(Email::Date::Format)
BuildRequires:  perl(Email::Sender)
Clément OUDOT's avatar
Clément OUDOT committed
79
BuildRequires:  perl(Env)
Clément OUDOT's avatar
Clément OUDOT committed
80 81 82 83 84 85 86
BuildRequires:  perl(ExtUtils::MakeMaker)
BuildRequires:  perl(HTML::Template)
BuildRequires:  perl(IO::String)
BuildRequires:  perl(JSON)
BuildRequires:  perl(MIME::Entity)
BuildRequires:  perl(Mouse)
BuildRequires:  perl(Net::LDAP)
87
BuildRequires:  perl(Plack)
Clément OUDOT's avatar
Clément OUDOT committed
88 89
BuildRequires:  perl(Regexp::Assemble)
BuildRequires:  perl(Regexp::Common)
90 91
# https://bugzilla.redhat.com/show_bug.cgi?id=1644266
#BuildRequires:  perl(Sentry::Raven)
Clément OUDOT's avatar
Clément OUDOT committed
92 93 94 95 96 97 98
BuildRequires:  perl(SOAP::Lite)
BuildRequires:  perl(String::Random)
BuildRequires:  perl(Test::MockObject)
BuildRequires:  perl(Test::Pod) >= 1.00
BuildRequires:  perl(Unicode::String)
BuildRequires:  perl(XML::LibXSLT)
BuildRequires:  perl(XML::Simple)
99
BuildRequires:  systemd
100

101 102 103 104 105 106
Requires: lemonldap-ng-conf = %{real_version}-%{release}
Requires: lemonldap-ng-doc = %{real_version}-%{release}
Requires: lemonldap-ng-handler = %{real_version}-%{release}
Requires: lemonldap-ng-manager = %{real_version}-%{release}
Requires: lemonldap-ng-portal = %{real_version}-%{release}
Requires: lemonldap-ng-test = %{real_version}-%{release}
107

108 109 110 111 112 113 114 115 116 117 118 119
# Setup requires filtering
%if 0%{?rhel} == 6
%filter_from_requires /perl(lasso/d; /perl(Net::OpenID/d; /perl(Web::ID/d; /perl(XML::LibXML/d; /perl(XML::LibXSLT/d; /perl(Convert::Base32/d; /perl(Sentry::Raven/d;
%filter_setup
%endif

%if 0%{?fedora} || 0%{?rhel} >= 7
%{?perl_default_filter}
%global __requires_exclude perl\\(lasso|perl\\(Net::OpenID|perl\\(Web::ID|perl\\(XML::LibXML|perl\\(XML::LibXSLT|perl\\(Convert::Base32|perl\\(Sentry::Raven
%endif


120
%description
121
LemonLdap::NG is a modular Web-SSO based on Apache::Session modules. It
Clément OUDOT's avatar
Clément OUDOT committed
122 123 124 125
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.
126

127 128 129
#==============================================================================
# Conf
#==============================================================================
130
%package conf
131
Summary:        LemonLDAP-NG configuration
132 133 134 135
Requires:       perl(Apache::Session)
Requires:       perl(IO::String)
Requires:       perl(Lemonldap::NG::Common) = %{cpan_common_version}
Requires:       perl(mod_perl2)
136
%if 0%{?rhel}%{?fedora}
137 138 139 140
Requires(post):  httpd
%else
Requires(post):  apache2
%endif
141

142 143 144
#==============================================================================
# Configuration
#==============================================================================
145
%description conf
146
This package contains the main storage configuration.
147 148 149 150
Requires:       perl(Apache::Session)
Requires:       perl(IO::String)
Requires:       perl(Lemonldap::NG::Common) = %{cpan_common_version}
Requires:       perl(mod_perl2)
151
%if 0%{?rhel}%{?fedora}
152 153 154 155
Requires(post):  httpd
%else
Requires(post):  apache2
%endif
156

157 158 159
#==============================================================================
# Documentation
#==============================================================================
160
%package doc
161
Summary:        LemonLDAP-NG documentation
162
Requires:       lemonldap-ng-conf = %{real_version}-%{release}
163

164
%description doc
165 166 167
This package contains html documentation.

#==============================================================================
168 169
# Handler
#==============================================================================
170
%package handler
171
Summary:        LemonLDAP-NG handler
172
%if 0%{?rhel}%{?fedora}
173 174 175 176
Requires:       crontabs
%endif
Requires:       lemonldap-ng-conf = %{real_version}-%{release}
Requires:       perl(Lemonldap::NG::Handler) = %{cpan_handler_version}
177

178
%description handler
179 180 181 182 183
This package deploys the Apache Handler.

#==============================================================================
# Manager
#==============================================================================
184
%package manager
185
Summary:        LemonLDAP-NG administration interface
186 187
Requires:       lemonldap-ng-conf = %{real_version}-%{release}
Requires:       perl(Lemonldap::NG::Manager) = %{cpan_manager_version}
188

189
%description manager
190
This package deploys the administration interface and sessions explorer.
191 192 193 194

#==============================================================================
# Portal
#==============================================================================
195
%package portal
196
Summary:        LemonLDAP-NG authentication portal
197
%if 0%{?rhel}%{?fedora}
198 199 200 201
Requires:       crontabs
%endif
Requires:       lemonldap-ng-conf = %{real_version}-%{release}
Requires:       perl(Lemonldap::NG::Portal) = %{cpan_portal_version}
202

203
%description portal
204 205 206 207
This package deploys the authentication portal.

#==============================================================================
# Test
208
#==============================================================================
209
%package test
210
Summary:        LemonLDAP-NG test applications
211
Requires:       lemonldap-ng-conf = %{real_version}-%{release}
212

213
%description test
214 215
This package deploys small test applications.

216 217 218
#==============================================================================
# FastCGI Server
#==============================================================================
219
%package fastcgi-server
220
Summary:        LemonLDAP-NG FastCGI Server
221
Requires:       lemonldap-ng-conf = %{real_version}-%{release}
222
%if 0%{?rhel}%{?fedora}
223 224 225 226 227
Requires:       mod_fcgid
%else
Requires:       apache2-mod_fcgid
%endif
Requires:       perl(FCGI::ProcManager)
228

229
%description fastcgi-server
230 231
This package deploys files needed to start a FastCGI server.

Clément OUDOT's avatar
Clément OUDOT committed
232 233 234
#==============================================================================
# UWSGI Application
#==============================================================================
235
%package uwsgi-app
Clément OUDOT's avatar
Clément OUDOT committed
236
Summary:        LemonLDAP-NG UWSGI Application
Xavier Bachelot's avatar
Xavier Bachelot committed
237
Requires:       uwsgi-plugin-psgi
Clément OUDOT's avatar
Clément OUDOT committed
238

239
%description uwsgi-app
Clément OUDOT's avatar
Clément OUDOT committed
240 241 242
LemonLDAP::NG uWSGI server provides a replacement to LemonLDAP::NG FastCGI
server, using uWSGI instead of Plack FCGI.

243 244 245 246
#==============================================================================
# CPAN modules - Common
#==============================================================================
%package -n perl-Lemonldap-NG-Common
247
Summary:        LemonLDAP-NG Common Modules
Clément OUDOT's avatar
Clément OUDOT committed
248
Version:        %{cpan_common_version}
249

250
%description -n perl-Lemonldap-NG-Common
Xavier Bachelot's avatar
Xavier Bachelot committed
251 252
This package installs the configuration libraries used by other LemonLDAP::NG
modules.
253 254

#==============================================================================
255
# CPAN modules - Handler
256 257 258
#==============================================================================
%package -n perl-Lemonldap-NG-Handler
Summary:        LemonLDAP-NG Handler Modules
Clément OUDOT's avatar
Clément OUDOT committed
259
Version:        %{cpan_handler_version}
260 261

%description -n perl-Lemonldap-NG-Handler
Xavier Bachelot's avatar
Xavier Bachelot committed
262 263
This package installs the Apache module part (handler) used to protect web
areas.
264 265

#==============================================================================
266
# CPAN modules -  Manager
267 268 269
#==============================================================================
%package -n perl-Lemonldap-NG-Manager
Summary:        LemonLDAP-NG Manager Modules
Clément OUDOT's avatar
Clément OUDOT committed
270
Version:        %{cpan_manager_version}
271 272 273 274 275

%description -n perl-Lemonldap-NG-Manager
This package installs the administration interface (manager).

#==============================================================================
276
# CPAN modules - Portal
277 278 279
#==============================================================================
%package -n perl-Lemonldap-NG-Portal
Summary:        LemonLDAP-NG Portal Modules
Clément OUDOT's avatar
Clément OUDOT committed
280
Version:        %{cpan_portal_version}
281 282 283 284

%description -n perl-Lemonldap-NG-Portal
This package installs the authentication portal.

285
#==============================================================================
286
# Source preparation
287
#==============================================================================
288
%prep
289 290
%setup -n %{real_name}-%{real_version} -q

Clément OUDOT's avatar
Clément OUDOT committed
291

292
#==============================================================================
293
# Building
294
#==============================================================================
295
%build
Xavier Bachelot's avatar
Xavier Bachelot committed
296 297 298
%{__make} %{?_smp_mflags} configure \
    STORAGECONFFILE=%{lm_storagefile} \
    PERLOPTIONS="INSTALLDIRS=vendor"
299
%{__make} %{?_smp_mflags}
300

301
#==============================================================================
302
# Installation
303
#============================================================================
304
%install
305
%{__make} %{?_smp_mflags} install \
Xavier Bachelot's avatar
Xavier Bachelot committed
306 307 308 309
    DESTDIR=%{buildroot} \
    PREFIX=%{lm_prefix} \
    BINDIR=%{lm_sharedir}/bin \
    SBINDIR=%{lm_sharedir}/sbin \
310
    FASTCGISOCKDIR=%{_rundir}/llng-fastcgi-server \
Xavier Bachelot's avatar
Xavier Bachelot committed
311 312 313 314 315 316 317 318 319
    DOCUMENTROOT=%{lm_vardir} \
    EXAMPLESDIR=%{lm_examplesdir} \
    HANDLERDIR=%{lm_vardir}/handler \
    MANAGERDIR=%{lm_sharedir}/manager \
    STORAGECONFFILE=%{lm_storagefile} \
    TOOLSDIR=%{lm_sharedir}/ressources \
    CONFDIR=%{lm_confdir} \
    CRONDIR=%{_sysconfdir}/cron.d \
    DATADIR=%{lm_vardir} \
320 321
    INITDIR=%{_sysconfdir}/init.d \
    ETCDEFAULTDIR=%{_sysconfdir}/default \
Xavier Bachelot's avatar
Xavier Bachelot committed
322 323
    DNSDOMAIN=%{lm_dnsdomain} \
    APACHEVERSION=%{apache_version} \
324
    UWSGIYAMLDIR=%{_sysconfdir}/uwsgi/apps-available \
Xavier Bachelot's avatar
Xavier Bachelot committed
325 326
    LLNGAPPDIR=%{lm_sharedir}/llng-server \
    PROD=yes
327

328
# Remove some unwanted files
329 330 331
find %{buildroot} -name .packlist -exec rm -f {} \;
find %{buildroot} -name perllocal.pod -exec rm -f {} \;
find %{buildroot} -name *.bak -exec rm -f {} \;
332

333 334
# Install files for FastCGI Server
mkdir -p %{buildroot}%{_unitdir}
Xavier Bachelot's avatar
Xavier Bachelot committed
335 336 337 338 339 340
install -m644 fastcgi-server/systemd/llng-fastcgi-server.service \
    %{buildroot}%{_unitdir}
sed -i 's:__FASTCGISOCKDIR__:%{_rundir}/llng-fastcgi-server:' \
    %{buildroot}%{_unitdir}/llng-fastcgi-server.service
sed -i 's:__SBINDIR__:%{lm_sharedir}/sbin:' \
    %{buildroot}%{_unitdir}/llng-fastcgi-server.service
341
rm -f %{buildroot}%{_sysconfdir}/init.d/llng-fastcgi-server
342 343

mkdir -p %{buildroot}%{_tmpfilesdir}
Xavier Bachelot's avatar
Xavier Bachelot committed
344 345 346 347 348 349 350 351
install -m644 fastcgi-server/systemd/llng-fastcgi-server.tmpfile \
    %{buildroot}%{_tmpfilesdir}/llng-fastcgi-server.conf
sed -i 's:__FASTCGISOCKDIR__:%{_rundir}/llng-fastcgi-server:' \
    %{buildroot}%{_tmpfilesdir}/llng-fastcgi-server.conf
sed -i 's:__USER__:%{lm_apacheuser}:' \
    %{buildroot}%{_tmpfilesdir}/llng-fastcgi-server.conf
sed -i 's:__GROUP__:%{lm_apachegroup}:' \
    %{buildroot}%{_tmpfilesdir}/llng-fastcgi-server.conf
352

Clément OUDOT's avatar
Clément OUDOT committed
353
# UWSGI Application
354
mkdir -p %{buildroot}%{_sysconfdir}/uwsgi/apps-available
Clément OUDOT's avatar
Clément OUDOT committed
355 356
mkdir -p %{buildroot}%{lm_sharedir}/llng-server

Clément OUDOT's avatar
Clément OUDOT committed
357
# Set apache user in some files (see Makefile)
Clément OUDOT's avatar
Clément OUDOT committed
358 359 360
# 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
Clément OUDOT's avatar
Clément OUDOT committed
361
sed -i 's/nobody/%{lm_apacheuser}/' %{buildroot}%{_sysconfdir}/cron.d/*
Xavier Bachelot's avatar
Xavier Bachelot committed
362 363 364 365 366 367
sed -i 's/nobody/%{lm_apacheuser}/' \
    %{buildroot}%{lm_sharedir}/bin/lmConfigEditor
sed -i 's/nobody/%{lm_apacheuser}/g' \
    %{buildroot}%{lm_sharedir}/bin/lemonldap-ng-cli
sed -i 's/nobody/%{lm_apacheuser}/g' \
    %{buildroot}%{_sysconfdir}/default/llng-fastcgi-server
368

369
# Set UNIX rights
Clément OUDOT's avatar
Clément OUDOT committed
370
mkdir -p %{buildroot}%{lm_vardir}/sessions/lock
371
mkdir -p %{buildroot}%{lm_vardir}/psessions/lock
372 373 374 375 376
chmod 750 %{buildroot}%{lm_vardir}/conf
chmod 640 %{buildroot}%{lm_vardir}/conf/*
chmod 640 %{buildroot}%{lm_storagefile}
chmod 770 %{buildroot}%{lm_vardir}/sessions
chmod 770 %{buildroot}%{lm_vardir}/sessions/lock
377 378
chmod 770 %{buildroot}%{lm_vardir}/psessions
chmod 770 %{buildroot}%{lm_vardir}/psessions/lock
379
chmod 770 %{buildroot}%{lm_vardir}/notifications
380
chmod 770 %{buildroot}%{lm_vardir}/captcha
381
chmod 775 %{buildroot}%{lm_sharedir}/sbin/llng-fastcgi-server
Clément OUDOT's avatar
Clément OUDOT committed
382

Clément OUDOT's avatar
Clément OUDOT committed
383
# Touch for ghost
384 385 386 387
mkdir -p %buildroot%{apache_confdir}
touch %buildroot%{apache_confdir}/z-lemonldap-ng-handler.conf
touch %buildroot%{apache_confdir}/z-lemonldap-ng-manager.conf
touch %buildroot%{apache_confdir}/z-lemonldap-ng-portal.conf
388
touch %buildroot%{apache_confdir}/z-lemonldap-ng-test.conf
389

390 391 392 393
#==============================================================================
# Run test
#==============================================================================
%check
Xavier Bachelot's avatar
Xavier Bachelot committed
394 395 396 397 398 399
sed -i 's:^dirName.*:dirName = %{buildroot}%{lm_vardir}/conf:' \
    %{buildroot}%{lm_storagefile}
%{__make} %{?_smp_mflags} test \
    LLNG_DEFAULTCONFFILE=%{buildroot}%{lm_storagefile}
sed -i 's:^dirName.*:dirName = %{lm_vardir}/conf:' \
    %{buildroot}%{lm_storagefile}
400

401
#==============================================================================
402
# Post Installation
403
#==============================================================================
404
%post conf
Clément OUDOT's avatar
Clément OUDOT committed
405 406 407
# Create symlink in Apache configuration
# We use "z-lemonldap-ng-*" so that Apache read the files after "perl.conf"
if [ ! -e %{apache_confdir}/z-lemonldap-ng-handler.conf ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
408 409
    ln -s %{lm_confdir}/handler-apache%{apache_version}.conf \
        %{apache_confdir}/z-lemonldap-ng-handler.conf || :
Clément OUDOT's avatar
Clément OUDOT committed
410 411
fi
if [ ! -e %{apache_confdir}/z-lemonldap-ng-manager.conf ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
412 413
    ln -s %{lm_confdir}/manager-apache%{apache_version}.conf \
        %{apache_confdir}/z-lemonldap-ng-manager.conf || :
Clément OUDOT's avatar
Clément OUDOT committed
414 415
fi
if [ ! -e %{apache_confdir}/z-lemonldap-ng-portal.conf ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
416 417
    ln -s %{lm_confdir}/portal-apache%{apache_version}.conf \
        %{apache_confdir}/z-lemonldap-ng-portal.conf || :
Clément OUDOT's avatar
Clément OUDOT committed
418
fi
419
if [ ! -e %{apache_confdir}/z-lemonldap-ng-test.conf ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
420 421
    ln -s %{lm_confdir}/test-apache%{apache_version}.conf \
        %{apache_confdir}/z-lemonldap-ng-test.conf || :
422
fi
Clément OUDOT's avatar
Clément OUDOT committed
423 424 425
# Upgrade from previous version
# See http://lemonldap-ng.org/documentation/1.0/upgrade
if [ $1 -gt 1 ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
426 427 428
    if [ -e %{lm_confdir}/storage.conf \
         -o -e %{lm_confdir}/apply.conf \
         -o -e %{lm_confdir}/apps-list.xml ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
429 430 431 432 433
        # Run migration script
        %{lm_sharedir}/bin/lmMigrateConfFiles2ini 2>&1 > /dev/null || :
        # Fix ownership
        chgrp %{lm_apachegroup} %{lm_storagefile} || :
    fi
434
fi
435 436 437 438 439
# Set editor alternatives if it does not exist
update-alternatives --display editor > /dev/null 2>&1
if [ $? -ne 0 ] ; then
        update-alternatives --install /usr/bin/editor editor /usr/bin/vim 1
fi
440

441
#==============================================================================
442
# Pre uninstallation
443
#==============================================================================
444
%preun conf
Clément OUDOT's avatar
Clément OUDOT committed
445
# Package removal
446
if [ $1 -eq 0 ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
447 448 449 450 451
    # Remove symlink in Apache configuration
    rm -f %{apache_confdir}/z-lemonldap-ng-handler.conf 2>&1 > /dev/null || :
    rm -f %{apache_confdir}/z-lemonldap-ng-manager.conf 2>&1 > /dev/null || :
    rm -f %{apache_confdir}/z-lemonldap-ng-portal.conf 2>&1 > /dev/null  || :
    rm -f %{apache_confdir}/z-lemonldap-ng-test.conf 2>&1 > /dev/null  || :
Clément OUDOT's avatar
Clément OUDOT committed
452 453 454
fi
# Upgrade from previous version
if [ $1 -eq 1 ] ; then
Xavier Bachelot's avatar
Xavier Bachelot committed
455 456
    # Remove old symlink in Apache configuration
    rm -f %{apache_confdir}/z-lemonldap-ng.conf 2>&1 > /dev/null || :
457
fi
458

Clément OUDOT's avatar
Clément OUDOT committed
459

460
%files
461 462
%doc changelog INSTALL README.md AUTHORS CONTRIBUTING.md
%license COPYING GPL
463

464
%files conf
Clément OUDOT's avatar
Clément OUDOT committed
465 466
%dir %{lm_confdir}
%config %{lm_confdir}/for_etc_hosts
Clément OUDOT's avatar
Clément OUDOT committed
467 468 469 470
%config(noreplace) %{lm_confdir}/handler-apache%{apache_version}.conf
%config(noreplace) %{lm_confdir}/manager-apache%{apache_version}.conf
%config(noreplace) %{lm_confdir}/portal-apache%{apache_version}.conf
%config(noreplace) %{lm_confdir}/test-apache%{apache_version}.conf
471 472 473 474 475 476
%config(noreplace) %{lm_confdir}/handler-nginx.conf
%config(noreplace) %{lm_confdir}/manager-nginx.conf
%config(noreplace) %{lm_confdir}/nginx-lmlog.conf
%config(noreplace) %{lm_confdir}/nginx-lua-headers.conf
%config(noreplace) %{lm_confdir}/portal-nginx.conf
%config(noreplace) %{lm_confdir}/test-nginx.conf
Clément OUDOT's avatar
Clément OUDOT committed
477 478 479
%ghost %{apache_confdir}/z-lemonldap-ng-handler.conf
%ghost %{apache_confdir}/z-lemonldap-ng-manager.conf
%ghost %{apache_confdir}/z-lemonldap-ng-portal.conf
480
%ghost %{apache_confdir}/z-lemonldap-ng-test.conf
481 482 483
%dir %{lm_vardir}
%dir %{lm_sharedir}
%dir %{lm_sharedir}/bin
Clément OUDOT's avatar
Clément OUDOT committed
484
%{lm_sharedir}/bin/convertConfig
485
%{_mandir}/man1/convertConfig*
486
%{lm_sharedir}/bin/importMetadata
Clément OUDOT's avatar
Clément OUDOT committed
487
%{lm_sharedir}/bin/lmMigrateConfFiles2ini
488
%{lm_sharedir}/bin/rotateOidcKeys
489
%dir %{lm_examplesdir}
Clément OUDOT's avatar
Clément OUDOT committed
490 491 492 493 494 495 496 497
%dir %{lm_sharedir}/ressources
%{lm_sharedir}/ressources/*
%defattr(-,root,%{lm_apachegroup},-)
%config(noreplace) %{lm_storagefile}
%defattr(750,%{lm_apacheuser},%{lm_apachegroup},-)
%dir %{lm_vardir}/conf
%dir %{lm_vardir}/sessions
%dir %{lm_vardir}/sessions/lock
498 499
%dir %{lm_vardir}/psessions
%dir %{lm_vardir}/psessions/lock
500
%dir %{lm_vardir}/notifications
Clément OUDOT's avatar
Clément OUDOT committed
501
%defattr(640,%{lm_apacheuser},%{lm_apachegroup},-)
Clément OUDOT's avatar
Clément OUDOT committed
502
%config(noreplace) %{lm_vardir}/conf/lmConf-1.json
503

504
%files doc
505
%doc %{lm_vardir}/doc
506 507
%doc changelog INSTALL README.md AUTHORS CONTRIBUTING.md
%license COPYING GPL
508

509
%files handler
Clément OUDOT's avatar
Clément OUDOT committed
510 511
%{lm_sharedir}/bin/purgeLocalCache
%{_sysconfdir}/cron.d/lemonldap-ng-handler
512
%{lm_vardir}/handler
513
%{lm_examplesdir}/handler
514
%{lm_sharedir}/llng-server/llng-server.psgi
515

516
%files manager
Clément OUDOT's avatar
Clément OUDOT committed
517 518
%{lm_sharedir}/manager
%{lm_examplesdir}/manager
519
%{lm_sharedir}/bin/lmConfigEditor
520
%{lm_sharedir}/bin/lemonldap-ng-cli
521
%{_mandir}/man1/lemonldap-ng-cli*
522

523
%files portal
524
%{lm_vardir}/portal
Clément OUDOT's avatar
Clément OUDOT committed
525 526
%{lm_sharedir}/bin/purgeCentralCache
%{_sysconfdir}/cron.d/lemonldap-ng-portal
527
%{lm_examplesdir}/portal
528 529
%defattr(750,%{lm_apacheuser},%{lm_apachegroup},-)
%dir %{lm_vardir}/captcha
530

531
%files test
532
%{lm_vardir}/test
533

534
%files fastcgi-server
535
%{lm_sharedir}/sbin/llng-fastcgi-server
536
%config(noreplace) %{_sysconfdir}/default/llng-fastcgi-server
537
%{_unitdir}/llng-fastcgi-server.service
538
%{_tmpfilesdir}/llng-fastcgi-server.conf
539
%defattr(755,%{lm_apacheuser},%{lm_apachegroup},-)
540
%dir %{_rundir}/llng-fastcgi-server
Clément OUDOT's avatar
Clément OUDOT committed
541 542
%{lm_sharedir}/examples/llngapp.psgi

543
%files uwsgi-app
544
%{_sysconfdir}/uwsgi/apps-available/llng-server.yaml
545

546
%files -n perl-Lemonldap-NG-Common
547
%{_mandir}/man3/Lemonldap::NG::Common*.3pm.*
548 549
%{perl_vendorlib}/Lemonldap/NG/Common.pm
%{perl_vendorlib}/Lemonldap/NG/Common/
Clément OUDOT's avatar
Clément OUDOT committed
550
%{perl_vendorlib}/auto/Lemonldap/NG/Common/
551 552

%files -n perl-Lemonldap-NG-Handler
553 554
%{_mandir}/man3/Lemonldap::NG::Handler*.3pm.*
%{_mandir}/man3/Plack::Middleware::Auth::LemonldapNG.3pm.*
555 556
%{perl_vendorlib}/Lemonldap/NG/Handler.pm
%{perl_vendorlib}/Lemonldap/NG/Handler/
557
%{perl_vendorlib}/auto/Lemonldap/NG/Handler/
558
%{perl_vendorlib}/Plack/Middleware/Auth/LemonldapNG.pm
559 560

%files -n perl-Lemonldap-NG-Manager
561
%{_mandir}/man3/Lemonldap::NG::Manager*.3pm.*
562 563 564 565
%{perl_vendorlib}/Lemonldap/NG/Manager.pm
%{perl_vendorlib}/Lemonldap/NG/Manager/

%files -n perl-Lemonldap-NG-Portal
566
%{_mandir}/man3/Lemonldap::NG::Portal*.3pm.*
567 568
%{perl_vendorlib}/Lemonldap/NG/Portal.pm
%{perl_vendorlib}/Lemonldap/NG/Portal/
569

570
#==============================================================================
571
# Changelog
572
#==============================================================================
573
%changelog
Clément OUDOT's avatar
Clément OUDOT committed
574 575
* Fri Nov 30 2018 Clement Oudot <clem.oudot@gmail.com> - 2.0.0-1
- Update to 2.0.0
576

Clément OUDOT's avatar
Clément OUDOT committed
577
* Fri Jul 20 2018 Clement Oudot <clem.oudot@gmail.com> - 2.0.0~beta1-1
Clément OUDOT's avatar
Clément OUDOT committed
578
- First beta version for 2.0.0
579

Clément OUDOT's avatar
Clément OUDOT committed
580 581
* Fri Jan 26 2018 Clement Oudot <clem.oudot@gmail.com> - 2.0.0~alpha3-1
- Third alpha version for 2.0.0
582

Clément OUDOT's avatar
Clément OUDOT committed
583 584
* Tue Jan 23 2018 Clement Oudot <clem.oudot@gmail.com> - 1.9.15-1
- Update to 1.9.15
585

Clément OUDOT's avatar
Clément OUDOT committed
586 587
* Fri Nov 24 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.14-1
- Update to 1.9.14
588

589 590
* Fri Sep 29 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.13-1
- Update to 1.9.13
591

Clément OUDOT's avatar
Clément OUDOT committed
592 593
* Thu Sep 14 2017 Clement Oudot <clem.oudot@gmail.com> - 2.0.0~alpha2-1
- Second alpha version for 2.0.0
594

595 596
* Tue Sep 12 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.12-1
- Update to 1.9.12
597

Clément OUDOT's avatar
Clément OUDOT committed
598 599
* Fri Sep 01 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.11-1
- Update to 1.9.11
600

601 602
* Mon Jul 10 2017 Clement Oudot <clem.oudot@gmail.com> - 2.0.0~alpha1-1
- First alpha version for 2.0.0
603

Clément OUDOT's avatar
Clément OUDOT committed
604 605
* Fri May 19 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.10-1
- Update to 1.9.10
606

Clément OUDOT's avatar
Clément OUDOT committed
607 608
* Thu Mar 16 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.9-1
- Update to 1.9.9
609

610 611
* Thu Mar 02 2017 Clement Oudot <clem.oudot@gmail.com> - 1.9.8-1
- Update to 1.9.8
612

613 614
* Mon Dec 12 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.7-1
- Update to 1.9.7
615

Clément OUDOT's avatar
Clément OUDOT committed
616 617
* Fri Oct 14 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.6-1
- Update to 1.9.6
618

Clément OUDOT's avatar
Clément OUDOT committed
619
* Mon Oct 10 2016 Clement Oudot <clem.oudot@gmail.com> - 1.4.11-1
620
- Update to 1.4.11
621

622 623
* Wed Jul 13 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.5-1
- Update to 1.9.5
624

625 626
* Wed Jul 13 2016 Clement Oudot <clem.oudot@gmail.com> - 1.4.10-1
- Update to 1.4.10
627

Clément OUDOT's avatar
Clément OUDOT committed
628 629
* Tue Jun 14 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.4-1
- Update to 1.9.4
630

Clément OUDOT's avatar
Clément OUDOT committed
631 632
* Tue Jun 07 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.3-1
- Update to 1.9.3
633

634 635
* Fri Jun 03 2016 Clement Oudot <clem.oudot@gmail.com> - 1.4.9-1
- Update to 1.4.9
636

637 638
* Sun May 01 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.2-1
- Update to 1.9.2
639

640 641
* Wed Apr 27 2016 Clement Oudot <clem.oudot@gmail.com> - 1.4.8-1
- Update to 1.4.8
642

643 644
* Thu Mar 31 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.1-1
- Update to 1.9.1
645

646 647
* Thu Mar 17 2016 Clement Oudot <clem.oudot@gmail.com> - 1.4.7-1
- Update to 1.4.7
648

649
* Wed Mar 02 2016 Clement Oudot <clem.oudot@gmail.com> - 1.9.0-1
Clément OUDOT's avatar
Clément OUDOT committed
650
- Update to 1.9.0
651

652 653
* Mon Sep 28 2015 Clement Oudot <clem.oudot@gmail.com> - 1.4.6-1
- Update to 1.4.6
654

655 656
* Mon May 11 2015 Clement Oudot <clem.oudot@gmail.com> - 1.4.5-1
- Update to 1.4.5
657

Clément OUDOT's avatar
Clément OUDOT committed
658
* Wed Apr 15 2015 Clement Oudot <clem.oudot@gmail.com> - 1.4.4-1
Clément OUDOT's avatar
Clément OUDOT committed
659
- Update to 1.4.4
660

Clément OUDOT's avatar
Clément OUDOT committed
661 662 663
* Thu Dec 18 2014 Clement Oudot <clem.oudot@gmail.com> - 1.4.3-1
- Update to 1.4.3
- Support for CentOS 7
664

Clément OUDOT's avatar
Clément OUDOT committed
665 666
* Fri Oct 31 2014 Clement Oudot <clem.oudot@gmail.com> - 1.4.2-1
- Update to 1.4.2
667

Clément OUDOT's avatar
Clément OUDOT committed
668 669
* Fri Jul 25 2014 Clement Oudot <clem.oudot@gmail.com> - 1.4.1-1
- Update to 1.4.1
670

Clément OUDOT's avatar
Clément OUDOT committed
671 672
* Fri Apr 18 2014 Clement Oudot <clem.oudot@gmail.com> - 1.4.0-1
- Update to 1.4.0
673

Clément OUDOT's avatar
Clément OUDOT committed
674 675
* Fri Mar 07 2014 Clement Oudot <clem.oudot@gmail.com> - 1.3.3-1
- Update to 1.3.3
676

Clément OUDOT's avatar
Clément OUDOT committed
677 678
* Thu Jan 23 2014 Clement Oudot <clem.oudot@gmail.com> - 1.3.2-1
- Update to 1.3.2
679

Clément OUDOT's avatar
Clément OUDOT committed
680 681
* Mon Nov 11 2013 Clement Oudot <clem.oudot@gmail.com> - 1.3.1-1
- Update to 1.3.1
682

Clément OUDOT's avatar
Clément OUDOT committed
683 684
* Sat Nov 2 2013 Clement Oudot <clem.oudot@gmail.com> - 1.3.0-1
- Update to 1.3.0
685

Clément OUDOT's avatar
Clément OUDOT committed
686 687
* Mon Aug 26 2013 Clement Oudot <clem.oudot@gmail.com> - 1.2.5-1
- Update to 1.2.5
688

Clément OUDOT's avatar
Clément OUDOT committed
689 690
* Tue Apr 23 2013 Clement Oudot <clem.oudot@gmail.com> - 1.2.4-1
- Update to 1.2.4
691

Clément OUDOT's avatar
Clément OUDOT committed
692 693
* Fri Feb 08 2013 Clement Oudot <clem.oudot@gmail.com> - 1.2.3-1
- Update to 1.2.3
694

695 696
* Mon Sep 17 2012 Clement Oudot <clem.oudot@gmail.com> - 1.2.2-1
- Update to 1.2.2
697

698
* Thu Jul 05 2012 Clement Oudot <clem.oudot@gmail.com> - 1.2.1-1
699
- Update to 1.2.1
700

701
* Sun Jun 17 2012 Clement Oudot <clem.oudot@gmail.com> - 1.2.0-1
702
- Update to 1.2.0
703

704 705
* Fri Oct 07 2011 Clement Oudot <clem.oudot@gmail.com> - 1.1.2-1
- Update to 1.1.2
706

707 708
* Fri Jul 29 2011 Clement Oudot <clem.oudot@gmail.com> - 1.1.1-1
- Update to 1.1.1
709

Clément OUDOT's avatar
Clément OUDOT committed
710 711
* Fri Jul 08 2011 Clement Oudot <clem.oudot@gmail.com> - 1.1.0-1
- Update to 1.1.0
712

713
* Thu Jun 30 2011 Clement Oudot <clem.oudot@gmail.com> - 1.0.6-1
Clément OUDOT's avatar
Clément OUDOT committed
714
- Update to 1.0.6
715

Clément OUDOT's avatar
Clément OUDOT committed
716 717
* Fri Apr 15 2011 Clement Oudot <clem.oudot@gmail.com> - 1.0.5-1
- Update to 1.0.5
718

Clément OUDOT's avatar
Clément OUDOT committed
719 720
* Tue Mar 22 2011 Clement Oudot <clem.oudot@gmail.com> - 1.0.4-1
- Update to 1.0.4
721

722 723
* Mon Mar 07 2011 Clement Oudot <clem.oudot@gmail.com> - 1.0.3-1
- Update to 1.0.3
724

725 726
* Mon Feb 28 2011 Clement Oudot <clem.oudot@gmail.com> - 1.0.2-1
- Update to 1.0.2
727

728 729
* Thu Dec 16 2010 Clement Oudot <clem.oudot@gmail.com> - 1.0.1-1
- Update to 1.0.1
730

Clément OUDOT's avatar
Clément OUDOT committed
731 732
* Fri Nov 26 2010 Clement Oudot <clem.oudot@gmail.com> - 1.0-1
- Update to 1.0
733

Clément OUDOT's avatar
Clément OUDOT committed
734 735 736
* Wed Jul 21 2010 Nicolas Chauvet <kwizart@gmail.com> - 0.9.4.1-3
- Fix compatibility with perl-LDAP 0.40
- Add BR perl(Auth::CAS)
737

Clément OUDOT's avatar
Clément OUDOT committed
738 739
* Mon Jul 12 2010 Nicolas Chauvet <nchauvet@linagora.com> - 0.9.4.1-2
- Protect lemonldap directories against word readability
740

Clément OUDOT's avatar
Clément OUDOT committed
741 742
* Mon Oct 12 2009 Nicolas Chauvet <nchauvet@linagora.com> - 0.9.4.1-1
- Update to 0.9.4.1
743

Clément OUDOT's avatar
Clément OUDOT committed
744 745 746 747
* Thu Sep 24 2009 Nicolas Chauvet <nchauvet@linagora.com> - 0.9.4-2
- Add Missing BuildRequires
- Remove filter for dependencies available in EPEL.
- use %%defattr to define ownership.
748

749
* Mon Jul 6 2009 Clement Oudot <coudot@linagora.com> - 0.9.4-1
Clément OUDOT's avatar
Clément OUDOT committed
750 751 752
- Upgrade to release 0.9.4
- Remove cronjob patch (included in 0.9.4)
- Split scriplets into subpackages
753
- Use conditions to build for other RPM distributions like OpenSuSE (thanks to clauded1)
754

755 756 757 758
* Mon Jan 12 2009 Clement Oudot <coudot@linagora.com> - 0.9.3.2-2
- Include cronjob patch
- Delete unwanted files (perllocal.pod, .packlist)
- Follow rpmfusion guidelines
759

760
* Fri Jan 9 2009 Clement Oudot <coudot@linagora.com> - 0.9.3.2-1
761
- Updated to release 0.9.3.2.
762
- Use internal version number for perl modules (compatibility with RPMforge packages)
763 764
- Merge with existing .spec file from RPMforge.
- Use the same directories as the Debian package.
765
- Create a symlink in Apache confguration.
Yadd's avatar
Yadd committed
766
- Create specific portal/manager/handler/conf packages independent from CPAN packages
767

768 769 770
* Thu Nov 20 2008 Jean-Christophe Toussaint <jean-christophe.toussaint@ac-nancy-metz.fr> - 0.9.2-1DSI
- Updated to release 0.9.2.
- Using official tar.gz from forge.
771

772
* Tue Oct 7 2008 David Hannequin <david.hannequin@linagora.com> 
773
- New spec file
774

775 776
* Sun Mar 02 2008 Dag Wieers <dag@wieers.com> - 0.85-1
- Updated to release 0.85.
777

778 779
* Tue Nov 13 2007 Dag Wieers <dag@wieers.com> - 0.84-1
- Updated to release 0.84.
780

781 782
* Wed May 02 2007 Dries Verachtert <dries@ulyssis.org> - 0.81-1
- Updated to release 0.81.
783

784 785
* Sun Apr 29 2007 Dries Verachtert <dries@ulyssis.org> - 0.75-1
- Initial package.