Une règle, dans Gaspacho, est simplement (pour schématiser) un libellé.

Par exemple "Configuration du serveur proxy manuelle" est une règle.

Évidement, la règle en elle même ne sert a rien. Il faut lui associer des éléments de configuration.

Avant d'expliquer comment cela fonctionne, voici des exemples de configuration du proxy. On peut voir qu'il existe une variété de formats de fichiers de configuration.

  • Configuration du proxy sous Windows avec des clefs de registre :
  1. activation du proxy : HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable : 1 ;
  2. configuration du proxy : HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyServer : 192.168.1.1:3128 :
  3. mise en place d'une restriction sur la modification du paramétrage du proxy : HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel\Proxy : 1.
  • Configuration du proxy sous Mozilla Firefox avec un fichier javascript utilisateur.js (1) :
  1. activation du proxy : lockPerf("network.proxy.type", "1"); ;
  2. configuration de l'IP du proxy : lockPerf("network.proxy.http", "192.168.1.1"); ;
  3. configuration du port du proxy : lockPerf("network.proxy.http_port", "3128");.
  • Configuration du proxy sous GNOME avec des clefs gconf :
  1. activation du proxy : /system/http_proxy/use_http_proxy True ;
  2. configuration de l'IP du proxy : /system/http_proxy/host "192.168.1.1" ;
  3. configuration du port du proxy : /system/http_proxy/port 3128.
  • Configuration du proxy sous OpenOffice.org avec le fichier XML ~/.ooo3/user/registry/data/org/openoffice/Inet.xcu :
<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Inet" oor:package="org.openoffice">
 <node oor:name="Settings">
  <prop oor:name="ooInetProxyType" oor:type="xs:int">
   <value>2</value>
  </prop>
  <prop oor:name="ooInetHTTPProxyName" oor:type="xs:string">
   <value>192.168.10.1</value>
  </prop>
  <prop oor:name="ooInetHTTPProxyPort" oor:type="xs:int">
   <value>8080</value>
  </prop>
 </node>
</oor:component-data>

Gaspacho devra supporter l'ensemble des formats de fichiers de configuration. De plus, il devra gérer les versions des logiciels et les distributions/systèmes d'exploitation.

Pour cela, chaque élément de configuration sera divisé en deux : la variable et la plateforme. La plateforme comprendra le chemin et le système.

Par exemple, nous aurons :

  • variable : ProxyEnable avec la valeur 1 ;
  • plateforme : chemin : HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ et système : Windows XP.

Autre exemple pour OpenOffice.org :

  • variable : ooInetProxyType dans la section Inet/Settings avec la valeur 2 ;
  • plateforme : chemin : ~/.ooo3/user/registry/data/org/openoffice/Inet.xcu et système : Mandriva 2010 + OpenOffice.org 3.2.

Enfin, ces règles sont classés dans des "tags" eux-mêmes classés dans des "catégories".

Ici, cette règle sera dans la catégorie "Réseau" et dans le tag "Configuration du proxy".

  1. http://gnunux.info/dotclear2/index.php?post/2010/08/30/Mecanisme-de-clef-obligatoire-par-utilisateur-sous-Mozilla-Firefox