[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: debconf & packets which doesn't use debconf



On Wed, Jun 27, 2007 at 10:51:14AM +0400, Dmitry E. Oboukhov wrote:
> On 10:38 Wed 27 Jun     , Vadim Vatlin wrote:
> > Самбу я пока не устанавливаю.
> 
> > делаю:
> > shell> echo "samba samba/generate_smbpasswd boolean false" | debconf-set-selections
> 
> > проверяю:
> > shell> debconf-get-selections | grep generate_smbpasswd
> > samba	samba/generate_smbpasswd	boolean	false
> 
> > aptitude install samba
> > И он мне вкачивает всех пользователей из /etc/passwd,
> > а вопрос generate_smbpasswd получает значение true.
> 
> > Это нормальное поведение или bugreport писать?
> ага похоже на то 
> вот глянь что у них скрипт делает:
> 
> # We vary the priority of the next question depending on whether
> # the password database already exists...
> if [ -e /etc/samba/smbpasswd -o -e /var/lib/samba/passdb.tdb ]; then
>   PRIORITY="low"
> else
>   # If 'encrypt passwords' is true in smb.conf, and smbpasswd
>   # does not exist, default to yes here.
>   FILE=/etc/samba/smb.conf
>   db_fget samba/generate_smbpasswd seen

Вот здесь мы проверили стоит ли у нас на переменной
samba/generate_smbpasswd флаг seen (что пользователь уже отвечал на этот
вопрос). debconf-(set|get)-selections похоже не имеют механизма передачи
этого флага (в формате не предусмотрен), а он вообще-то нужен. Или я ошибаюсь? 
Тогда багу/отсутствующую фичу нужно добавлять в debconf-(set|get)-selections
IMHO. Видимо с dpkg-preconfigure эта бага не вылезет.

>   if [ "$RET" = "false" ] && [ -f "$FILE" ]; then
>     ENCRYPT=`smbconf_retr "encrypt passwords"`
>           if [ "$ENCRYPT" ]; then
>       ENCRYPT=`echo $ENCRYPT | tr '[A-Z]' '[a-z]'`
>       if [ "$ENCRYPT" = "yes" ]; then
>         ENCRYPT=true
>       fi
>       if [ "$ENCRYPT" = "no" ]; then
>         ENCRYPT=false
>       fi
>     fi 
>                 db_set samba/generate_smbpasswd "$ENCRYPT"
>         fi
>   PRIORITY="medium"
> fi
>

Кусок выше при передаче метаданных "как надо" не выполнялся бы.

> db_input $PRIORITY samba/generate_smbpasswd || true
> db_go

WBR
Dmitri Ivanov



Reply to: