Bug 10226

Summary: Не устанавливается пакет
Product: Sisyphus Reporter: Slava Dubrovskiy <dubrsl>
Component: mailmanAssignee: Igor Muratov <migor>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: blocker    
Priority: P2 CC: lakostis, ldv, vvk
Version: unstable   
Hardware: all   
OS: Linux   

Description Slava Dubrovskiy 2006-11-02 13:45:35 MSK
Пакет не устанавливается, жалуясь на:
Следующие пакеты имеют неудовлетворенные зависимости:
  mailman: Требует: python2.4(Defaults) но пакет не может быть установлен
           Требует: python2.4(Mailman) но пакет не может быть установлен
           Требует: python2.4(japanese) но пакет не может быть установлен
           Требует: python2.4(korean) но пакет не может быть установлен
           Требует: python2.4(mm_config) но пакет не может быть установлен
E: Извините, `битые' пакеты


Из-за #8829 в спек было поставлено AutoProv: yes, nopython
А добавить Provides: python2.4(Defaults) python2.4(Mailman) python2.4(japanese)
python2.4(korean) python2.4(mm_config)
забыли.
Добавление вышеуказанных Provides исправляет ситуацию.
Steps to Reproduce:
1.apt-get install mailman
2.
3.
Comment 1 Slava Dubrovskiy 2006-11-02 17:59:00 MSK
Не все так просто. Такой пакет получается не работоспособным.
Traceback (most recent call last):
  File "/usr/share/mailman/cron/gate_news", line 38, in ?
    import paths
  File "/usr/share/mailman/cron/paths.py", line 56, in ?
    import japanese
ImportError: No module named japanese

В спеке стоит:
# DIRTY HACK!!! NEED RESEARCH!!!
%__rm -rf $RPM_BUILD_ROOT%prefix/pythonlib/{japanese,korean,lib,korean.pth}

Т.е. эти модули перед проверкой ELF объектов удаляются, и логично
получается что пекет не провайдит их. А без них не работает.
А если не удалять, то не проходит
verify-elf: ERROR:
./usr/share/mailman/pythonlib/japanese/c/_japanese_codecs.so: ELF object
out of allowed directory tree
verify-elf: WARNING:
./usr/share/mailman/pythonlib/japanese/c/_japanese_codecs.so: undefined
symbol: PyExc_ValueError
verify-elf: WARNING:
./usr/share/mailman/pythonlib/japanese/c/_japanese_codecs.so: undefined
symbol: PyExc_UnicodeError
и т.д.

Поэтому предлагаю убрать %__rm -rf
$RPM_BUILD_ROOT%prefix/pythonlib/{japanese,korean,lib,korean.pth}
и добавить %set_verify_elf_method fhs=relaxed

И думать, как правильно перепаковать пакет
Comment 2 Igor Muratov 2006-11-24 00:45:48 MSK
Спасибо, в общем-то я особо не думал а просто перепаковал как предлагалось,
заодно обновил версию до релиза.
Смотрите в mailman-2.1.9-alt1
Comment 3 Slava Dubrovskiy 2006-11-24 13:30:48 MSK
(In reply to comment #2)
> Спасибо, в общем-то я особо не думал а просто перепаковал как предлагалось,
> заодно обновил версию до релиза.
> Смотрите в mailman-2.1.9-alt1
Это вы брали тот что щас в Дедале? Брать надо именно его.

Comment 4 Igor Muratov 2006-11-24 17:57:38 MSK
Нет, я сделал на основе своего пакета. Но ваш посмотрю и что можно будет - смержу.
Comment 5 Slava Dubrovskiy 2006-11-24 18:19:58 MSK
(In reply to comment #4)
> Нет, я сделал на основе своего пакета. Но ваш посмотрю и что можно будет - смержу.
Наверно "смержить" не очень получится, т.к. спек переписан с нуля. И очень много
что сделано. Я его долго доводил (см. changelog). Обязательно посмотрите. Я
использую эту сборку (x86_64) и пока не на что жаловаться.