Bug 2154 - Требуются дополнительные Provides и Conflicts в spec-файле.
: Требуются дополнительные Provides и Conflicts в spec-файле.
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/uw-imap)
: unstable
: all Linux
: P4 blocker
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2003-02-04 21:10 by
Modified: 2003-08-25 15:18 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2003-02-04 21:10:34
Хотелось бы в следующей сборке иметь следующее:

Provides: POP3D, IMAPD
Conflicts: courier-imap

Дело в том, что в дистрибутиве сейчас два пакета предоставляют imap и pop3
сервисы: uw-imap и courier-imap. И в существуют пакеты, которым требуется
абстрактный сервис imap или pop3, а не какой-то конкретный пакет. В решении
этой проблемы и поможет Provides: POP3D, IMAPD.

А так как uw-imap и courier-imap конфликтуют между собой (одинаковое имя
imap-демона и один и тот же tcp-порт), то Conflicts: courier-imap поможет
правильно обойти эту ситуацию (при установке одного пакета другой автоматом
удалится, вместо прерывания процесса установки/обновления).
---

---
------- Comment #1 From 2003-02-06 18:30:57 -------
В uw-imap-2001a-alt9 использован ещё более продвинутый подход :-) (как в
emacs-gnus):

###########################################
# Relations with other POP3/IMAP server pkgs (like courier-imap)

# Provide the abstract service names (which are virtual pkg names),
# specify their origin (our pkg name as the epoch + version-release):
Provides: IMAPD = %name:%version-%release
Provides: POP3D = %name:%version-%release

# Conflict with all other real pkgs which provide the same services
# (they should specify the origin the same way, so the epoch-version-release
# of the virtual pkgs POP3D & IMAPD will always differ from that of ours if 
# they are provided by a different real pkg):
Conflicts: IMAPD < %name:%version-%release
Conflicts: IMAPD > %name:%version-%release
Conflicts: POP3D < %name:%version-%release
Conflicts: POP3D > %name:%version-%release

# End of the statements to describe relations with other POP3/IMAP server pkgs
########################################


Тем самым он конфликтует в том числе и с coourier-imap. Для завершённости
хорошо бы такое же иметь и в courier-imap, i.e. IMAPD & POP3D с версиями,
отражающими происхождение (реальный пакет), и конфликты с IMAPD & POP3D
других версий.


А в принципе ведь можно представить себе сосуществование разных
программ-серверов IMAP в одной системе... если такое кому-нибудь понадобится,
придётся думать о более тонком подходе, чем conflicts.
------- Comment #2 From 2003-02-06 18:30:57 -------
В uw-imap-2001a-alt9 использован ещё более продвинутый подход :-) (как в
emacs-gnus):

###########################################
# Relations with other POP3/IMAP server pkgs (like courier-imap)

# Provide the abstract service names (which are virtual pkg names),
# specify their origin (our pkg name as the epoch + version-release):
Provides: IMAPD = %name:%version-%release
Provides: POP3D = %name:%version-%release

# Conflict with all other real pkgs which provide the same services
# (they should specify the origin the same way, so the epoch-version-release
# of the virtual pkgs POP3D & IMAPD will always differ from that of ours if 
# they are provided by a different real pkg):
Conflicts: IMAPD < %name:%version-%release
Conflicts: IMAPD > %name:%version-%release
Conflicts: POP3D < %name:%version-%release
Conflicts: POP3D > %name:%version-%release

# End of the statements to describe relations with other POP3/IMAP server pkgs
########################################


Тем самым он конфликтует в том числе и с coourier-imap. Для завершённости
хорошо бы такое же иметь и в courier-imap, i.e. IMAPD & POP3D с версиями,
отражающими происхождение (реальный пакет), и конфликты с IMAPD & POP3D
других версий.


А в принципе ведь можно представить себе сосуществование разных
программ-серверов IMAP в одной системе... если такое кому-нибудь понадобится,
придётся думать о более тонком подходе, чем conflicts.