diff --git a/doc/condition/condition.md b/doc/condition/condition.md
index 37198d864..adf84c53d 100644
--- a/doc/condition/condition.md
+++ b/doc/condition/condition.md
@@ -2,7 +2,7 @@
## Un condition
-Les conditions permettent d'ajouter ou de supprimer des propriétés à une [variable](../variable/README.md), une [famille](../family/README.md), un [service](../service/service.md), un [fichier](../service/file.md) ou une [ip](../service/ip.md) suivant le contexte.
+Les conditions permettent d'ajouter ou de supprimer des propriétés à une [variable](../variable/README.md), une [famille](../family/README.md), un [service](../service/README.md), un [fichier](../service/file.md) ou une [ip](../service/ip.md) suivant le contexte.
Nous allons nous concentrer ici sur la condition hidden_if_in, mais [il existe d'autre conditions](conditions.md).
diff --git a/doc/condition/conditions.md b/doc/condition/conditions.md
index 2dfc25f3c..80e17f20e 100644
--- a/doc/condition/conditions.md
+++ b/doc/condition/conditions.md
@@ -16,7 +16,7 @@ Il est possible de désactiver une [variable](../variable/README.md) ou une [fam
## Caché
-Il est possible de cacher une [variable](../variable/README.md), une [famille](../family/README.md), un [service](../service/service.md), un [fichier](../service/file.md) ou une [ip](../service/ip.md) avec les conditions :
+Il est possible de cacher une [variable](../variable/README.md), une [famille](../family/README.md), un [service](../service/README.md), un [fichier](../service/file.md) ou une [ip](../service/ip.md) avec les conditions :
- hidden_if_in
- hidden_if_not_in
diff --git a/doc/service/README.md b/doc/service/README.md
index 227a42cdc..a7b8cbed0 100644
--- a/doc/service/README.md
+++ b/doc/service/README.md
@@ -1,4 +1,96 @@
-# Les services
+# La gestion d'un service
+## La base service
+Un service est inclut dans un conteneur [services](../services.md).
+Cette balise permet de définir tous les éléments ([fichier](file.md), [IP](ip.md) et [réécriture](override.md)) liés à un service ou à démon.
+
+Il faut, à la création du service, préciser son nom :
+
+```
+
+
+
+
+
+
+```
+
+## Les types de service
+
+Les services peuvent être de plusieurs type :
+
+- service (valeur par défaut) : cela signifie que c'est un service systemd qui est activer au démarrage de la machine
+- mount : fichier utilisé par systemd-mount
+- swap : fichier utilisé par systemd-swap
+
+```
+
+```
+
+## Les targets de service
+
+Active le service systemd pour une target systemd déterminé. Par défaut, l'activation du service n'est pas gérer par rougail.
+
+```
+
+```
+
+## La génération du fichier service
+
+Le fichier de description du service peut être fourni directement par la distribution GNU/Linux utilisé, mais il peut également être fournit par l'administrateur.
+Dans ce cas, il est possible de créé un template, dont le nom est obligatoirement la valeur de la balise "name" + "." + la valeur de la base "type".
+
+Deux types de template sont aujourd'hui disponible :
+
+- creole
+- jinja2
+
+```
+
+```
+
+Dans ce cas, rougail utilisera le template "dev-disk-by\x2dpartlabel-swap.swap" pour générer le fichier systemd de gestion de ce service.
+
+## Le service factice
+
+Un service peut être factice, donc non géré par le système de service du système :
+
+```
+
+```
+
+Un service factice est généralement une service qui n'existe pas réellement (par exemple si on configure un client). Il n'est là que pour contenir des fichiers.
+
+## Désactiver le service
+
+Il est possible de désactiver un service. Pour cela il faut rajouter l'attribut "disabled" à True :
+
+```
+
+
+
+```
+
+Dans ce cas, le service et les éléments qu'il compose ([fichier](file.md), [IP](ip.md) et [réécriture](override.md) seront désactivés.
+
+Il est possible de définir une [condition](../condition/README.md) de type "disabled_if_in" ou "disabled_if_not_in" sur une balise service :
+
+```
+
+
+
+
+
+
+
+
+
+ False
+ test
+
+
+```
+
+Dans ce cas, tous les services et les éléments qu'il compose avec un attribut servicelist à "test" seront désactivés si la variable "condition" est False.
diff --git a/doc/service/override.md b/doc/service/override.md
index 32b3e7834..65cabba52 100644
--- a/doc/service/override.md
+++ b/doc/service/override.md
@@ -1,4 +1,4 @@
-# Override
+# Réécriture du service
## La balise override
diff --git a/doc/service/service.md b/doc/service/service.md
deleted file mode 100644
index de1efbaf0..000000000
--- a/doc/service/service.md
+++ /dev/null
@@ -1,60 +0,0 @@
-# La gestion d'un service
-
-## La base service
-
-Un service est inclut dans un conteneur [services](../services.md).
-
-Cette balise permet de définir tous les éléments ([fichier](file.md), [IP](ip.md), ...) liés à un service ou à démon.
-
-Il faut, à la création du service, préciser son nom :
-
-```
-
-
-
-
-
-
-```
-
-Un service peut ne pas être géré :
-
-```
-
-```
-
-Un service non géré est généralement une service qui n'existe pas réellement (par exemple si on configure un client).
-
-Un service non géré ne peut conteneur que des fichiers.
-
-## Désactiver la génération d'un service
-
-Il est possible de désactiver un service. Pour cela il faut rajouter l'attribut "disabled" à True :
-
-```
-
-
-
-```
-
-Dans ce cas, tous les services et les éléments qu'il compose ([fichier](file.md), ...) seront désactivés.
-
-Il est possible de définir une [condition](../condition/README.md) de type "disabled_if_in" ou "disabled_if_not_in" sur une balise service :
-
-```
-
-
-
-
-
-
-
-
-
- False
- test
-
-
-```
-
-Dans ce cas, tous les services et les éléments qu'il compose ([fichier](file.md), ...) avec un attribut servicelist à "test" seront désactivés si la variable "condition" est False.
diff --git a/doc/services.md b/doc/services.md
index a7eb0b130..3dae9c89f 100644
--- a/doc/services.md
+++ b/doc/services.md
@@ -1,6 +1,6 @@
# Le conteneur des services
-La balise "services" est le conteneur de l'ensemble des [services](service/service.md).
+La balise "services" est le conteneur de l'ensemble des [services](service/README.md).
Il est placé à la racine du dictionnaire :
diff --git a/doc/target/list.md b/doc/target/list.md
index bff8305f7..2860beb7b 100644
--- a/doc/target/list.md
+++ b/doc/target/list.md
@@ -4,7 +4,7 @@
### servicelist
-Une cible peut être de type [service](../service/service.md) :
+Une cible peut être de type [service](../service/README.md) :
```
example