Installing the new Dendrite Matrix Homeserver on Debian Buster

This post contains my personal notes on how to set up Dendrite,’s second-generation homeserver written in Go. These notes are not yet complete, but do contain the basics to get things going.

Comments on your website: How to setup the Commento commenting platform

Commento is, according to its developer, “A fast, privacy-focused commenting platform”. You can use it to enable visitors to comment on your website. It’s also what is powering the comments on this website.

Bitwarden: How to setup a self-hosted password manager using Vaultwarden

Bitwarden is an open-source password manager. Using Vaultwarden, a Bitwarden compatible server implementation written in Rust formerly known as Bitwarden_RS, it is possible to create a self-hosted server, using little resources, enabling you to use all its features.

Unattended upgrades: Reboot Required E-mail Notification

I like my systems to automatically apply security updates. Sometimes these require a reboot, but I do not want reboots to happen unattended. This script: Checks daily (every day at 8.

Rspamd: Train spamfilter after mailserver migration

Learn spam: find /var/vmail/mailboxes/*/*/mail/Spam/cur -type f -exec /usr/bin/rspamc learn_spam {} \; Learn ham: find /var/vmail/mailboxes/*/*/mail/cur -type f -exec /usr/bin/rspamc learn_ham {} \; find /var/vmail/mailboxes/*/*/mail/Sent/cur -type f -exec /usr/bin/rspamc learn_ham {} \; find /var/vmail/mailboxes/*/*/mail/Trash/cur -type f -exec /usr/bin/rspamc learn_ham {} \; find /var/vmail/mailboxes/*/*/mail/Drafts/cur -type f -exec /usr/bin/rspamc learn_ham {} \; find /var/vmail/mailboxes/*/*/mail/Templates/cur -type f -exec /usr/bin/rspamc learn_ham {} \; find /var/vmail/mailboxes/*/*/mail/Archives/*/cur -type f -exec /usr/bin/rspamc learn_ham {} \;

FFMPEG: Remux MTS files to MP4

I sometimes receive .mts video files made with Sony videocameras. These don’t play well on web video players or iOS devices. This is how, for most models, you can remux them to mp4 without converting and thus without losing quality and waiting a long time for the conversion to complete.

IMAP: How to migrate mailboxes using imapsync

This guide assumes you are using Debian Buster sudo apt install git rcs make makepasswd cpanminus sudo apt install libauthen-ntlm-perl \ libclass-load-perl libcrypt-ssleay-perl liburi-perl \ libdata-uniqid-perl libdigest-hmac-perl libdist-checkconflicts-perl \ libfile-copy-recursive-perl libio-compress-perl libio-socket-inet6-perl \ libio-socket-ssl-perl libio-tee-perl libmail-imapclient-perl \ libmodule-scandeps-perl libnet-ssleay-perl libpar-packer-perl \ libreadonly-perl libsys-meminfo-perl libterm-readkey-perl \ libtest-fatal-perl libtest-mock-guard-perl libtest-pod-perl \ libtest-requires-perl libtest-simple-perl libunicode-string-perl \ libfile-tail-perl libcrypt-openssl-rsa-perl libjson-webtoken-perl \ libregexp-common-perl libtest-mockobject-perl libtest-deep-perl \ libcgi-pm-perl liblwp-useragent-chicaching-perl libencode-imaputf7-perl sudo apt install libssl-dev sudo apt install apt-file git clone https://github.

Debian: How to add an external repository to unattended upgrades

In this post, we’ll be using Rspamd as an example. ls /var/lib/apt/lists/ look for repository ending with _InRelease e.g.: rspamd: cat /var/lib/apt/lists/rspamd.com_apt-stable_dists_stretch_InRelease result: [...] Origin: Rspamd Label: Rspamd Codename: stretch Date: Wed, 13 Dec 2017 21:02:14 UTC Architectures: amd64 i386 Components: main Description: Apt repository for rspamd stable builds [.

Debian: How to build & install a recent OpenSMTPd release on Buster with LibreSSL

Build & Install LibreSSL apt update apt install git nano wget nano /etc/apt/sources.list Make sure deb-src is enabled deb-src buster main apt update apt build-dep openssl git clone https://github.

Git: Save credentials for pushing over https on macOS

Setup existing folder as repo Initialise repository For my personal git server, I like to use HTTPS instead of SSH, because it runs behind a reverse proxy without SSH ports exposed to the internet.