Bonjour,

Je suis entrain de créer un rpm et je me demandais comment gérer le fichier de configuration. C'est à dire, créer le fichier à la première install et pour les updates, créer un fichier à coté (pour eviter d'écraser la conf actuel).
Il y a un moyen de faire ca ou je doit faire un script qui le gérer ?

Merci
C'est prévu.

Les fichiers de configuration (stocké dans %{sysconfidir}) doivent être marqué %config ou (mieux) %config(noreplace).

A+
merci Remi, ca marche nickel

edit: question annexe, il existe un équivalent de %attr ou %defattr pour selinux ?
(stocké dans %{sysconfidir})
%{_sysconfdir}, a vrai dire.
Merci Rémi, c'est la page que je cherchai sans la trouver.

++
J'ai un peu de mal avec selinux.

Dans mon pakage (simplifier a l'extrême) , il y a juste un fichier index.html installer dans /www/upgrade/

Dans le fichier spec, j'ai mit dans la section install
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT

mkdir selinux; cd selinux
echo "/www/upgrade/index.html    system_u:object_r:httpd_sys_content_t:s0" > upgrade.fc
touch upgrade.if

make -f %{_datadir}/selinux/devel/Makefile

install -p -m 644 -D upgrade.pp $RPM_BUILD_ROOT%{_datadir}/selinux/targeted/upgrade.pp
Mais quand je fait mon rpm, j'ai une erreur
+ mkdir selinux
+ cd selinux
+ echo '/www/upgrade/index.html    system_u:object_r:httpd_sys_content_t:s0'
+ touch upgrade.if
+ make -f /usr/share/selinux/devel/Makefile
make: Nothing to be done for `all'.
+ install -p -m 644 -D upgrade.pp /var/tmp/upgrade-0.1-1-root-builder/usr/share/selinux/targeted/upgrade.pp
install: cannot stat `upgrade.pp': No such file or directory
En gros le make n'a rien a faire. Pourquoi ? Je comprend plus rien là.

Merci
Sans avoir lu le Makefile ca va etre dur de savoir, pour moi - pauvre mortel - au moins.
Tu ne l'invoques surement pas avec la bonne cible.