Plume se base sur certaines variables d’environnement pour sa configuration. Vous pouvez soit les définir avec de démarrer l'application avec cargo run soit les écrire dans un fichier .env qui sera chargé automatiquement.
Basique
Voici les variables que Plume utilise :
BASE_URL: le nom de domaine, ou l'adresse IP ainsi que le port (si besoin) où Plume est disponible. Elle est utilisée dans tout le code lié à la fédération.DATABASE_URL: l'URL de la base de données utilisée par Plume (postgres://plume:plume@localhost/plumepar défaut avec PostgreSQL,plume.dbavec SQlite).MIGRATION_DIRECTORY: Le dossier qui stocke les fichiers de migration pour la base de données,migrations/postgrespour les bases de données PostgreSQL oumigrations/sqlitepour les bases de données SQlite.ROCKET_ADDRESS: l'adresse sur laquelle le serveur Plume écoute (0.0.0.0par défaut).ROCKET_PORT: le port sur lequel Plume doit écouter (7878par défaut).ROCKET_SECRET_KEY: la clé utilisée pour signer les cookies privés ou pour la protection contre les attaques CSRF. Si elle n'est pas définie, elle sera régénérée à chaque démarrage de Plume, et tous vos utilisateurices seront alors déconnecté⋅es. Vous pouvez en générer une avecopenssl rand -base64 32.FORM_SIZE: La taille maximum du formulaire que Plume acceptera.32768(32MiB) par défaut.ACTIVITY_SIZE: la taille maximum du message ActivityPub que Plume acceptera.SEARCH_INDEX: le dossier où l'index de la recherche sera enregistré (search_indexpar défaut).SEARCH_TAG_TOKENIZER: l'analyseur lexical utilisé pour les tags lors de la recherche.simple,ngram,whitespaceetlinderasont disponibles.simpleanalyse le texte en divisant sur les espaces et la ponctuation.ngramanalyse en divisant les mots en digramme au minimum et 8-gramme au maximum.whitespaceanalyse par fractionnement sur les espaces mais pas sur la ponctuation.linderaanalyse le texte en divisant en morphèmes japonais, il n'est disponible qu'en compilant avec la fonctionnalitésearch-lindera.whitespaceest celui par défaut. Depuis la v0.5.0.SEARCH_CONTENT_TOKENIZER: l'analyseur lexical utilisé lors de la recherche dans les contenus de blog. Les mêmes analyseurs queSEARCH_TAG_TOKENIZERsont disponibles.simpleest celui par défaut. Depuis la v0.5.0.SEARCH_LANG: est un raccourci qui combineSEARCH_TAG_TOKENIZERetSEARCH_CONTENT_TOKENIZER. Actuellement il ne prend en charge que la valeurjaet nécessite la fonctionnalitésearch-linderalors de la compilation. Ceci est expérimental et pourrait changer à l'avenir. Depuis la v0.5.0.MEDIA_UPLOAD_DIRECTORY: le répertoire dans lequel stocker les médias téléversés (./static/mediapar défaut). Plume ne créera pas le répertoire s'il n'existe pas, assurez vous de le créer vous même avant.DEFAULT_THEME: le nom du thème par défaut. Ce doit être le même que le nom du répertoire contenant le thème dansstatic/css.DB_MAX_SIZE: le nombre maximum de connexions à la base de données (10par défaut). Depuis la v0.5.0.DB_MIN_IDLE: le nombre minimum de connexions inactives à la base de données (identique àDB_MAX_SIZEpar défaut). Depuis la v0.5.0.SIGNUP: the sign-up strategy (passwordby default). “password” means anyone can sign up with email address and password without confirmation. “email” means Plume requires email confirmation, which needs the mail server configuration detailed later. Since 0.7.1.RUST_LOG: the log level Plume outputs (infoby default). You can set it for each library such asRUST_LOG=debug,html5ever=warn,hyper=warn,tantivy=warn.
Courriel
Le serveur SMTP pour envoyer des mails peut être configuré avec :
MAIL_SERVER: le serveur SMTP auquel se connecter.MAIL_PORT: the SMTP port number.MAIL_USER: the username for authentication purposes.MAIL_PASSWORD: its password.MAIL_HELO_NAME: the name sent during EHLO/HELO.MAIL_ADDRESS: the address that emails will be sent from.
Actuellement, Plume envoie un message uniquement si vous réinitialisez votre mot de passe ( et uniquement depuis l'interface web, plm users reset-password n'envoie rien).
Si vous ne comptez pas utiliser cette fonctionnalité, vous pouvez simplement supprimer (ou commenter) les lignes de configuration du serveur mail dans votre .env.
Logo
Vous pouvez aussi changer le logo que vous voulez utiliser pour votre instance dans ce fichier. Votre logo devra être dans le dossier static.
Pour que Plume l'affiche, vous pouvez utiliser :
PLUME_LOGO: change le logo dans l'en-tête de la page, l'onglet du navigateur et le manifeste web (utilisé quand un site est ajouté à l'écran d'accueil d'un téléphone portable). Il est recommandé d'utiliser des fichiers SVG si possible.PLUME_LOGO_FAVICON: change l'icône dans l'onglet du navigateur, si vous voulez utiliser une image différente dePLUME_LOGO.PLUME_LOGO_taille: oùtailleest 48, 72, 96, 144, 160, 192, 256 ou 512. Ces variables changent le logo utilisé dans le manifeste web à une taille donnée. Vous pouvez bien sûr spécifier plusieurs de ces variables, avec des tailles différentes.
Tous les chemins spécifiés doivent être relatifs au dossier static.
Voici un exemple pour une instance qui utilise le logo « paragraphes ».
PLUME_LOGO=icons/trwnh/paragraphs/plumeParagraphs.svg
PLUME_LOGO_FAVICON=icons/trwnh/paragraphs/plumeParagraphs32.png
PLUME_LOGO_48=icons/trwnh/paragraphs/plumeParagraphs48.png
PLUME_LOGO_72=icons/trwnh/paragraphs/plumeParagraphs72.png
PLUME_LOGO_96=icons/trwnh/paragraphs/plumeParagraphs96.png
PLUME_LOGO_144=icons/trwnh/paragraphs/plumeParagraphs144.png
PLUME_LOGO_160=icons/trwnh/paragraphs/plumeParagraphs160.png
PLUME_LOGO_192=icons/trwnh/paragraphs/plumeParagraphs192.png
PLUME_LOGO_256=icons/trwnh/paragraphs/plumeParagraphs256.png
PLUME_LOGO_512=icons/trwnh/paragraphs/plumeParagraphs512.png
LADP
Plume supporte l'authentification déléguée à LDAP depuis la v0.6.0.
LDAP_ADDR: adresse du serveur LDAPLDAP_BASE_DN: le nom absolu primaire à utiliser lors de la liaison, voir l'explication ci dessousLDAP_USER_NAME_ATTR: attribut with user name used when binding, see explanation below (default=cn)LDAP_USER_MAIL_ATTR: attribut containing the mail address of the user (default=mail)LDAP_TLS: se connecter au serveur LDAP en utilisant TLS (la valeur par défaut est false)
Plume détermine ce qu'il faut lier en utilisant LDAP_BASE_DN, LDAP_USER_NAME_ATTR et le nom d'utilisateur.
Assuming what you need Plume to bind is username={user name},ou=users,dc=your-org, the configuration would be the following:
LDAP_BASE_DN=ou=users,dc=your-org
LDAP_USER_NAME_ATTR=username