Commit graph

483 commits

Author SHA1 Message Date
Izorkin 6263c45580
nixos/roundcube: add tmp directory 2023-03-17 19:40:23 +03:00
Luke Granger-Brown f43347d8a3
Merge pull request #214346 from SFrijters/postfix-ipv4
nixos/postfix: restrict inet_protocols to ipv4 when ipv6 is disabled
2023-02-27 18:24:53 +00:00
Jonas Heinrich 13ff144c70 nixos/maddy: Add option ensureAccounts 2023-02-17 17:42:27 -05:00
pennae bf4c0c1900 nixos/*: remove trailing period in mkEnableOptions
those are added by mkEnableOption, and .. is replaced to … by markdown
processing.
2023-02-08 15:23:34 +01:00
paumr 9d4fdb9685 nixos/roundcube: fixed nginx configuration
the changes are required for oauth setups,
and are based on:
https://github.com/roundcube/roundcubemail/issues/8191#issuecomment-919850328
2023-02-06 18:11:42 +01:00
Stefan Frijters 11fa179533
nixos/postfix: restrict inet_protocols to ipv4 when ipv6 is disabled
In the previous state, postfix would still try to use IPv6 addresses,
even when it is disabled in the global networking config.

Cf. https://www.postfix.org/postconf.5.html:

  With Postfix 2.8 and earlier the default is "ipv4". For backwards compatibility with these releases,
  the Postfix 2.9 and later upgrade procedure appends an explicit "inet_protocols = ipv4" setting to
  main.cf when no explicit setting is present.
  This compatibility workaround will be phased out as IPv6 deployment becomes more common.

  inet_protocols = ipv4
  inet_protocols = all (DEFAULT)
  inet_protocols = ipv6
  inet_protocols = ipv4, ipv6

So setting it to 'all' conditionally does not help, as we are now on version 3.x.
2023-02-03 11:29:24 +01:00
pennae 0a6e6cf7e6 nixos/manual: render module chapters with nixos-render-docs
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).
2023-01-27 20:07:34 +01:00
Bruno Inec dbbb062d47
Apply suggestion
Co-authored-by: Aaron Andersen <aaron@fosslib.net>
2023-01-20 14:39:35 +01:00
Bruno Inec edb6b10966
add warning if not using password_file 2023-01-20 00:39:34 +01:00
Bruno Inec 5edf9bd76f
Apply suggestion
Co-authored-by: Aaron Andersen <aaron@fosslib.net>
2023-01-20 00:39:34 +01:00
Bruno Inec 15414ff8e1
databaseDirectory -> StateDir and changed description 2023-01-20 00:39:33 +01:00
Bruno Inec 8f10857af4
let systemd handle /var/lib/goeland creation 2023-01-20 00:39:32 +01:00
Bruno Inec 988feead01
nixos/goeland: init 2023-01-20 00:39:31 +01:00
pennae 53fc887582 nixos/manual: move "edit the MD file" comments to generated XML 2023-01-10 12:34:37 +01:00
pennae bf92eaebe4 nixos/manual: generate module chapters with md-to-db.sh 2023-01-10 10:32:00 +01:00
pennae 23ea73b416 nixos/manual: enable smart quotes for all MD chapters 2023-01-10 10:31:59 +01:00
pennae 5320b4cff8 nixos/mailman: convert manual chapter to MD 2023-01-10 10:31:56 +01:00
pennae 0715ecf936 nixos/manual: normalize <programlisting>
makes sure that program listing tags are separated from their contents
by exactly a newline character. this makes the markdown translation
easier to verify (since no new newlines need to be inserted), and
there's no rendering difference anyway.
2023-01-10 10:31:52 +01:00
pennae 80a78f2e1e nixos/manual: remove links from program listings
markdown cannot represent those links. remove them all now instead of in
each chapter conversion to keep the diff for each chapter small and more
understandable.
2023-01-10 10:31:52 +01:00
Robin Gloster 271c20dd40
Merge pull request #209022 from mayflower/fix-mailman-hyperkitty-css
nixos/mailman: fix hyperkitty css/js when virtualRoot is `/`
2023-01-05 17:29:08 +01:00
pennae 9da5f12ecf modules: add mkPackageOptionMD
another transitional option factory, like mkAliasOptionModuleMD.
2023-01-05 02:33:13 +01:00
Maximilian Bosch 05f6dd4dc6
nixos/mailman: fix hyperkitty css/js when virtualRoot is /
The `manage-script-name` / `mount` approach doesn't work if you don't
serve your instance behind e.g. `/lists`.
2023-01-04 11:59:27 +01:00
Sandro 1fc59dfbc7
Merge pull request #206102 from 4z3/exim-can-credentials 2022-12-28 20:53:22 +01:00
Vincent Ambo aea521150d nixos/public-inbox: fix incorrectly restrictive option type
The `freeformType` of `settings.publicinbox` in this module prevented
users from setting settings on the `publicinbox` section itself (which
is necessary for making e.g. IMAP work correctly), and only allowed
configuration of nested per-inbox sections.

In general I believe that these overly specific types which are
traditional in NixOS, and this kind of config generation, are a huge
footgun. This commit is the least invasive change that makes the
module work correctly.
2022-12-25 16:45:58 +03:00
figsoda 6bb0dbf91f nixos: fix typos 2022-12-17 19:31:14 -05:00
Artturin 05a2dfd674 lib.replaceChars: warn about being a deprecated alias
replaceStrings has been in nix since 2015(nix 1.10)

so it is safe to remove the fallback

d6d5885c15
2022-12-15 22:25:51 +02:00
tv 816614bd62 nixos/exim: allow using service credentials
By settings User= to the actual Exim user, systemd will ensure that the
credentials directory will have the correct ownership, allowing users to
utilize LoadCredential=.  Exim still gets started as root (and drops
privileges) to preserve the previous behavior.
2022-12-14 16:43:46 +01:00
Maximilian Bosch 367897a68b
nixos/mailman: remove trailing slash from /static location
Otherwise HTTP routes such as `/static/django-mailman3/css/main.css`
will cause a 404.
2022-12-03 13:03:26 +01:00
amesgen 733ea72e16
nixos/rss2email: remove unnecessary cfg file indirection to fix test (#200108)
Previously, the NixOS test often failed as the copied config file is not
overwriteable. In actual setups, the restart interval is much bigger, such that
systemd-tmpfiles will correct the permissions inbetween.
2022-11-10 20:06:32 +01:00
Maximilian Bosch 91d7b27cfb
Merge pull request #189756 from alyssais/mailman-virtualRoot
nixos/mailman: add serve.virtualRoot option
2022-11-06 12:42:48 +01:00
MidAutumnMoon d3a95ce32c
nixos/listmonk: set proper SystemCallFilter 2022-10-25 11:55:18 +08:00
Christian Kögler 1c23b486f2
Merge pull request #189275 from wentasah/nullmailer-ownership
nixos/nullmailer: Always adjust ownership of spool directories
2022-10-01 12:51:57 +02:00
Sandro fad61ad09c
Merge pull request #188949 from RaitoBezarius/listmonk-module 2022-09-21 23:42:03 +02:00
Raito Bezarius 6b891f4788 nixos/listmonk: init module 2022-09-21 19:55:20 +02:00
Alyssa Ross 1cdd9a3fe6
nixos/mailman: add serve.virtualRoot option
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.
2022-09-07 07:10:27 +00:00
Michal Sojka 7e626703b0 nixos/nullmailer: Always adjust ownership of spool directories
When switching between different NixOS configurations (with and
without nullmailer and other services), it can happen that the UID of
the nullmailer user changes. When it happens, the nullmailer service
happily starts, but the user cannot send any email, because the
sendmail wrapper doesn't have permission to write them to the queue.

This commit prevents that. Instead of creating the directories by the
nullmailer user, which doesn't have permissions to change ownership,
we now create them by the systemd-tmpfiles, which has sufficient
permissions to adjust ownership.
2022-09-01 15:40:27 +02:00
pennae 1d41cff3dc nixos/*: convert straggler options to MD 2022-08-31 17:27:38 +02:00
pennae 722b99bc0e nixos/*: convert options with admonitions to MD
rendering changes only slightly, most changes are in spacing.
2022-08-31 16:36:16 +02:00
pennae bd56368848 nixos/*: md-convert hidden plaintext options
most of these are hidden because they're either part of a submodule that
doesn't have its type rendered (eg because the submodule type is used in
an either type) or because they are explicitly hidden. some of them are
merely hidden from nix-doc-munge by how their option is put together.
2022-08-31 16:32:54 +02:00
pennae 515c4727fa nixos/*: md-"convert" empty descriptions
for some reason these are not picked up properly by nix-doc-munge, so
we'll do this instead.
2022-08-31 16:32:54 +02:00
pennae 9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae ef176dcf7e nixos/*: automatically convert option descriptions
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.
2022-08-31 16:32:53 +02:00
pennae 1013069f52 nixos/*: convert more partially-md option descriptions
this mostly means marking options that use markdown already
appropriately and making a few adjustments so they still render
correctly. notable for nftables we have to transform the md links
because the manpage would not render them correctly otherwise.
2022-08-31 16:32:14 +02:00
pennae 0046b457d5 nixos/public-inbox: convert option descriptions to MD
no change to manpage or html.
2022-08-27 19:18:29 +02:00
pennae 6039648c50 nixos/*: automatically convert option docs 2022-08-19 22:40:58 +02:00
pennae b51f8036c2 nixos/*: use properly indented strings for option docs
using regular strings works well for docbook because docbook is not as
whitespace-sensitive as markdown. markdown would render all of these as
code blocks when given the chance.
2022-08-19 22:40:58 +02:00
pennae 087472b1e5 nixos/*: automatically convert option docs 2022-08-06 20:39:12 +02:00
pennae 423545fe48 nixos/*: normalize manpage references to single-line form
now nix-doc-munge will not introduce whitespace changes when it replaces
manpage references with the MD equivalent.

no change to the manpage, changes to the HTML manual are whitespace only.
2022-08-05 18:34:50 +02:00
pennae 61e93df189 nixos/*: automatically convert option docs to MD
once again using nix-doc-munge (69d080323a)
2022-08-03 22:46:41 +02:00
pennae 3aebb4a2be nixos/*: normalize link format
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.
2022-08-03 21:57:46 +02:00