Installation de TinyTinyRSS
TinyTinyRSS (abrégé TTRSS) est un lecteur de flux RSS qui vous permet de suivre l’actualité de vos sites préférés depuis une seule et même page.
Il s’agit du logiciel que nous proposons pour Framanews
1 - Nourrir la terre
Pré-requis
Nous allons partir du principe que vous avez accès à un serveur ayant la configuration suivante ou équivalente :
- un serveur web et une base de données (MySQL ou PostgreSQL),
- les logins/mots de passe nécessaires à la connexion à la base de données. TTRSS peut coexister avec d’autres applications sur une base de données partagée, créer une base de donnée dédiée n’est pas nécessaire,
- votre serveur web devrait utiliser au moins PHP 5.3 ou plus récent.
L’utilisation d’un accélérateur comme
php-apc
est fortement recommandé.
2 - Semer
Installation
Désarchivez le tar.gz dans le répertoire de destination :
tar zxfv Tiny-Tiny-RSS-1.x.x.tar.gz
Il est recommandé de renommer le répertoire en
ttrss
pour plus de commodité :mv Tiny-Tiny-RSS-1.x.x ttrss
Vous pouvez aussi désarchiver le tar.gz sur votre machine locale et envoyer les fichiers sur le serveur en utilisant FTP ou tout autre moyen à votre disposition.
- VĂ©rifiez que vous pouvez accĂ©der Ă
http://example.com/ttrss/install/
. - Procédez à l’installation avec l’assistant.
Celui-ci vous demandera vos identifiants de base de données et
l’URL complète d’accès à votre TTRSS (par exemple
http://example.com/ttrss/
). Cette URL doit si possible être accessible depuis l’extérieur, n’utilisez pas localhost, cela casse le support du PUSH. Si vous déployez TTRSS sur un réseau local, vous pouvez vous en passer. - L’assistant va générer un fichier
config.php
pour vous une fois que vous aurez entré les identifiants de la base de donnée et celle-ci initialisée. Vous devrez copier le texte de l’assistant et le copier dansconfig.php
sur le serveur, dans le répertoire d’installation. Si cela lui est possible, l’assistant le fera pour vous de façon automatique. - Il est conseillé de relire le fichier
config.php
pour voir si vous voulez pas ajouter des fonctionnalités ou changer les valeurs de configuration par défaut. - Après en avoir fini avec l’assistant, ouvrez votre installation de
Tiny Tiny RSS sur
http://example.com/ttrss/
et connectez-vous avec les identifiants par défaut (utilisateur :admin
, mot de passe :password
). - Allez dans les préférences et changer votre mot de passe !
- Vous aurez besoin de choisir la méthode de mise à jour des flux. Voyez plus bas.
- Si tout s’est bien passé, vous pouvez commencer à utiliser TTRSS normalement. Créez un utilisateur non-administrateur, connectez-vous avec celui-ci et commencez à importer vos flux, à vous abonner à d’autres et à configurer TTRSS à votre goût.
Mise Ă jour des flux
Vous avez besoin d’utiliser une des méthodes ci-dessous pour utiliser TTRSS correctement, sinon vos flux ne seront pas mis à jour.
Utilisez le dæmon de mise à jour si vous pouvez faire tourner des
processus en arrière-plan.
Sinon, utilisez une des autres méthodes.
Sur Debian, les paquets officiels ont un système de mise à jour basé sur cron
.
Dæmon de mise à jour (méthode recommandée)
Utilisez cette méthode si vous avez accès à l’interpréteur PHP CLI et
pouvez exécuter des processus en arrière-plan.
Vous pouvez lancer un dæmon uni-processus ou update_daemon2.php
(multi-processus, lance plusieurs tâches de mise à jour en parallèle)
avec l’interpréteur PHP CLI.
S’il-vous-plaît, ne lancez jamais le dæmon ou tout autre processus PHP
en tant qu’utilisateur root
. Il est recommandé mais non obligatoire de
lancer le dæmon en tant que l’utilisateur de votre site web
(normalement www-data
, apache
ou un truc comme ça) pour éviter des
problèmes de propriété de fichier.
Lancez (uni-processus) :
./update.php --daemon
ou bien (multi-processus) :
./update_daemon2.php
Le script ne se dæmonise pas (c.à .d. ne se détache pas du terminal).
Vous pouvez le forcer à tourner en arrière-plan en utilisant un utilitaire
comme start-stop-daemon
dans Debian.
Vous pouvez aussi le lancer dans un screen
ou un tmux
.
Le dæmon multi-processus nécessite obligatoirement que la variable
PHP_EXECUTABLE
soit correctement configuré dans config.php
et pointe
vers l’interpréteur PHP CLI de votre système, sinon il ne
sera pas capable de lancer les tâches de mise à jour.
Mise à jour périodique
Utilisez ceci si vous avez accès à l’interpréteur PHP CLI
mais que vous ne pouvez pas (c.à .d. à cause de votre hébergeur) lancer
de processus d’arrière-plan persistant.
N’essayez pas de lancer des jobs cron
avec un binaire PHP CGI,
ça ne fonctionnera pas. Si vous voyez des en-têtes HTTP quand vous
lancez php ./update.php
, vous utilisez un mauvais binaire.
Exemple complet (lisez man 5 crontab
pour plus d’information sur la syntaxe) :
*/30 * * * * /usr/bin/php /home/user/public_html/ttrss/update.php --feeds --quiet
-
/usr/bin/php
doit être remplacé par le chemin correct du binaire PHP CLI sur votre système. Si vous n’êtes pas sûr du binaire ou du chemin à utiliser, demandez à votre hébergeur. -
/home/user/public_html/ttrss
doit etre remplacé par le répertoire dans lequel vous avez installé TTRSS. - Essayez si possible la commande à partir d’un terminal pour vérifier que ça fonctionne avant de créer le job cron.
Simple mise à jour en arrière-plan (depuis la version 1.7.0)
Si tout le reste a échoué et que vous ne pouvez utiliser une des méthodes ci-dessus, vous pouvez activer le mode de mise à jour simple où TTRSS essayer de mettre à jour périodiquement les flux tant qu’il est ouvert dans votre navigateur. Évidemment, il n’y aura pas de mise à jour quand TTRSS ne sera pas ouvert ou que votre ordinateur ne sera pas allumé.
Pour activer ce mode, passez la constante SIMPLE_UPDATE_MODE
Ă true
dans le fichier config.php
.
Notez bien que seule l’interface principale de TTRSS
supporte ce mode.
Si vous utilise l’interface digest
ou mobile
, ou un client de
l’API (comme une application Android), les flux ne seront
pas mis Ă jour.
Vous devez absolument avoir TTRSS ouvert dans un onglet de
navigateur sur un ordinateur allumé quelque part.
3 - Tailler et désherber
Particularités de Framanews
Fork
Nous avons forké Tiny Tiny RSS pour y apporter quelques modifications nécessaires au bon fonctionnement de Framanews.
- traduction en français de certains messages qui ne passaient pas dans le module de localisation, fuseau horaire Europe/Paris par défaut,
- augmentation de la durée de rétention du cache des flux,
- personnalisation du logo, du titre et de la favicon,
- abonnement automatique au flux du Framablog à l’inscription,
- utilisation de sous-modules git pour automatiser l’installation de plugins que nous voulons proposer,
- intégration d’un système d’invitation / désabonnement à la liste de diffusion des utilisateurs de Framanews lors de l’inscription / la suppression du compte,
- paramétrage de certaines parties du système de mise à jour (plus agressif, mais moins gourmand en ressources),
- création d’une nouvelle méthode (
placesAvailables
) dans l’API pour avoir le nombre de places restantes.
Aucune de ces modifications n’est bloquante : vous pouvez utiliser notre fork pour votre instance TTRSS. Vous pouvez récupérer notre fork sur Framagit (branche "full_french" par défaut).
git clone https://framagit.org/framasoft/framanews_ttrss.git
Plugins
Nous avons aussi développé des plugins TTRSS pour nos besoins :
Quota
Permet de limiter le nombre de flux par utilisateur. Si l’utilisateur dépasse le nombre de flux autorisé, il sera redirigé vers la page de configuration avec un message lui demanant de supprimer les flux surnuméraires. Dépôt git.
git clone https://framagit.org/framasoft/framanews_quota.git
Framarticle Toolbar
Ajoute un certain nombre de boutons d’accès rapide à l’interface principale de TTRSS. Dépôt git.
git clone https://framagit.org/framasoft/framarticle_toolbar.git
Conseils de Framanews pour une installation de TTRSS Ă fort trafic
Nous avons dû faire face à plusieurs problématiques au fur et à mesure de la mise en place de Framanews. Voici les leçons que nous en avons tiré :
- PostgreSQL. Obligatoire. MySQL ne tient absolument pas la charge.
- Le clustering PostgreSQL n’est pas encore suffisamment économe en ressources pour une utilisation massive de TTRSS. Nous proposons donc plusieurs instances de TTRSS avec chacune sa base de données dédiée.
- le disque dur peut vite faire un goulot d’étranglement. Nous avons pris un hébergeur proposant des machines virtuelles avec des disques SSD.
- Ne pas hésiter à demander aux utilisateurs qui sont abonnés à plus de flux RSS qu’il n’est humainement possible de lire en une journée, de se limiter. Les gens comprennent généralement le problème. Le plugin de quota permet d’éviter la création d’une situation où 20% des utilisateurs possèdent 80% des flux.