Escreva um provedor Augeas e confinar a um fato que verifica a presença do pacote.
Para resumir:
- Escreva um
sysvinit_packagefact, com o valortrueoufalse(ou até mesmo a versão do pacote) - Escreva um tipo e um provedor para
inittab, que se limita ao fato.
Observação: a augeasproviders API está sendo refeita para criar facilmente provedores fora do módulo augeasproviders . Veja o provedor standalone do shellvar (PoC por enquanto, a API provavelmente funcionará dessa forma eventualmente) por exemplo.
Como alternativa, se você quiser usar o tipo augeas em vez de escrever um provedor (o que eu recomendaria), você pode simplesmente escrever um fato e usá-lo na DSL Puppet para evitar declarar o recurso augeas quando sysvinit não está instalado.