Respondendo a perguntas debconf de uma GUI personalizada em Python? (Front-end personalizado)

2

Estou escrevendo um aplicativo que deve permitir que o usuário instale alguns pacotes adicionais quando necessário. Eu gostaria de criar uma GUI customizada que coleta as questões debconf dos pacotes junto com algumas outras perguntas do meu aplicativo. Em seguida, instalarei o pacote usando o aptd ou algo assim, e quaisquer perguntas feitas pelo script de instalação do pacote serão respondidas por campos na minha GUI personalizada.

Como faço isso?

    
por Jo-Erlend Schinstad 29.01.2014 / 15:44

1 resposta

2

Parece que o comando debconf-set-selections do pacote debconf-utils é adequado para isso.

O formato é simples: debconf-set-selections [filename]

Se o nome do arquivo não for fornecido, ele recebe sua entrada de stdin. O formato das linhas de resposta também é simples: < packagename> < question_name> < datatype> < value> .

Então, se você quisesse instalar o mysql-server usando uma senha predeterminada, então você criaria um arquivo como este (mysql-prefs.seed)

mysql-server-5.5    mysql-server/root_password          password    my_root_password
mysql-server-5.5    mysql-server/root_password_again    password    my_root_password

Então você insere essas respostas no banco de dados debconf executando debconf-set-selections mysql-prefs.seed . Finalmente, você acabou de instalar o pacote como normal: sudo apt-get install mysql-server -yq e a senha do usuário root do MySQL agora será "my_root_password".

Eu não sei se este é o melhor jeito de fazê-lo, mas certamente funciona e é bastante fácil.

    
por Jo-Erlend Schinstad 29.01.2014 / 19:42