${PREFIX}, qui correspond par défaut à
/usr/local. D'un autre côté, la règle sous OpenBSD est
d'installer la plupart des fichiers de configuration dans
${SYSCONFDIR}, par défaut étant défini sur
/etc.
Notez qu'il est parfaitement acceptable pour un paquet d'avoir
${PREFIX} et ${SYSCONFDIR} configurés "en dur" : PREFIX et SYSCONFDIR
sont principalement des options de configuration utilisateur influençant
la construction du paquet.
@sample permettant de gérer les fichiers de configuration :
@sample
${SYSCONFDIR}/foo.rc juste en-dessous de celle concernant le
fichier de configuration exemple.
@sample peuvent avoir un chemin absolu.
Certains gros paquets auront aussi besoin de leur propre répertoire de
configuration, @sample ${SYSCONFDIR}/directory/ sera
capable de gérer cette situation.
L'utilisation de @sample directory/ pour créer des
répertoires spécifiques à un paquet et ne contenant aucun fichier de
configuration est aussi supportée. @sample interprète
parfaitement les définitions @mode, @owner et
@group. Ceci peut paraître un peu laborieux car vous aurez
souvent besoin de passer d'un mode par défaut à un mode spécifique au
fichier de configuration et vice-versa.
make update-plist est capable de copier
@sample vers la nouvelle PLIST mais n'est pas capable de
les créer, il faudra donc qu'ils soient définis une première fois.
Notez la différence entre un fichier de configuration et un fichier de
configuration exemple : le port doit être configuré pour utiliser les
fichiers dans ${SYSCONFDIR} ; seule l'installation simulée
doit placer des éléments dans ${PREFIX}/share/examples. Une
manière simple de gérer cela est de copier les fichiers avec post-
install.
Une astuce intéressante fonctionnant la plupart du temps est de regarder
le Makefile du programme et de remplacer le répertoire de configuration
durant la phase de simulation de l'installation grâce à l'utilisation de
FAKE_FLAGS spécifiques, par exemple :
FAKE_FLAGS=DESTDIR=${WRKINST}
sysconfdir=${WRKINST}${TRUEPREFIX}/share/examples/PKGNAME
Vous devez simplement prendre garde aux programmes qui définissent le
répertoire de configuration dans certains fichiers à l'installation.
@comment $OpenBSD: config.html,v 1.6 2010/07/30 16:48:34 ajacoutot Exp $
@bin bin/i-ls
@info info/integrit.info
@man man/man1/i-ls.1
@man man/man1/i-viewdb.1
@man man/man1/integrit.1
@sbin/i-viewdb
@sbin/integrit
share/doc/integrit/
share/doc/integrit/README
share/doc/integrit/crontab
share/doc/integrit/install_db
share/doc/integrit/integrit_check
share/doc/integrit/viewreport
share/examples/integrit/
@sample ${SYSCONFDIR}/integrit/
share/examples/integrit/root.conf
@sample ${SYSCONFDIR}/integrit/root.conf
share/examples/integrit/src.conf
@sample ${SYSCONFDIR}/integrit/src.conf
share/examples/integrit/usr.conf
@sample ${SYSCONFDIR}/integrit/usr.conf
@sample dir/ afin de
créer des répertoires privés.
...
sbin/uninstall-nessus
@sample ${SYSCONFDIR}/nessus/
@mode 0700
@sample /var/nessus/
@sample /var/nessus/jobs/
@sample /var/nessus/logs/
@sample /var/nessus/users/
@extraunexec rm -fr %D/lib/nessus/plugins/*
@extraunexec rm -fr %D/nessus
@extraunexec rm -fr /var/nessus
@comment $OpenBSD: config.html,v 1.6 2010/07/30 16:48:34 ajacoutot Exp $
@conflict upsd-*
@newuser ${NUT_USER}:${NUT_ID}:::UPS User:/var/empty:/sbin/nologin
...
share/examples/nut/
@sample ${SYSCONFDIR}/nut/
@owner ${NUT_USER}
share/examples/nut/ups.conf
@sample ${SYSCONFDIR}/nut/ups.conf
share/examples/nut/upsd.conf
@mode 600
@sample ${SYSCONFDIR}/nut/upsd.conf
@mode
share/examples/nut/upsd.users
@mode 600
@sample ${SYSCONFDIR}/nut/upsd.users
@mode
share/examples/nut/upsmon.conf
@mode 600
@sample ${SYSCONFDIR}/nut/upsmon.conf
@mode
share/examples/nut/upssched.conf
@sample ${SYSCONFDIR}/nut/upssched.conf
@mode 700
@sample /var/db/nut/
@mode
@owner
share/ups/
share/ups/cmdvartab
share/ups/driver.list