Optionale Weblate-Module#
Für Ihre Einrichtung sind mehrere optionale Module verfügbar.
Git-Exporter#
Ermöglicht Ihnen den Nur-Lese-Zugriff auf das zugrunde liegende Git-Repository über HTTP(S).
Installation#
weblate.gitexport
zu den installierten Anwendungen insettings.py
hinzufügen:
INSTALLED_APPS += ("weblate.gitexport",)
Vorhandene Repositorys exportieren, indem Sie Ihre Datenbank nach der Installation migrieren:
weblate migrate
Anwendung#
Das Modul klinkt sich automatisch in Weblate ein und setzt die exportierte Repository-URL in der Komponentenkonfiguration. Die Repositorys sind unter dem /git/
-Teil der Weblate-URL zugänglich, zum Beispiel https://example.org/git/weblate/main/
.
Repositorys für öffentlich zugängliche Projekte können ohne Authentifizierung geklont werden:
git clone 'https://example.org/git/weblate/main/'
Um die Repositorys mit eingeschränktem Zugriff zu durchsuchen (mit Projekt-Zugriffssteuerung auf Privat oder wenn REQUIRE_LOGIN
aktiviert ist), ist ein API-Token erforderlich, das Sie in Ihrem Benutzerprofil erhalten können:
git clone 'https://user:KEY@example.org/git/weblate/main/'
Hinweis
Standardmäßig haben Mitglieder der Gruppe Benutzer und anonyme Benutzer über die Rollen Auf Repository zugreifen und Hauptbenutzer Zugriff auf die Repositorys für öffentliche Projekte.
Abrechnung#
Dies wird auf Hosted Weblate verwendet, um Abrechnungspläne festzulegen, Rechnungen und Nutzungsgrenzen nachzuverfolgen.
Installation#
1. Add weblate.billing
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.billing",)
Die Datenbankmigration ausführen, um optional zusätzliche Datenbankstrukturen für das Modul zu installieren:
weblate migrate
Anwendung#
Nach der Installation können Sie die Abrechnung in der Adminoberfläche steuern. Benutzer mit aktivierter Abrechnung erhalten einen neuen Reiter Abrechnung in ihrem Benutzerprofil.
Das Abrechnungsmodul erlaubt es Projektadministratoren zusätzlich, neue Projekte und Komponenten zu erstellen, ohne Superuser zu sein (siehe Übersetzungsprojekte und Komponenten hinzufügen). Dies ist möglich, wenn die folgenden Bedingungen erfüllt sind:
Die Abrechnung liegt innerhalb der konfigurierten Grenzen (jede Überschreitung führt zu einer Sperrung der Projekt-/Komponentenerstellung) und ist bezahlt (wenn der Preis nicht Null ist)
Der Benutzer ist Administrator eines bestehenden Projekts mit Abrechnung oder der Benutzer ist Eigentümer der Abrechnung (letzteres ist erforderlich, wenn neue Abrechnungen erstellt werden, damit die Benutzer neue Projekte importieren können).
Bei der Projekterstellung kann der Benutzer auswählen, welche Abrechnung für das Projekt berechnet werden soll, falls er Zugang zu mehreren Abrechnungen hat.
Rechtliche Grundlagen#
Dies wird auf Hosted Weblate verwendet, um die erforderlichen rechtlichen Dokumente bereitzustellen. Es wird mit leeren Dokumenten geliefert, und es wird erwartet, dass Sie die folgenden Vorlagen in den Dokumenten ausfüllen:
legal/documents/tos.html
Dokument zu den Nutzungsbedingungen
legal/documents/privacy.html
Dokument zu den Datenschutzbestimmungen
legal/documents/summary.html
Kurze Übersicht über die Allgemeinen Geschäftsbedingungen und Datenschutzerklärung
Wenn Sie die Nutzungsbedingungen ändern, passen Sie bitte LEGAL_TOS_DATE
so an, dass die Benutzer gezwungen sind, den aktualisierten Dokumenten zuzustimmen.
Bemerkung
Rechtliche Dokumente für den Hosted Weblate-Dienst sind in diesem Git-Repository <https://github.com/WeblateOrg/wllegal/tree/main/wllegal/templates/legal/documents> verfügbar.
Höchstwahrscheinlich sind diese für Sie nicht direkt verwendbar, können aber als Ausgangspunkt nützlich sein, wenn Sie sie an Ihre Bedürfnisse anpassen.
Installation#
1. Add weblate.legal
to installed apps in
settings.py
:
INSTALLED_APPS += ("weblate.legal",)
# Optional:
# Social auth pipeline to confirm TOS upon registration/subsequent sign in
SOCIAL_AUTH_PIPELINE += ("weblate.legal.pipeline.tos_confirm",)
# Middleware to enforce TOS confirmation of signed in users
MIDDLEWARE += [
"weblate.legal.middleware.RequireTOSMiddleware",
]
Die Datenbankmigration ausführen, um optional zusätzliche Datenbankstrukturen für das Modul zu installieren:
weblate migrate
Die Rechtsdokumente im Ordner
weblate/legal/templates/legal/
bearbeiten, um sie an Ihren Dienst anzupassen.
Anwendung#
Nach der Installation und Bearbeitung werden die Rechtsdokumente in der Weblate-Bedienoberfläche angezeigt.
Avatare#
Avatare werden standardmäßig heruntergeladen und serverseitig zwischengespeichert, um Informationslecks zu den Websites, die sie anbieten, zu reduzieren. Die integrierte Unterstützung für das Abrufen von Avataren von E-Mail-Adressen, die dafür konfiguriert sind, kann mit ENABLE_AVATARS
deaktiviert werden.
Weblate unterstützt derzeit:
Siehe auch
Spamschutz#
Sie können sich vor Spamming durch Nutzer schützen, indem Sie den Dienst Akismet nutzen.
Das Python-Modul akismet installieren (dieses ist bereits im offiziellen Docker-Image enthalten).
Den Akismet-API-Schlüssel erhalten.
Als
AKISMET_API_KEY
oderWEBLATE_AKISMET_API_KEY
in Docker speichern.
Der folgende Inhalt wird zur Überprüfung an Akismet gesendet:
Vorschläge von nicht authentifizierten Benutzern
Projekt- und Komponentenbeschreibungen und Links
Bemerkung
Dies hängt (unter anderem) von der IP-Adresse des Clients ab, bitte lesen Sie Hinter einem Reverse-Proxy ausführen für die richtige Konfiguration.
Git-Commits mit GnuPG signieren#
Alle Commits können mit dem GnuPG-Schlüssel der Weblate-Instanz signiert werden.
1. Turn on WEBLATE_GPG_IDENTITY
. (Weblate will generate a GnuPG
key when needed and will use it to sign all translation commits.)
Für diese Funktion muss GnuPG 2.1 oder neuer installiert sein.
Sie finden den Schlüssel in setting:DATA_DIR und der öffentliche Schlüssel wird auf der „Über Weblate“-Seite angezeigt:

2. Alternatively you can also import existing keys into Weblate, just set
HOME=$DATA_DIR/home
when invoking gpg.
Hinweis
Das Schlüsselmaterial wird von Weblate über einen längeren Zeitraum zwischengespeichert. Falls Sie Weblate einen Schlüssel mit WEBLATE_GPG_IDENTITY
generieren lassen und dann einen Schlüssel mit der gleichen Identität importieren, um einen bestehenden Schlüssel zu verwenden, wird empfohlen, den Redis-Cache zu leeren, um die Auswirkungen einer solchen Änderung zu sehen.
Bemerkung
When sharing DATA_DIR
between multiple hosts, please follow instructions
at https://wiki.gnupg.org/NFS to make GnuPG signing work reliably.
Siehe auch
Ratenbegrenzung#
Geändert in Version 4.6: Die Ratenbegrenzung gilt nicht mehr für Superuser.
Mehrere Vorgänge in Weblate sind ratenbegrenzt. Innerhalb von RATELIMIT_WINDOW
Sekunden sind maximal RATELIMIT_ATTEMPTS
Versuche erlaubt. Danach wird der Benutzer für RATELIMIT_LOCKOUT
gesperrt. Es gibt auch bereichsspezifische Einstellungen, zum Beispiel RATELIMIT_CONTACT_ATTEMPTS
oder RATELIMIT_TRANSLATE_ATTEMPTS
. Die nachstehende Tabelle enthält eine vollständige Liste der verfügbaren Bereiche.
Die folgenden Vorgänge unterliegen der Ratenbegrenzung:
Bezeichnung |
Bereich |
Erlaubte Versuche |
Ratenbegrenzungsfenster |
Sperrdauer |
---|---|---|---|---|
Registrierung |
|
5 |
300 |
600 |
Nachricht an Administratoren senden |
|
2 |
300 |
600 |
Passwort-Authentifizierung bei der Anmeldung |
|
5 |
300 |
600 |
Plattformweite Suche |
|
6 |
60 |
60 |
Übersetzen |
|
30 |
60 |
600 |
Zum Glossar hinzufügen |
|
30 |
60 |
600 |
Beginn der Übersetzung in eine neue Sprache |
|
2 |
300 |
600 |
Neues Projekt erstellen |
|
5 |
600 |
600 |
Wenn die Anmeldung eines Benutzers nicht innerhalb von AUTH_LOCK_ATTEMPTS
erfolgt, wird die Passwortauthentifizierung für das Konto deaktiviert, bis das Passwort zurückgesetzt wurde.
Die Einstellungen können auch im Docker-Container angewandt werden, indem der Präfix WEBLATE_
an den Einstellungsnamen angehängt wird, z. B. wird RATELIMIT_ATTEMPTS
zu WEBLATE_RATELIMIT_ATTEMPTS
.
Die API verfügt über separate Einstellungen zur Ratenbegrenzung, siehe API-Ratenbegrenzung.
Fedora Messaging integrieren#
Fedora Messaging ist ein AMQP-basierter Publisher für alle Änderungen, die in Weblate stattfinden. Damit können Sie zusätzliche Dienste mit Weblate-Änderungen verbinden.
Die Integration von Fedora Messaging ist als separates Python-Modul weblate-fedora-messaging
verfügbar. Bitte lesen Sie <https://github.com/WeblateOrg/fedora_messaging/> für Anweisungen zur Einrichtung.