Рейтинг:0

После обновления mailman до mailman3 невозможно использовать утилиты CLI: ImportError: нет модуля с именем Mailman

флаг ru

Походив по садовой дорожке почитав документацию, и заблудившись - в частности, материалами я нашел здесь - из чистого разочарования я в конце концов нашел свой путь к "официальной Вики", который здесь, и это указало мне на «отсутствующие» утилиты интерфейса командной строки (CLI). В моей установке они находятся в /lib/mailman/bin. Однако они не работают!

Например, запуск от имени пользователя mailman:

$ add_members -h
Traceback (последний последний вызов):
  Файл "/lib/mailman/bin/add_members", строка 89, в <module>
    из Mailman импортировать i18n
ImportError: Нет модуля с именем Mailman

Я уверен, что кто-то спросит, так что:

Fedora Server 32 с запущенным mailman3-3.2.2-1.fc32.noarch ...И около 153 пакетов Python3... Команда python3 --version говорит, что это 3.8.5.

Кстати, я использовал DNF для установки Mailman3. Я понятия не имею, должен ли я был установить что-то большее, чем просто это, но обычно DNF будет жаловаться, если есть неразрешенные зависимости, а он не жаловался.

... Мне действительно нужно, чтобы они работали, и я ни в коем случае не программист на Python. И я действительно не хочу тратить время на изучение этого сейчас... Зачем упоминать об этом? Продолжай читать:

В качестве "хлебных крошек" (как в народной сказке Гензель и Гретель) для тех, кто может следовать дальше, из документации на ранее цитированном сайте, ВИДИМОСТЬ, опять же, по ТОМУ источнику, вы должны попасть в питон оболочка, напишите свой собственный питон функции и, короче говоря, стать экспертом по библиотекам Python И Mailman только для того, чтобы использовать то, что они называют интерфейсом CLI. Сумасшедший!

Если вы идете по этому пути, вы используете su для mailman (чтобы получить правильный пользовательский контекст), а затем:

$ PYTHONSTARTUP= оболочка mailman3

И вы получаете приглашение python >>> и оттуда вам нужно делать такие вещи, как:

>>> из mailman.testing.documentation import cli
>>> command = cli('mailman.commands.cli_withlist.shell')
>>> command('оболочка почтальона --details')

И отсюда МНОГО всего возможно, и все это требует много печатать И знать питон гораздо лучше, чем сейчас. Для этого есть документация сюда. ... Все, что я действительно хочу сделать, это импортировать файл, содержащий имена людей и адреса электронной почты, сохраненные из предыдущей версии, и добавить их в список, но в этой среде для этого нужно МНОГО печатать.

К счастью, что все РАБОТАЕТ, лучшее, что я мог сказать из своих не полностью информированных попыток попробовать это.

Должно быть «очень легко» писать сценарии, которые будут эмулировать старые почтальон 2.x утилиты, так что, возможно, вы видите, как я был разочарован, прежде чем обнаружил, что утилиты ПО-ПРЕЖНЕМУ существуют, они просто не работают! ...Я на 100% уверен, что мог бы изучить Python и библиотеку mailman3 и написать свою собственную, но у меня нет на это времени. ... ИТАК, мне нужно, чтобы эти другие утилиты работали.

Рейтинг:0
флаг ru

Я решил это через настойчивость. После того, что я задокументировал здесь, у меня теперь есть инструменты командной строки, работающие правильно, и Mailman работает достаточно хорошо, хотя у меня еще нет веб-интерфейса. ...Первый новый список создается и правильно отправляет письма.

Я решил, что МОЖЕТ быть, я не установил ДОСТАТОЧНО программного обеспечения, но не знал, что я мог пропустить, поэтому я снова запустил dnf следующим образом:

# dnf установить mailman3*
Последняя проверка срока действия метаданных: 2:38:45 назад, пн, 31 января 2022 г., 16:09:14 по тихоокеанскому стандартному времени.
Пакет mailman-3:2.1.34-1.fc32.x86_64 уже установлен.
Пакет mailman3-3.2.2-1.fc32.noarch уже установлен.
Зависимости устранены.
================================================== ===============================
 Размер репозитория версии пакета Arch
================================================== ===============================
Установка:
 mailman3-fedmsg-plugin noarch 0.5-14.fc32 fedora 21k
Установка зависимостей:
 Обновления fedmsg-base noarch 1.1.2-1.fc32 22 тыс.
 openpgm x86_64 5.2.122-22.fc32 федора 189 КБ
 python3-Automat noarch 20.2.0-1.fc32 федора 65 КБ
 python3-arrow noarch 0.14.6-3.fc32 федора 82 КБ
 python3-постоянно noarch 15.1.0-9.fc32 федора 20 КБ
 python3-daemon noarch 2.2.3-8.fc32 федора 38 КБ
 python3-docutils noarch 0.15.2-4.fc32 федора 1,5 М
 python3-fedmsg noarch 1.1.2-1.fc32 обновляет 320 тыс.
 python3-hamcrest noarch 1.9.0-13.fc32 федора 73 КБ
 python3-гиперссылка noarch 19.0.0-6.fc32 федора 75 КБ
 python3-incremental noarch 17.5.0-10.fc32 федора 33 КБ
 python3-kitchen noarch 1.2.6-5.fc32 федора 88k
 python3-lockfile noarch 1:0.11.0-17.fc32 Fedora 30 КБ
 python3-moksha-common noarch 1.2.5-14.fc32 федора 43 КБ
 python3-moksha-hub noarch 1.5.17-6.fc32 федора 76 КБ
 python3-psutil x86_64 5.6.7-1.fc32 федора 383 КБ
 python3-pyasn1-modules noarch 0.4.8-1.fc32 федора 211 КБ
 python3-stomper noarch 0.4.3-6.fc32 федора 49 КБ
 python3-twisted x86_64 20.3.0-1.fc32 обновляет 6.0 M
 python3-txws noarch 0.9.1-20.fc32 обновляет 24 тыс.
 python3-txzmq noarch 0.8.0-13.fc32 федора 47 КБ
 python3-zmq x86_64 18.1.0-3.fc32 Федора 412 КБ
 zeromq x86_64 4.3.3-1.fc32 обновляет 496 тыс.
Установка слабых зависимостей:
 python3-service-identity noarch 18.1.0-6.fc32 федора 27 КБ

Сводка транзакции
================================================== ===============================
Установите 25 пакетов

Общий размер загрузки: 10 МБ
Установленный размер: 49 м
Это нормально [т/н]:
...и т.д...

Одним из последствий этого было отключение почтальон3, поэтому я снова включил его и перезапустил с помощью systemctl. Это также уничтожило предыдущий список (я смог создать, но не заполнить список, как это было раньше), поэтому мне пришлось создать список с именем почтальон во-первых - насколько я помню, без этого он бы не запустился. Но с новым почтальон список адресов электронной почты создан, ТОГДА почтальон3 начнется, и затем я создал свой новый список рассылки.

Я не ожидал, что его переустановят Почтальон3, и я предполагаю, что это произошло потому, что служба была отключена. ... Так что ВОЗМОЖНО, основной список был стерт, потому что я не остановил все еще работающий почтальон3.сервер оказание услуг.

В ОТЛИЧИИ от предыдущей версии 2.x почтальон, мне пришлось вручную добавить новые псевдонимы списка в /etc/псевдонимы а затем запустить посталиас и перезапустить постфикс чтобы они вступили в силу - довольно досадный шаг назад?! Но, эй, это сработало.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.