Installation
Prérequis
| Élément | Version |
|---|---|
| Redmine | 5.1.x à 7.0 (référence : 6.1). Le plugin refuse de démarrer sous 5.1.0 ; au-delà de la dernière branche vérifiée (7.0), il reste actif et l’administration le signale. |
| Ruby | Celui de votre version de Redmine. La licence est un jeton signé Ed25519 : avec Ruby 3.1 ou plus, rien à installer ; avec Ruby 2.7 à 3.0, la gemme ed25519 est requise, compilée par bundle install à la racine de Redmine (outils de compilation C nécessaires : build-essential ou équivalent). |
| Navigateurs | Chrome et Edge 120 ou plus, Firefox 121 ou plus, Safari 17 ou plus (sélecteur :has(), color-mix(), @media (scripting)). Un navigateur plus ancien affiche Redmine, avec des écarts de mise en forme. |
| Accès serveur | Droits d’écriture sur les dossiers de Redmine, possibilité de lancer bundle exec rake et de redémarrer le serveur d’application. |
| Réseau | Aucun pour l’interface : polices et images sont locales. Le plugin contacte le serveur de licences en HTTPS (voir Licence). |
Faites une sauvegarde de la base et du dossier de Redmine avant toute installation ou mise à jour.
1. Thème
Le dossier des thèmes dépend de la version de Redmine :
| Redmine | Dossier des thèmes |
|---|---|
| 6.0, 6.1, 7.0 | themes/ (à la racine de Redmine) |
| 5.1.x | public/themes/ |
Décompressez l’archive dans ce dossier ; elle contient un seul dossier filonio/ :
cd /chemin/vers/redmine
unzip filonio-theme-0.1.0.zip -d themes/ # Redmine 6.x et 7.0
unzip filonio-theme-0.1.0.zip -d public/themes/ # Redmine 5.1.x
Sans unzip sur le serveur, Python suffit : python3 -m zipfile -e filonio-theme-0.1.0.zip themes/.
Résultat attendu : themes/filonio/stylesheets/application.css, themes/filonio/javascripts/theme.js,
themes/filonio/javascripts/theme-issue.js (modules de la fiche de demande, chargés seulement sur la fiche et le
formulaire de demande), themes/filonio/images/, themes/filonio/fonts/, themes/filonio/favicon/ et themes/filonio/VERSION.
2. Plugin compagnon
cd /chemin/vers/redmine
unzip filonio-plugin-0.1.0.zip -d plugins/
bundle install # dépendances du plugin (gemme ed25519 sous Ruby 2.7 à 3.0)
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
Le dossier doit s’appeler exactement plugins/filonio. La commande de migration crée ou met à jour les tables du
plugin (état de la licence et journal de ses événements, dans les versions qui incluent la licence) ; relancée, elle
est sans effet.
3. Redémarrage
Redémarrez le serveur d’application de Redmine pour charger le plugin et le nouveau thème :
| Installation | Commande |
|---|---|
| Docker Compose | docker compose restart redmine |
| Passenger | touch tmp/restart.txt |
| Puma ou Unicorn sous systemd | sudo systemctl restart redmine (nom du service selon votre installation) |
Sur Redmine 6.x et 7.0, les feuilles et scripts des thèmes passent par Propshaft : ils sont recompilés au démarrage
quand un changement est détecté (config.assets.redmine_detect_update, actif par défaut en production). Si vous
avez désactivé ce réglage, compilez-les avant le redémarrage :
bundle exec rake assets:precompile RAILS_ENV=production
4. Activation du thème
Dans Administration › Paramètres › Affichage, choisissez le thème Filonio, puis enregistrez.
En ligne de commande :
bundle exec rails runner -e production 'Setting.ui_theme = "filonio"'
Dans l’image Docker officielle de Redmine, rails runner et les tâches rake lancés par docker compose exec ont
besoin de la variable SECRET_KEY_BASE (ou REDMINE_SECRET_KEY_BASE) dans l’environnement du conteneur, comme le
serveur lui-même.
5. Premier affichage : démarrage de l’essai
À la première page affichée après l’activation du thème, le plugin contacte le serveur de licences (2 secondes au
plus) : l’instance reçoit un essai de 14 jours et la page s’affiche déjà avec Filonio. Si le serveur n’est pas
joint, Redmine garde son interface d’origine et les administrateurs voient la boîte « Filonio n’est pas encore
activé » ; le plugin retente une heure plus tard, à l’affichage d’une page ou par la tâche
filonio:license:heartbeat. Voir Licence et essai.
6. Vérification
bundle exec rails runner -e production 'p Redmine::Plugin.find(:filonio).version; p Redmine::Themes.theme("filonio")&.name'
# "0.1.0"
# "Filonio"
bundle exec rake filonio:license:status RAILS_ENV=production
# mode=live état=trial …
- Administration › Plugins liste « Filonio » dans la version installée.
- Le code source d’une page commence par
<html data-filonio="on" data-filonio-plugin="0.1.0" …>quand Filonio est actif.data-filonio="off"signifie : thème choisi, mais licence non valide ou versions incompatibles (voir Dépannage). Sans le plugin, l’attribut est absent et Redmine garde son interface d’origine. - Administration › Licence Filonio affiche l’état de la licence et la ligne « Compatibilité » (versions du thème, du plugin et de Redmine).
Le thème et le plugin doivent avoir la même version :
| Écart | Effet |
|---|---|
| Version majeure différente | Filonio désactivé (interface d’origine) ; avertissement aux administrateurs sur toutes les pages. |
Version mineure ou correctif différents, ou fichier VERSION du thème absent | Filonio actif ; avertissement aux administrateurs sur les pages Administration, Paramètres (configuration des plugins comprise) et Licence Filonio seulement (pas sur Utilisateurs, Rôles…). |
| Redmine plus récent que la dernière branche vérifiée (7.0) | Filonio actif ; avertissement sur les mêmes pages. |
Mise à jour
Sauvegardez la base et le dossier de Redmine.
Remplacez les deux dossiers par ceux des nouvelles archives (supprimez l’ancien dossier avant de décompresser pour ne pas garder de fichiers retirés) :
rm -rf themes/filonio plugins/filonio # public/themes/filonio sur Redmine 5.1.x unzip filonio-theme-<version>.zip -d themes/ unzip filonio-plugin-<version>.zip -d plugins/ bundle install bundle exec rake redmine:plugins:migrate RAILS_ENV=productionRedémarrez Redmine. Les empreintes des fichiers servis changent (
application-<empreinte>.css) : les navigateurs reprennent la nouvelle version sans vider leur cache.
Densité compacte par défaut (versions publiées après 0.1.0). Les utilisateurs qui n’ont pas choisi leur densité passent en Compacte (lignes de 40 px, contrôles de 28 px, texte de 13 px). Aucune migration : les choix enregistrés dans Mon compte sont conservés. Si la page Administration › Plugins › Filonio › Configurer a déjà été enregistrée, elle a mémorisé Confortable, qui reste la valeur de l’instance : choisissez Compacte et enregistrez pour l’adopter, ou gardez Confortable (voir Réglages d’administration).
Copie de la documentation livrée avec Filonio (dossier docs/ des archives).