View previous topic :: View next topic |
Author |
Message |
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Tue Mar 30, 2004 11:27 pm Post subject: Especificação de pastas de arquivos de configuração |
|
|
Não encontrei uma forma de passar comandos para o script configure pelo make.conf. Se passassemos comandos ao configure, poderíamos estabelecer o diretório para arquivos de configuração, e então sua remoção seria mais fácil.
Por exemplo, se configurássemos o XFree para instalar seus arquivos de configuração em /etc/xfree e não em /etc, poderíamos removê-lo com um "emerge -C xfree" seguido de "rm -r /etc/xfree". Isso não seria um problema para o XFree em especial, já que ele mantém seus arquivos de configuração em /etc/X11.
Mas levem em conta, por exemplo, o Lilo, que ao ser instalado cria o arquivo /etc/lilo.conf. Nesse esquema, esse arquivo seria criado como /etc/lilo/lilo.conf. Não seria necessário saber quais são os arquivos de configuração do Lilo, sabendo somente sua pasta. Assim, uma vez instalado, um pacote poderá ser completamente removido.
Logicamente alguns programas usam caminhos completos no código (acho que até o Lilo faz isso), então haveria a necessidade de criar um link de /etc/X11 para /etc/xfree/X11 e de lilo.conf para /etc/lilo/lilo.conf.
Essa idéia não é minha, e sim do pessoal do GoboLinux. Só tentei adaptar à nossa realidade. Vocês acham viável/útil? |
|
Back to top |
|
|
AngusYoung Retired Dev
Joined: 20 Dec 2002 Posts: 473 Location: Czech Republic
|
Posted: Wed Mar 31, 2004 6:14 pm Post subject: |
|
|
Hum, creio que isso possa ser feito da seguinte maneira:
Code: | ebuild /usr/portage/categoria/pacote/pacote-versao.ebuild unpack |
Então se dirigir ao diretório que o portage usa para compilar os programas (/var/tmp/portage/pacote-versao/work), rodar o ./configure manualmente e então executar:
Code: | ebuild /usr/portage/categoria/pacote/pacote-versao.ebuild compile
ebuild /usr/portage/categoria/pacote/pacote-versao.ebuild install |
Por outro lado, se isso fosse implementado no portage, seria necessário fazer um esquema para que ele não removesse as configurações durante as atualizações de software. E, por fim, acho que o risco de implementar isso não compensa os ganhos ... mas isso é uma opinião pessoal _________________ My blog
Twitter |
|
Back to top |
|
|
fernandotcl Veteran
Joined: 20 Nov 2003 Posts: 1396 Location: Sao Paulo, Brazil
|
Posted: Wed Mar 31, 2004 8:15 pm Post subject: |
|
|
AngusYoung wrote: | Hum, creio que isso possa ser feito da seguinte maneira:
Code: | ebuild /usr/portage/categoria/pacote/pacote-versao.ebuild unpack |
Então se dirigir ao diretório que o portage usa para compilar os programas (/var/tmp/portage/pacote-versao/work), rodar o ./configure manualmente e então executar:
Code: | ebuild /usr/portage/categoria/pacote/pacote-versao.ebuild compile
ebuild /usr/portage/categoria/pacote/pacote-versao.ebuild install |
|
É uma opção.
AngusYoung wrote: | Por outro lado, se isso fosse implementado no portage, seria necessário fazer um esquema para que ele não removesse as configurações durante as atualizações de software. E, por fim, acho que o risco de implementar isso não compensa os ganhos ... mas isso é uma opinião pessoal |
Pode ser trabalhoso mesmo.
Ao invés disso podemos criar um script que avalia os arquivos e diretórios de um determinado pacote que vão diretamente no /etc (por exemplo, /etc/X11 e não /etc/X11/XF86Config) e criar links para uma pasta com o nome do pacote diretamente. Dessa forma não mexeríamos no Portage e os arquivos de configuração criados em tempo de execução seguiriam os links. Mas nada poderia ser feito no caso de pacotes que escrevem arquivos de configuração em tempo de execução diretamente para /etc...
A solução mais "correta" na minha opinião é uma variável no make.conf que descrevesse as configurações adicionais à serem passadas ao configure. Bastaria adicionar alguma coisa como (considerando PACKAGE_NAME uma variável que talvez já exista ):
Code: | CONFIGURE="sysconfdir=/etc/${PACKAGE_NAME}" |
|
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|