mirror of
https://github.com/chatmail/relay.git
synced 2026-05-15 19:14:44 +00:00
Compare commits
2 Commits
custom-ngi
...
test-witho
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a0d5f5dc8d | ||
|
|
72689563f9 |
@@ -2,12 +2,6 @@
|
|||||||
|
|
||||||
## untagged
|
## untagged
|
||||||
|
|
||||||
- Allow custom nginx config files
|
|
||||||
([#617](https://github.com/chatmail/relay/pull/617))
|
|
||||||
|
|
||||||
- Check whether GCC is installed in initenv.sh
|
|
||||||
([#608](https://github.com/chatmail/relay/pull/608))
|
|
||||||
|
|
||||||
- Expire push notification tokens after 90 days
|
- Expire push notification tokens after 90 days
|
||||||
([#583](https://github.com/chatmail/relay/pull/583))
|
([#583](https://github.com/chatmail/relay/pull/583))
|
||||||
|
|
||||||
|
|||||||
13
README.md
13
README.md
@@ -255,19 +255,6 @@ This starts a local live development cycle for chatmail web pages:
|
|||||||
|
|
||||||
- Starts a browser window automatically where you can "refresh" as needed.
|
- Starts a browser window automatically where you can "refresh" as needed.
|
||||||
|
|
||||||
#### Custom web pages
|
|
||||||
|
|
||||||
If you want to include other pages,
|
|
||||||
they need their separate nginx config
|
|
||||||
under `/etc/nginx/sites-enabled/`.
|
|
||||||
Note that they need to listen on port 8443 instead of 443.
|
|
||||||
|
|
||||||
To request TLS certificates for the corresponding domains,
|
|
||||||
point the DNS records to your Server and run `acmetool want <domain>`.
|
|
||||||
You can find the TLS certificates under `/var/lib/acme/live`.
|
|
||||||
They will be automatically renewed.
|
|
||||||
|
|
||||||
|
|
||||||
## Mailbox directory layout
|
## Mailbox directory layout
|
||||||
|
|
||||||
Fresh chatmail addresses have a mailbox directory that contains:
|
Fresh chatmail addresses have a mailbox directory that contains:
|
||||||
|
|||||||
@@ -321,14 +321,14 @@ def _configure_postfix(config: Config, debug: bool = False) -> bool:
|
|||||||
def _install_dovecot_package(package: str, arch: str):
|
def _install_dovecot_package(package: str, arch: str):
|
||||||
arch = "amd64" if arch == "x86_64" else arch
|
arch = "amd64" if arch == "x86_64" else arch
|
||||||
arch = "arm64" if arch == "aarch64" else arch
|
arch = "arm64" if arch == "aarch64" else arch
|
||||||
url = f"https://download.delta.chat/dovecot/dovecot-{package}_2.3.21%2Bdfsg1-3_{arch}.deb"
|
url = f"https://download.delta.chat/dovecot/staging-drop-libicu/dovecot-{package}_2.3.21%2Bdfsg1-3_{arch}.deb"
|
||||||
deb_filename = "/root/" + url.split("/")[-1]
|
deb_filename = "/root/" + url.split("/")[-1]
|
||||||
|
|
||||||
match (package, arch):
|
match (package, arch):
|
||||||
case ("core", "amd64"):
|
case ("core", "amd64"):
|
||||||
sha256 = "43f593332e22ac7701c62d58b575d2ca409e0f64857a2803be886c22860f5587"
|
sha256 = "dd060706f52a306fa863d874717210b9fe10536c824afe1790eec247ded5b27d"
|
||||||
case ("core", "arm64"):
|
case ("core", "arm64"):
|
||||||
sha256 = "4d21eba1a83f51c100f08f2e49f0c9f8f52f721ebc34f75018e043306da993a7"
|
sha256 = "e7548e8a82929722e973629ecc40fcfa886894cef3db88f23535149e7f730dc9"
|
||||||
case ("imapd", "amd64"):
|
case ("imapd", "amd64"):
|
||||||
sha256 = "8d8dc6fc00bbb6cdb25d345844f41ce2f1c53f764b79a838eb2a03103eebfa86"
|
sha256 = "8d8dc6fc00bbb6cdb25d345844f41ce2f1c53f764b79a838eb2a03103eebfa86"
|
||||||
case ("imapd", "arm64"):
|
case ("imapd", "arm64"):
|
||||||
@@ -424,12 +424,6 @@ def _configure_nginx(config: Config, debug: bool = False) -> bool:
|
|||||||
"""Configures nginx HTTP server."""
|
"""Configures nginx HTTP server."""
|
||||||
need_restart = False
|
need_restart = False
|
||||||
|
|
||||||
files.link(
|
|
||||||
name="disable nginx default site",
|
|
||||||
path="/etc/nginx/sites-enabled/default",
|
|
||||||
present=False,
|
|
||||||
)
|
|
||||||
|
|
||||||
main_config = files.template(
|
main_config = files.template(
|
||||||
src=importlib.resources.files(__package__).joinpath("nginx/nginx.conf.j2"),
|
src=importlib.resources.files(__package__).joinpath("nginx/nginx.conf.j2"),
|
||||||
dest="/etc/nginx/nginx.conf",
|
dest="/etc/nginx/nginx.conf",
|
||||||
@@ -822,14 +816,8 @@ def deploy_chatmail(config_path: Path, disable_mail: bool) -> None:
|
|||||||
name="Ensure cron is installed",
|
name="Ensure cron is installed",
|
||||||
packages=["cron"],
|
packages=["cron"],
|
||||||
)
|
)
|
||||||
try:
|
git_hash = subprocess.check_output(["git", "rev-parse", "HEAD"]).decode()
|
||||||
git_hash = subprocess.check_output(["git", "rev-parse", "HEAD"]).decode()
|
git_diff = subprocess.check_output(["git", "diff"]).decode()
|
||||||
except Exception:
|
|
||||||
git_hash = "unknown\n"
|
|
||||||
try:
|
|
||||||
git_diff = subprocess.check_output(["git", "diff"]).decode()
|
|
||||||
except Exception:
|
|
||||||
git_diff = ""
|
|
||||||
files.put(
|
files.put(
|
||||||
name="Upload chatmail relay git commiit hash",
|
name="Upload chatmail relay git commiit hash",
|
||||||
src=StringIO(git_hash + git_diff),
|
src=StringIO(git_hash + git_diff),
|
||||||
|
|||||||
@@ -136,7 +136,4 @@ http {
|
|||||||
return 301 $scheme://{{ config.domain_name }}$request_uri;
|
return 301 $scheme://{{ config.domain_name }}$request_uri;
|
||||||
access_log syslog:server=unix:/dev/log,facility=local7;
|
access_log syslog:server=unix:/dev/log,facility=local7;
|
||||||
}
|
}
|
||||||
|
|
||||||
# Include custom pages; they need to listen on port 8443 instead of port 443
|
|
||||||
include /etc/nginx/sites-enabled/*;
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,11 +9,6 @@ if command -v lsb_release 2>&1 >/dev/null; then
|
|||||||
echo "You need to install python3-dev for installing the other dependencies."
|
echo "You need to install python3-dev for installing the other dependencies."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
if ! gcc --version 2>&1 >/dev/null
|
|
||||||
then
|
|
||||||
echo "You need to install gcc for building Python dependencies."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user