Franklin Weng writes:
However in the Archive section I couldn't see anything and all the lists were "inactive" and hence were hidden by default.
If you can see that much, HyperKitty is running.
There is no systemd service for Hyperkitty.
systemd runs Apache, which loads mod_wsgi, which runs Python, which imports the HyperKitty package, which responds to web requests by building pages dynamically using Django from information from Django's database, which may be backed by MySQL, PostgreSQL, or sqlite3. Sounds complicated, but it performs well once you get it properly configured.
Have you sent mail to the lists? Has it been delivered to subscribers?
I confirmed that api_key set in the /etc/mailman3/mailman-hyperkitty.cfg and /etc/mailman3/mailman-web.py is the same. I also confirmed that the apache2 wsgi module has been loaded.
In the mailman.cfg database is set to mysql and in the mailman-web.py database is set to sqlite3. Does it matter?
I don't think they need to be the same. The HyperKitty and Postorius databases are a Django database backed by an RDBMS (typically sqlite3, PostgreSQL, or MySQL). The databases used by the Mailman core and the Django webservices HyperKitty and Postorius are conceptually separate, although they can be backed by the same RDBMS server.
However, sqlite3 is likely to result in poor performance compared to PostgreSQL or MySQL.
You have to configure HyperKitty's database. In my sqlite3 test installation it looks like this:
# Top of settings.py. BASE_DIR is the directory containing settings.py. BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# 30-50 lines later: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', # This database file is in the same directory as settings.py. 'NAME': os.path.join(BASE_DIR, 'hyperkitty.db'), # Not used with sqlite3: 'USER': '', 'PASSWORD': '', 'HOST': '', 'PORT': '', } }
Does the database file named by 'NAME' exist?
I would recommend getting your sqlite3 configuration running, then you know that HyperKitty is partly working if the hyperkitty.db file is getting updated as you test Mailman by sending messages, and you can check if it's fully working by using HyperKitty's web pages. Then convert to MySQL for performance.
Steve