refactor: clean up, docs and Nixos compatibility#742
refactor: clean up, docs and Nixos compatibility#742maikelthedev wants to merge 2 commits intochatmail:mainfrom
Conversation
This commit does multiple things: 1. Puts Makefile on the project folder where it belongs as it can be reused for other stuff too. 2. Changes "make auto" to "make docs" 3. Make Nixos a possible development environment by the use of shell.nix 4. Avoids having to SSH anywhere to create a file in /etc/ to stop registrations, instead uses allow_registrations in chatmail.ini (see amended docs). 5. Updates the docs to work in both a blank Debian 12 server install and with Nixos as client. 6. Gets rid of not being nine.testrun.org being a reason to be declared Dev server.
hpk42
left a comment
There was a problem hiding this comment.
This PR has a number of simultanous changes, and makes discussion unnecessarily hard. I recommend to close this PR and do a targeted one the docs on client-side debian12 and nix setup. The "allow_registrations" ini-variable i'd postpone considering at all, until work on invite links has progressed (see #600 ), and then to see how to drive "onboarding mode" for chatmail relays in the in or from cmdeploy.
| if os.path.exists(NOCREATE_FILE): | ||
| logging.warning(f"blocked account creation because {NOCREATE_FILE!r} exists.") | ||
| if config.allow_registrations != "yes": | ||
| logging.warning(f"blocked account creation because allow_registrations in chatmail.ini is not 'yes'.") |
There was a problem hiding this comment.
this actually changes a run-time switch to a build-time .ini file switch,
and is backward compatible (for two years, /etc/chatmail-nocreate worked, and it might be in use in some closed instances). So i doubt it's worth it.
| Required dependencies for smooth install | ||
| ---------------------------------------- | ||
|
|
||
| On a Debian 12 cloud server | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
There was a problem hiding this comment.
this sounds like being about the target server, but it's really the client side, right?
|
Agreed |
This commit does multiple things: