2021-01-29 10:21:25 +01:00
|
|
|
|
Contribute or troubleshoot
|
|
|
|
|
==========================
|
2020-07-02 21:02:47 +02:00
|
|
|
|
|
2021-03-10 18:46:03 +01:00
|
|
|
|
To report an issue, please go to
|
|
|
|
|
`<https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/issues>`_.
|
|
|
|
|
|
2021-05-27 08:59:38 +02:00
|
|
|
|
You can also chat with us on the Libera IRC channel ``#nixos-mailserver``.
|
2021-03-10 18:46:03 +01:00
|
|
|
|
|
2020-07-06 22:23:03 +02:00
|
|
|
|
Run NixOS tests
|
|
|
|
|
---------------
|
2020-07-02 21:02:47 +02:00
|
|
|
|
|
2021-07-10 16:05:25 +02:00
|
|
|
|
To run the test suite, you need to enable `Nix Flakes
|
|
|
|
|
<https://nixos.wiki/wiki/Flakes#Installing_flakes>`.
|
|
|
|
|
|
|
|
|
|
You can then run the testsuite via
|
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
|
|
|
|
$ nix flake check -L
|
|
|
|
|
|
|
|
|
|
Since Nix doesn't garantee your machine have enough resources to run
|
|
|
|
|
all test VMs in parallel, some tests can fail. You would then haev to
|
|
|
|
|
run tests manually. For instance:
|
2020-07-02 21:02:47 +02:00
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
2021-07-10 16:05:25 +02:00
|
|
|
|
$ nix build .#hydraJobs.x86_64-linux.external-unstable -L
|
|
|
|
|
|
2020-07-02 21:02:47 +02:00
|
|
|
|
|
2020-07-06 22:23:03 +02:00
|
|
|
|
Contributing to the documentation
|
|
|
|
|
---------------------------------
|
|
|
|
|
|
2022-11-30 22:30:45 +01:00
|
|
|
|
The documentation is written in RST (except option documentation which is in MarkDown),
|
|
|
|
|
built with Sphinx and published by `Read the Docs <https://readthedocs.org/>`_.
|
2020-07-06 22:23:03 +02:00
|
|
|
|
|
|
|
|
|
For the syntax, see `RST/Sphinx Cheatsheet
|
|
|
|
|
<https://sphinx-tutorial.readthedocs.io/cheatsheet/>`_.
|
|
|
|
|
|
|
|
|
|
The ``shell.nix`` provides all the tooling required to build the
|
|
|
|
|
documentation:
|
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
|
|
|
|
$ nix-shell
|
|
|
|
|
$ cd docs
|
|
|
|
|
$ make html
|
|
|
|
|
$ firefox ./_build/html/index.html
|
|
|
|
|
|
2021-07-14 10:06:58 +02:00
|
|
|
|
Note if you modify some NixOS mailserver options, you would also need
|
2022-11-30 22:30:45 +01:00
|
|
|
|
to regenerate the ``options.md`` file:
|
2021-07-14 10:06:58 +02:00
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
2022-11-30 22:30:45 +01:00
|
|
|
|
$ nix-shell --run generate-options
|
2021-07-14 10:06:58 +02:00
|
|
|
|
|
2020-07-02 21:02:47 +02:00
|
|
|
|
Nixops
|
|
|
|
|
------
|
|
|
|
|
|
|
|
|
|
You can test the setup via ``nixops``. After installation, do
|
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
2020-07-06 22:23:03 +02:00
|
|
|
|
$ nixops create nixops/single-server.nix nixops/vbox.nix -d mail
|
|
|
|
|
$ nixops deploy -d mail
|
|
|
|
|
$ nixops info -d mail
|
2020-07-02 21:02:47 +02:00
|
|
|
|
|
|
|
|
|
You can then test the server via e.g. \ ``telnet``. To log into it, use
|
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
2020-07-06 22:23:03 +02:00
|
|
|
|
$ nixops ssh -d mail mailserver
|
2020-07-02 21:02:47 +02:00
|
|
|
|
|
|
|
|
|
Imap
|
|
|
|
|
----
|
|
|
|
|
|
|
|
|
|
To test imap manually use
|
|
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
2020-07-06 22:23:03 +02:00
|
|
|
|
$ openssl s_client -host mail.example.com -port 143 -starttls imap
|