summary refs log tree commit diff
path: root/nixos/modules/services/mail/mailman.nix
Commit message (Collapse)AuthorAge
* nixos/mailman: restart services on failure and increase mailman timeoutsMolly Miller2023-11-13
|
* Merge master into staging-nextgithub-actions[bot]2023-10-20
|\
| * nixos: fix bad mkEnableOption descriptionsBjørn Forsman2023-10-20
| | | | | | | | | | Fix descriptions that don't account for (1) the "Whether to enable" prefix or (2) the automatically added trailing dot.
* | Merge #260527: Mailman fixesVladimír Čunát2023-10-20
|\ \ | |/ |/| | | ...into staging-next
| * nixos/mailman: ensure uwsgi uses mailman's pythonAlyssa Ross2023-10-11
| | | | | | | | | | If they differ, uwsgi will fail to start, because it won't be able to find the appropriate libraries.
* | treewide: remove myself (ma27) from a few packagesMaximilian Bosch2023-10-18
| | | | | | | | | | | | | | | | | | | | | | | | | | It's time again, I guess :> Main motivation is to stop being pinged about software that I maintained for work now that I'm about to switch jobs. There's no point in pinging me to review/test updates or to debug issues in e.g. the Atlassian stack or on mailman since I use neither personally. But there's also a bunch of other stuff that I stopped using personally. While at it I realized that I'm still maintainer of a few tests & modules related to packages I stopped maintaining in the past already.
* | nixos/mailman: store locks in ephemeral runtime directoryMolly Miller2023-10-12
|/ | | | nixosTests.mailman: test mailman master lock handling
* nixos/mailman: set RemainAfterExit for settingsAlyssa Ross2023-05-19
| | | | | This seems to be required to have the unit re-run if services.mailman.restApiPassFile gets set.
* nixos/mailman: randomly generate REST API tokenAlyssa Ross2023-05-19
|
* nixos/manual: render module chapters with nixos-render-docspennae2023-01-27
| | | | | | | | | | | | | | | | this converts meta.doc into an md pointer, not an xml pointer. since we no longer need xml for manual chapters we can also remove support for manual chapters from md-to-db.sh since pandoc converts smart quotes to docbook quote elements and our nixos-render-docs does not we lose this distinction in the rendered output. that's probably not that bad, our stylesheet didn't make use of this anyway (and pre-23.05 versions of the chapters didn't use quote elements either). also updates the nixpkgs manual to clarify that option docs support all extensions (although it doesn't support headings at all, so heading anchors don't work by extension).
* nixos/mailman: fix hyperkitty css/js when virtualRoot is `/`Maximilian Bosch2023-01-04
| | | | | The `manage-script-name` / `mount` approach doesn't work if you don't serve your instance behind e.g. `/lists`.
* nixos: fix typosfigsoda2022-12-17
|
* nixos/mailman: remove trailing slash from `/static` locationMaximilian Bosch2022-12-03
| | | | | Otherwise HTTP routes such as `/static/django-mailman3/css/main.css` will cause a 404.
* nixos/mailman: add serve.virtualRoot optionAlyssa Ross2022-09-07
| | | | | | On spectrum-os.org, mailman-web is run at /lists. With this change, it's possible for us to switch from a custom uWSGI configuration to the one now built in to the Mailman module.
* nixos/*: automatically convert option descriptionspennae2022-08-31
| | | | | | | | | | | | conversions were done using https://github.com/pennae/nix-doc-munge using (probably) rev f34e145 running nix-doc-munge nixos/**/*.nix nix-doc-munge --import nixos/**/*.nix the tool ensures that only changes that could affect the generated manual *but don't* are committed, other changes require manual review and are discarded.
* nixos/*: automatically convert option docs to MDpennae2022-08-03
| | | | once again using nix-doc-munge (https://github.com/pennae/nix-doc-munge/commit/69d080323ae27c0d8da3967c62b925a9aedb2828)
* nixos/*: normalize link formatpennae2022-08-03
| | | | | | | | | make (almost) all links appear on only a single line, with no unnecessary whitespace, using double quotes for attributes. this lets us automatically convert them to markdown easily. the few remaining links are extremely long link in a gnome module, we'll come back to those at a later date.
* treewide: automatically md-convert option descriptionspennae2022-07-30
| | | | | | | | | | | | | | | | | | | | | | the conversion procedure is simple: - find all things that look like options, ie calls to either `mkOption` or `lib.mkOption` that take an attrset. remember the attrset as the option - for all options, find a `description` attribute who's value is not a call to `mdDoc` or `lib.mdDoc` - textually convert the entire value of the attribute to MD with a few simple regexes (the set from mdize-module.sh) - if the change produced a change in the manual output, discard - if the change kept the manual unchanged, add some text to the description to make sure we've actually found an option. if the manual changes this time, keep the converted description this procedure converts 80% of nixos options to markdown. around 2000 options remain to be inspected, but most of those fail the "does not change the manual output check": currently the MD conversion process does not faithfully convert docbook tags like <code> and <package>, so any option using such tags will not be converted at all.
* nixos/mailman: don't leak MAILMAN_REST_API_PASS into the storeMaximilian Bosch2022-07-20
|
* nixos/mailman: strip trailing `\n` when reading the secretMaximilian Bosch2022-07-04
|
* nixos/mailman: implement LDAP support for postoriusMaximilian Bosch2022-07-04
|
* mailman: split python env for web and mailmanMaximilian Bosch2022-05-20
|
* mailman: refactor package structureMaximilian Bosch2022-05-20
| | | | | | | | | | | | * Removed unused `.package`-option. * Added explicit postgresql support. * Create a new meta-package for mailman to make sure each component has the **same** python and packages can be downgraded if needed (e.g. psycopg2 or sqlalchemy) without interfering with `pythonPackages` in any way. * Document why certain python overrides are needed. Closes #170035 Closes #158424
* Merge pull request #167324 from alyssais/mailman-postfixLinus Heckemann2022-04-20
|\ | | | | nixos/{postfix,mailman}: fix ordering between services
| * nixos/mailman: ensure Postfix is started after MailmanAlyssa Ross2022-04-20
| | | | | | | | | | | | | | | | On first run, Postfix will refuse to start if it's started before Mailman is up, because it'll try to read the map files generated Mailman the first time it's started, and they won't exist yet. To fix this, make sure Postfix isn't started until after Mailman is up if they're both activated at the same time.
| * nixos/postfix: pull setup into its own unitAlyssa Ross2022-04-05
| | | | | | | | | | | | | | | | | | | | | | | | | | Consider a service that generates postfix lookup tables with postmap(1), like Mailman. It needs the Postfix configuration file to exist, but Postfix qmgr needs all the lookup tables its configured with to exist before it starts. So the service that runs postmap needs to run after the Postfix configuration and directory structure is generated, but before Postfix itself is started. To enable this, we split Postfix into two units: a oneshot unit that sets up the configuration, and a longrun unit that supervises the Postfix daemons. The postmap services can then be inserted in between these two units.
* | Merge pull request #167323 from alyssais/mailman-ext_dirLinus Heckemann2022-04-12
|\ \ | | | | | | nixos/mailman: remove obsolete setting
| * | nixos/mailman: remove obsolete settingAlyssa Ross2022-04-05
| |/ | | | | | | This was dropped in mailman 3.2.0.
* | Merge pull request #167322 from alyssais/mailman-webHostsLinus Heckemann2022-04-09
|\ \ | | | | | | nixos/mailman: improve empty webHosts error
| * | nixos/mailman: improve empty webHosts errorAlyssa Ross2022-04-05
| |/ | | | | | | | | Now this configuration mistake will generate the assertion message, instead of "error: list index 0 is out of bounds".
* / nixos/mailman: use separate virtualHostsWei Tang2021-10-17
|/
* nixos/doc: clean up defaults and examplesNaïm Favier2021-10-04
|
* nixos/mailman: Fix mailman-settings.service configurationMichal Sojka2021-06-02
| | | | | | | | Without this change, mailman-settings.service is not guaranteed to complete before dependent services. This can lead to various errors like: mailman-web-setup.service: Changing to the requested working directory failed: No such file or directory
* mailman: add myself as a maintainer all aroundAlyssa Ross2021-04-17
|
* nixos/mailman: add http listener for uwsgiMilan Pässler2021-04-16
| | | | | | | | | With the config suggested in the module docs both Mailman core and Hyperkitty are running, but Mailman core can not connect to Hyperkitty, since the default hyperkitty.baseUrl is not set up by the module. This adds a http listener to the uwsgi config and changes the default hyperkitty.baseUrl to connect to this http listener.
* mailman-web: 2019-09-29 -> 2021-04-10Alyssa Ross2021-04-14
| | | | | | | | | * Make it clearer what code comments apply to * Fix the state directory (this was changed in the update) * Add m1cr0man as a maintaner Co-authored-by: Lucas Savva <lucas@m1cr0man.com> Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
* Revert "mailman-web-unstable: 2019-09-29 -> 2021-04-10 (#119135)"Alyssa Ross2021-04-14
| | | | | | | This reverts commit 8dbd553792dcaf5074c47367ed6740f516862bad. The update has changed where mailman-web looks for its database and broken the Mailman module in NixOS.
* mailman-web-unstable: 2019-09-29 -> 2021-04-10 (#119135)Lucas Savva2021-04-13
| | | Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
* nixos/mailman: remove spurious uwsgi.service depAlyssa Ross2021-01-06
| | | | | | | | | b478e0043c5 removed every other instance of uwsgi.service and httpd.service from Mailman before and requiredBy lists. This one looks like it was just missed, since I can't see a reason to keep it but remove the others. Fixes: b478e0043c5 ("nixos/mailman: refactor")
* Merge pull request #105397 from kisik21/mailman-other-mta-supportLinus Heckemann2020-12-14
|\ | | | | nixos/mailman: make Postfix support optional (provided you configure the MTA yourself)
| * nixos/mailman: make Postfix support optional (provided you configure the MTA ↵Vika2020-12-14
| | | | | | | | | | | | | | | | | | yourself) Mailman can now work with MTAs other than Postfix. You'll have to configure it yourself using the options in `services.mailman.settings.mta`. This addition is reflected in the release notes for 21.03.
* | nixos/mailman: run non-minutely jobsAlyssa Ross2020-12-11
|/ | | | | Fixes: b478e0043c53964c99cc9a145c155a673af3c7d8 ("nixos/mailman: refactor")
* nixos/mailman: fix search index locationLinus Heckemann2020-06-18
|
* mailman: log to journalLinus Heckemann2020-06-18
|
* nixos/mailman: RFC42-iseLinus Heckemann2020-06-18
|
* nixos/mailman: fix clearing static filesLinus Heckemann2020-06-18
|
* nixos/mailman: document, add maintainersLinus Heckemann2020-06-18
|
* nixos/mailman: refactorLinus Heckemann2020-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add serve.enable option, which configures uwsgi and nginx to serve the mailman-web application; - Configure services to log to the journal, where possible. Mailman Core does not provide any options for this, but will now log to /var/log/mailman; - Use a unified python environment for all components, with an extraPackages option to allow use of postgres support and similar; - Configure mailman's postfix module such that it can generate the domain and lmtp maps; - Fix formatting for option examples; - Provide a mailman-web user to run the uwsgi service by default - Refactor Hyperkitty's periodic jobs to reduce repetition in the expressions; - Remove service dependencies not related to functionality included in the module, such as httpd -- these should be configured in user config when used; - Move static files root to /var/lib/mailman-web-static by default. This avoids permission issues when a static file web server attempts to access /var/lib/mailman which is private to mailman. The location can still be changed by setting services.mailman.webSettings.STATIC_ROOT; - Remove the webRoot option, which seems to have been included by accident, being an unsuitable directory for serving via HTTP. - Rename mailman-web.service to mailman-web-setup.service, since it doesn't actually serve mailman-web. There is now a mailman-uwsgi.service if serve.enable is set to true.
* services.mailman: RemainAfterExit so settings take effect properlyBenjamin Staffin2020-03-02
| | | | | | | | Prior to this fix, changes to certain settings would not be applied automatically and users would have to know to manually restart the affected service. A prime example of this is `services.mailman.hyperkitty.baseUrl`, or various things that affect `mailman3/settings.py`
* nixos/mailman: make mailman package configurableAlyssa Ross2020-01-30
| | | | | This will allow users to provide other archiver plugins than the default mailman-hyperkitty.