# Installation sur Debian/Ubuntu avec les paquets

## Organisation

LemonLDAP::NG fournit ces paquets :

- lemonldap-ng: metapackage, contains no file but dependencies on other packages
- lemonldap-ng-doc : contient la documentation HTML et celle du projet (README, etc...)
- lemonldap-ng-fastcgi-server : serveur FastCGI LL::NG (pour Nginx)
- lemonldap-ng-fr-doc : traduction en français de la documentation HTML
- liblemonldap-ng-common-perl : fichiers communs et de configuration
- liblemonldap-ng-handler-perl : fichiers des agents
- liblemonldap-ng-manager-perl : fichiers du manager
- liblemonldap-ng-portal-perl : fichiers du portail

## Obtenir ces paquets

### Dépôt officiel

Pour les utilisateurs de Debian testing ou unstable, les paquets sont directement installables :

    apt-cache search lemonldap-ng

Les paquets du dépôt Debian peuvent ne pas être à jour. Si c'est le cas, utiliser une autre solution (voir ci-dessous).

### Dépôt LL::NG

Ajouter ce dépôt pour avoir les paquets les plus récents :

    vi /etc/apt/sources.list.d/lemonldap-ng.list

    # LemonLDAP::NG repository
    deb     https://lemonldap-ng.org/deb stable main
    deb-src https://lemonldap-ng.org/deb stable main

- Use the `oldstable` repository to get packages from previous major version
- Use the `testing` repository to get packages from next major version
- Use the `1.9` repository to avoid upgrade to next major version

You may need to install this package to access HTTPS repositories:

    apt install apt-transport-https

### Téléchargement manuel

Les paquets sont disponibles sur la page de téléchargement.

## Signature GPG des paquets

La clef GPG peut être téléchargée ici : rpm-gpg-key-ow2

L'installer pour certifier les paquets :

    wget -O - https://lemonldap-ng.org/_media/rpm-gpg-key-ow2 | apt-key add -

Update cache:

    apt update

## Installer les paquets

### With apt

    apt install lemonldap-ng

### Avec dpkg

Avant d'installer les paquets, installer les dépendances.

Ensuite :

    dpkg -i liblemonldap-ng-* lemonldap-ng*

## Premiers pas de configuration

### Changer le domaine DNS par défaut

Par défaut, le domaine DNS est `example.com`. On peut le changer rapidement par une commande sed. Par exemple, pour le changer en `ow2.org`:

    sed -i 's/example\.com/ow2.org/g' /etc/lemonldap-ng/* /var/lib/lemonldap-ng/conf/lmConf-1.js /var/lib/lemonldap-ng/test/index.pl

### Recharger l'hôte virtuel

Pour autoriser le manager à recharger la configuration, enregistrer le nom d'hôte virtuel de rechargement dans le fichier hosts du serveur :

    echo "127.0.0.1 reload.example.com" >> /etc/hosts

Adapter le nom d'hôte virtuel de rechargement au domaine configuré.

### Mise à jour

Pour mettre à jour LL::NG, lisez toutes les notes de mise à jour.

### DNS

Configurer le serveur DNS pour résoudre les noms avec l'adresse IP de votre serveur.

Pour les tests avec `example.com`, lancer ce qui suit :

    cat /etc/lemonldap-ng/for_etc_hosts >> /etc/hosts

Suivre les étapes suivantes

## Emplacement du fichier

- La configuration se trouve dans /etc/lemonldap-ng
- La configuration LemonLDAP::NG (editée par le manager) se trouve dans /var/lib/lemonldap-ng/conf/
- Tous les modules Perl se trouvent dans le répertoire VENDOR de Perl (/usr/share/perl5/)
- Tous les scripts/pages Perl se trouvent dans /var/lib/lemonldap-ng/
- Tous les outils lemonldap-ng se trouvent dans /usr/share/lemonldap-ng/bin/
- Tous le contenu statique (exemples, CSS, images, etc...) se trouve dans /usr/share/lemonldap-ng/
- Les fichiers de configuration Apache se trouvent dans /etc/lemonldap-ng et liés dans /etc/apache2/sites-available

## Construire les paquets

On peut également construire les paquets à partir de l'archive LemonLDAP::NG :

    tar xzf lemonldap-ng-*.tar.gz
    cd lemonldap-ng-*
    make debian-packages