O que geralmente estou fazendo é ter o software lendo vários arquivos:
- configuração do usuário
- configuração global
- configuração padrão
Cada chave (como se fosse yaml ou json, ou apenas par de valores-chave) que estão no topo da pilha, substitui as que estão abaixo.
Dessa forma, você pode enviar sua configuração padrão em $SNAP
, se o usuário definir uma configuração global, ele poderá ajustar (ou copiar) em $SNAP_DATA
com o mesmo nome de arquivo. e mesmo no nível do usuário com $ SNAP_USER_DATA '.
Observe que você pode enviar um aplicativo de configuração como parte do snap para organizar seus arquivos de configuração.