5 / 5
May 2024

Hi,

ich wollte nach dem Server-Upgrade von Debian 11 auf 12 nochmal den EGw bzw. Dovecot Push gemäß
dieser Anleitung testen:

Pakete sind installiert:

dpkg -l | grep lua
ii liblua5.2-0:amd64 5.2.4-3 amd64 Shared library for the Lua interpreter version 5.2
ii liblua5.4-0:amd64 5.4.4-3 amd64 Shared library for the Lua interpreter version 5.4
ii lua-json 1.3.4-2 all JSON decoder/encoder for Lua
ii lua-lpeg:amd64 1.0.2-2 amd64 LPeg library for the Lua language
ii lua-socket:amd64 3.1.0-1+b1 amd64 TCP/UDP socket library for the Lua language

Ich sehe im Dovecot das er das Script ausführen möchte, allerdings sucht er nach einem lua 5.4:

2024-03-29T13:47:57.248777+01:00 mail dovecot: lda(user1)<1882>: Error: lua: lua_pcall(/etc/dovecot/dovecot-push.lua) failed: /etc/dovecot/dovecot-push.lua:17: module ‘json’ not found:#012#011no field package.preload[‘json’]#012#011no file ‘/usr/local/share/lua/5.4/json.lua’#012#011no file '[…] #012#011no file ‘./json.so’#012stack traceback:#012#011[C]: in function ‘require’#012#011/etc/dovecot/dovecot-push.lua:17: in main chunk

Wenn ich mir lua-json bei Debian so anschaue gibt es kein 5.4:
https://packages.debian.org/bookworm/all/lua-json/filelist1

Nur im lua-cjson das aber laut Anleitung nicht benötigt wird?
https://packages.debian.org/bookworm/all/lua-cjson/filelist

Vielleicht hat jemand eine Idee?

  • created

    Mar '24
  • last reply

    May '24
  • 4

    replies

  • 586

    views

  • 2

    users

  • 1

    like

  • 4

    links

Unsere Dovecot Container basieren auf Ubuntu:20.04 und versenden folgende Pakete bzw. Kommando zur Installation:
apt-get install -y ssmtp dovecot-{core,imapd,sqlite,mysql,ldap,managesieved,sieve,pop3d,lmtpd,submissiond,lua} lua-{socket,json}

Keine Ahnung ob Debian das lua-json für Lua 5.4 durch lua-cjson ersetzt hat, kann schon sein. Musst Du ggf. ausprobieren, oder unsere Container bzw. Ubuntu 20.04 verwenden.

Ralf

1 month later

So ich bin etwas weiter, hier zur Dokumentation:
In Debian 12 gibt es ein Bug, man muss json und json.lua von 5.3 nach 5.4 kopieren (sind nur symlinks nach 5.1):
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1059679

Zusätzlich müssen in Debian folgende Pakete zusätzlich installiert werden:
apt-get install lua-sec lua-luaossl

Hast Du mal überlegt, das egroupware-mail Paket zu installieren, und danach einfach die Mailboxes rein zu kopieren. Das Paket bringt Dovecot und Postfix in jeweils einem Container mit, die Ihre Konfig aus der Datenbank der EGroupware bekommen. Nach der initialen Konfig kannst Du - ganz normal - die Dovecot oder Postfix Konfigfiles nach Deinen Vorstellungen anpassen.

Ralf

Hatte ich überlegt, aber wir haben ein 600 GB großen Mailserver, den möchte ich aus viele Gründen nicht umziehen :slight_smile:

Der Push funktioniert jetzt mit EGw und Dovecot, es lag tatsächlich an dem Debian Bug und an den beiden Paketen die gefehlt haben. In Ubuntu gibt es auch lua-sec lua-luaossl, evtl. haben die aber andere Abhängigkeiten und werden bei eurem Mail Paket automatisch installiert.

Oder macht ihr den Push nicht über https?