FreshRSS est un agrégateur de flux RSS à auto-héberger.
Il se veut léger et facile à prendre en main tout en étant un outil puissant et paramétrable.
Il permet de gérer plusieurs utilisateurs, dispose d’un mode de lecture anonyme, et supporte les étiquettes personnalisées. Il y a une API pour les clients (mobiles), ainsi qu’une interface en ligne de commande.
Grâce au standard WebSub, FreshRSS est capable de recevoir des notifications push instantanées depuis les sources compatibles, Friendica, WordPress, Blogger, Medium, etc.
FreshRSS supporte nativement le moissonnage du Web (Web Scraping) basique, basé sur XPath, pour les sites Web sans flux RSS / Atom. Supporte aussi les documents JSON.
FreshRSS permet de repartager des sélections d’articles par HTML, RSS, et OPML.
Plusieurs méthodes de connexion sont supportées : formulaire Web (avec un mode anonyme), Authentification HTTP (compatible avec proxy), OpenID Connect.
Enfin, FreshRSS permet l’ajout d’extensions pour encore plus de personnalisation.
Les demandes de fonctionnalités, rapports de bugs, et autres contributions sont les bienvenues. Privilégiez pour cela des demandes sur GitHub. Nous sommes une communauté amicale.
Pour faciliter les contributions, l’option suivante est disponible :
FreshRSS n’est fourni avec aucune garantie.
Si vous préférez que votre FreshRSS soit stable, vous devriez télécharger la dernière version. De nouvelles versions sont publiées tous les 2 ou 3 mois. Voir la liste des versions.
Si vous voulez une publication continue (rolling release) avec les dernières nouveautés, ou bien aider à tester ou développer la future version stable, vous pouvez utiliser la branche edge.
./p/
)./data/
data/config.php
.AllowEncodedSlashes
pour une meilleure compatibilité avec les clients mobiles.Plus d’informations sur l’installation et la configuration serveur peuvent être trouvées dans notre documentation.
# Si vous utilisez le serveur Web Apache (sinon il faut un autre serveur Web)
sudo apt-get install apache2
sudo a2enmod headers expires rewrite ssl #Modules Apache
# Exemple pour Ubuntu >= 16.04, Debian >= 9 Stretch
sudo apt install php php-curl php-gmp php-intl php-mbstring php-sqlite3 php-xml php-zip
sudo apt install libapache2-mod-php #Pour Apache
sudo apt install mysql-server mysql-client php-mysql #Base de données MySQL optionnelle
sudo apt install postgresql php-pgsql #Base de données PostgreSQL optionnelle
## Redémarrage du serveur Web
sudo service apache2 restart
# Pour FreshRSS lui-même (git est optionnel si vous déployez manuellement les fichiers d’installation)
cd /usr/share/
sudo apt-get install git
sudo git clone https://github.com/FreshRSS/FreshRSS.git
cd FreshRSS
# La branche par défault “edge” est la celle de la publication continue,
# mais vous pouvez changer de branche pour “latest” si vous préférez les versions stables de FreshRSS
sudo git checkout latest
# Mettre les droits d’accès pour le serveur Web
sudo cli/access-permissions.sh
# Si vous souhaitez permettre les mises à jour par l’interface Web (un peu moins sûr)
sudo chown www-data:www-data -R .
# Publier FreshRSS dans votre répertoire HTML public
[ ! -e "/var/www/html/FreshRSS" ] && sudo ln -s /usr/share/FreshRSS/p /var/www/html/FreshRSS || echo "/var/www/html/FreshRSS existe déjà"
# Naviguez vers http://example.net/FreshRSS pour terminer l’installation
# (Si vous le faite depuis localhost, vous pourrez avoir à ajuster le réglage de votre adresse publique)
# ou utilisez l’interface en ligne de commande
# Mettre à jour FreshRSS vers une nouvelle version par git
cd /usr/share/FreshRSS
sudo git pull
sudo cli/access-permissions.sh
Voir la documentation de la ligne de commande pour plus de détails.
Il est requis pour le mode multi-utilisateur, et recommandé dans tous les cas, de limiter l’accès à votre FreshRSS. Au choix :
./p/i/.htaccess
avec un fichier .htpasswd
correspondant.8 * * * * php /usr/share/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1
Créer /etc/cron.d/FreshRSS
avec :
7,37 * * * * www-data php -f /usr/share/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1
./p/
soit accessible depuis le Web, par exemple en faisant pointer un sous-domaine sur le répertoire ./p/
.
./data/
../constants.php
définit les chemins d’accès aux répertoires clés de l’application. Si vous les bougez, tout se passe ici../data/users/*/log*.txt
.
./data/users/_/
contient la partie des logs partagés par tous les utilisateurs../data/config.php
ainsi que ./data/users/*/config.php
Pour sauvegarder les articles eux-mêmes, vous pouvez utiliser la ligne de commande pour exporter votre base de données vers une base de données au format SQLite :
./cli/export-sqlite-for-user.php --user <username> --filename </path/to/db.sqlite>
Il est impératif que le nom du fichier contenant la base de données ait une extension
sqlite
. Si ce n’est pas le cas, la commande ne fonctionnera pas correctement.
Vous pouvez encore utiliser la ligne de commande pour importer la base de données au format SQLite dans votre base de données:
./cli/import-sqlite-for-user.php --user <username> --filename </path/to/db.sqlite>
Encore une fois, il est impératif que le nom du fichier contenant la base de données ait une extension
sqlite
. Si ce n’est pas le cas, la commande ne fonctionnera pas correctement.
Le processus d’import/export à l’aide d’une base de données SQLite est utile quand vous devez :
FreshRSS permet l’ajout d’extensions en plus des fonctionnalités natives. Voir le dépôt dédié à ces extensions.
FreshRSS supporte l’accès depuis des applications natives pour Linux, Android, iOS, Windows et macOS, grâce à deux APIs distinctes : l’API compatible Google Reader (la meilleure), et l’API Fever (moindres fonctionnalités et moins efficace).
App | Plateforme | Logiciel libre | Maintenu & Dévelopé | API | Mode hors-ligne | Sync rapide | Récupère plus d’articles dans les vues individuelles | Récupère les articles lus | Favoris | Étiquettes | Podcasts | Gestion des flux |
---|---|---|---|---|---|---|---|---|---|---|---|---|
News+ with Google Reader extension | Android | Partially | 2015 | GReader | ✔️ | ⭐⭐⭐ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
FeedMe | Android | ➖ | ✔️✔️ | GReader | ✔️ | ⭐⭐ | ➖ | ➖ | ✔️ | ✓ | ✔️ | ✔️ |
EasyRSS | Android | ✔️ | ✔️ | GReader | Bug | ⭐⭐ | ➖ | ➖ | ✔️ | ➖ | ➖ | ➖ |
FocusReader | Android | ➖ | ✔️✔️ | GReader | ✔️ | ⭐⭐⭐ | ➖ | ➖ | ✔️ | ➖ | ✓ | ✔️ |
Readrops | Android | ✔️ | ✔️✔️ | GReader | ✔️ | ⭐⭐⭐ | ➖ | ➖ | ➖ | ➖ | ➖ | ✔️ |
Fluent Reader Lite | Android, iOS | ✔️ | ✔️✔️ | GReader, Fever | ✔️ | ⭐⭐⭐ | ➖ | ➖ | ✓ | ➖ | ➖ | ➖ |
Read You | Android | ✔️ | En développement | GReader, Fever | ➖ | ⭐⭐ | ➖ | ✔️ | ✔️ | ➖ | ➖ | ✔️ |
ChristopheHenry | Android | ✔️ | En développement | GReader | ✔️ | ⭐⭐ | ➖ | ✔️ | ✔️ | ➖ | ➖ | ➖ |
Fluent Reader | Windows, Linux, macOS | ✔️ | ✔️✔️ | Fever | ✔️ | ⭐ | ➖ | ✔️ | ✓ | ➖ | ➖ | ➖ |
RSS Guard | Windows, GNU/Linux, macOS, OS/2 | ✔️ | ✔️✔️ | GReader | ✔️ | ⭐⭐ | ➖ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
NewsFlash | GNU/Linux | ✔️ | ✔️✔️ | GReader, Fever | ➖ | ⭐⭐ | ➖ | ✔️ | ✔️ | ✔️ | ➖ | ➖ |
Newsboat 2.24+ | GNU/Linux, macOS, FreeBSD | ✔️ | ✔️✔️ | GReader | ➖ | ⭐ | ➖ | ✔️ | ✔️ | ➖ | ✔️ | ➖ |
Vienna RSS | macOS | ✔️ | ✔️✔️ | GReader | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ |
Readkit | iOS, macOS | ➖ | ✔️✔️ | GReader | ✔️ | ⭐⭐⭐ | ➖ | ✔️ | ✔️ | ➖ | ✓ | 💲 |
Reeder | iOS, macOS | ➖ | ✔️✔️ | GReader, Fever | ✔️ | ⭐⭐⭐ | ➖ | ✔️ | ✔️ | ➖ | ➖ | ✔️ |
lire | iOS, macOS | ➖ | ✔️✔️ | GReader | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ |
Unread | iOS | ➖ | ✔️✔️ | Fever | ✔️ | ❔ | ❔ | ❔ | ✔️ | ➖ | ➖ | ➖ |
Fiery Feeds | iOS | ➖ | ✔️✔️ | Fever | ❔ | ❔ | ❔ | ❔ | ❔ | ➖ | ➖ | ➖ |
Netnewswire | iOS, macOS | ✔️ | En développement | GReader | ✔️ | ❔ | ❔ | ❔ | ✔️ | ➖ | ❔ | ✔️ |
Si FreshRSS ne vous convient pas pour une raison ou pour une autre, voici d’autres solutions à considérer :