Pleroma Microblog

XMPP Snikket
Ich weiß jetzt nicht mehr, wer mich auf #Snikket hingewiesen hat....

Jedenfalls Danke dafür. Das Ding ist ja echt genial!

Basierend auf #prosody und #conversation hat man so in wenigen Minuten eine super konfigurierten XMPP-Server incl. App am Android und kann in der Welt von #XMPP inclusive Telefonie und Videotelefonie teilnehmen.

https://snikket.org
replies
1
announces
5
likes
8

XMPP Snikket

Übrigens…

Wenn man snikket auf seiner Hauptdomain betreibt, damit die Domain eben in der User-ID vorkommt, und nicht die subdomain des snikket-servers (So wie bei Email ja auch die Domain und nicht mail.domain.tld vorkommt) dann kann man das schon machen.

Benötigt man aber .well-known einträge für Pleroma/Mastodon so muss man an den Docker-Containern hantieren.

Geht relativ einfach.

Man legt in /etc/snikket ein unterverzeichnis /etc/snikket/snikket-proxy an. Dort kommt ein Dockerfile rein welches folgenden inhalt hat:

FROM snikket/snikket-web-proxy:beta

COPY well-known.conf /etc/nginx/snippets/well-known.conf
COPY https.template /etc/nginx/templates/https

weiters kommt in dieses Unterverzeichnis ein File mit namen “well-known.conf” mit diesem Inhalt:

location ^~ /.well-known/host-meta {
        return 301 $scheme://pleroma.$host:$server_port$request_uri;
        add_header "Access-Control-Allow-Origin" *;
}

location ^~ /.well-known/webfinger {
        return 301 $scheme://pleroma.$host:$server_port$request_uri;
        add_header "Access-Control-Allow-Origin" *;
}

und ein File mit dem namen “https.template”. dieses habe ich mir direkt von github geholt

curl -O https://raw.githubusercontent.com/snikket-im/snikket-web-proxy/main/nginx/https.template

und um folgende Zeile ergänzt

include "/etc/nginx/snippets/well-known.conf";

und zwar direkt vor oder nach der Zeile die sniekket-common.conf inkludiert. So in der Art

    include "/etc/nginx/snippets/well-known.conf";
    include "/etc/nginx/snippets/snikket-common.conf";

und dann muss noch docker-compose.yml angepasst werden:

für den service “snikket-proxy” muss die Zeite “image …” auskommentiert und durch “build:…” ergänzt werden. So in etwa:

    build: snikket-proxy
#    image: snikket/snikket-web-proxy:beta

das “build” gibt das unterverzeichnis mit dem Dockerfile, well-known.conf und https.template als Inhalt an.

Es wird dann der Container geholt und mit dem Dockerfile eine neue “Zwiebelschale” darüber gelegt, welche dann die geänderte nginx config beinhaltet.

Support gibts dann halt nicht mehr von den snikket-Leuten, aber es wirkt.

XMPP Snikket
genauso kann man übrigens auch die prosody-config anpassen, wenn man z.B. die "contact_info" doch eingetragen haben möchte, was von den Machern von Snikket nicht vorgesehen ist und auch unkonfigurierbar bleiben soll.