Нет описания

Artur Weigandt 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад
.github 7c74653cc2 Update markdownlint-cli dev dependency (#4241) 4 лет назад
Docker 4e16dd1ae5 Update Docker readme (#4320) 3 лет назад
app 7f0c378482 Fix favicons update (#4358) 3 лет назад
cli fe880d1a98 i18n fr (#4199) 4 лет назад
data 1fe66ad020 Implement Web scraping "HTML + XPath" (#4220) 4 лет назад
docs da0a333b94 Refactor OPML export categories (#4356) 3 лет назад
extensions cd49e9819b New core-extensions to allow Docker volumes for third-party extensions (#2837) 6 лет назад
lib 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад
p 80a228e9a6 Option icons-as-emojis for performance (#4353) 3 лет назад
tests 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад
.dockerignore 9ca49408e0 GitHub Action automatic tests (#3920) 4 лет назад
.editorconfig acbba9adb2 Improved markdownlint (#3918) 4 лет назад
.eslintignore 9416f45dd9 GitHub Actions CI optimisation (#3929) 4 лет назад
.eslintrc.json a89fce27cb New sharing service: Web sharing API (#4271) 4 лет назад
.gitattributes 3aed0b9553 tell git .png and .waff files are not text (#3211) 5 лет назад
.gitignore 9ca49408e0 GitHub Action automatic tests (#3920) 4 лет назад
.hadolint.yaml 61af33a6f5 Readme 2454-2456 6 лет назад
.jshintignore 9416f45dd9 GitHub Actions CI optimisation (#3929) 4 лет назад
.jshintrc b438d8bb3d ESLint upgrade from JSHint (#3906) 4 лет назад
.markdownlint.json d8ccb5800c Fix Docker button, add PikaPods as automated install option (#4351) 3 лет назад
.markdownlintignore 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад
.stylelintignore 9416f45dd9 GitHub Actions CI optimisation (#3929) 4 лет назад
.stylelintrc.json 4c7d5c440f Align .editorconfig with .stylelintrc for CSS files (#3912) 4 лет назад
.typos.toml 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад
CHANGELOG.md d27cf13248 News+ use GitHub links (#4262) 4 лет назад
CONTRIBUTING.md 1acd3ab09b Use typographic quotes (#4133) 4 лет назад
CREDITS.md 0d29a97ca6 Update CREDITS.md (#4334) 3 лет назад
LICENSE.txt fd3fd3387e Update chmod for LICENSE.txt 7 лет назад
Makefile 5a891dc0e4 Update dev dependencies stylelint SASS (#4173) 4 лет назад
README.fr.md d8ccb5800c Fix Docker button, add PikaPods as automated install option (#4351) 3 лет назад
README.md d8ccb5800c Fix Docker button, add PikaPods as automated install option (#4351) 3 лет назад
SECURITY.md 3d2fea6bbf Create SECURITY.md (#3702) 4 лет назад
composer.json 354f22b4fa PHPStan update to 1.4.6 (#4203) 4 лет назад
composer.lock 354f22b4fa PHPStan update to 1.4.6 (#4203) 4 лет назад
config-user.default.php 80a228e9a6 Option icons-as-emojis for performance (#4353) 3 лет назад
config.default.php 9d1930d9ad Allow many (20k+) feeds (#4347) 3 лет назад
constants.php 60d96652dd Start 1.20.0-dev 4 лет назад
force-https.default.txt e9fd37e5ca Always rewrite blogger.com to https (#3088) 5 лет назад
index.html 02a3cb4652 Config allow robots 10 лет назад
index.php 67531f796f HTTP Auth : améliorations + changelog 12 лет назад
opml.default.xml 7819a43197 Default or custom OPML (#2627) 6 лет назад
package-lock.json e79dab6e01 Bump minimist from 1.2.5 to 1.2.6 (#4300) 4 лет назад
package.json 7c74653cc2 Update markdownlint-cli dev dependency (#4241) 4 лет назад
phpcs.xml 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад
phpstan.neon 5110d1db3e Update to PHPMailer 6.6.0 with composer (#4329) 3 лет назад

README.fr.md

Dons Liberapay

FreshRSS

FreshRSS est un agrégateur de flux RSS à auto-héberger à l’image de Leed ou de Kriss Feed.

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 (anciennement PubSubHubbub), FreshRSS est capable de recevoir des notifications push instantanées depuis les sources compatibles, telles Mastodon, Friendica, WordPress, Blogger, FeedBurner, etc.

FreshRSS supporte nativement le moissonnage du Web (Web Scraping) basique, basé sur XPath, pour les sites Web sans flux RSS / Atom.

Enfin, il 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.

Logo de FreshRSS

Avertissements

FreshRSS n’est fourni avec aucune garantie.

Documentation

Prérequis

  • Un navigateur Web récent tel que Firefox / IceCat, Edge, Chromium / Chrome, Opera, Safari.
    • Fonctionne aussi sur mobile (sauf certaines fonctionnalités)
  • Serveur modeste, par exemple sous Linux ou Windows
    • Fonctionne même sur un Raspberry Pi 1 avec des temps de réponse < 1s (testé sur 150 flux, 22k articles)
  • Serveur Web Apache2 (recommandé), ou nginx, lighttpd (non testé sur les autres)
  • PHP 7.0+
  • MySQL 5.5.3+ ou équivalent MariaDB, ou SQLite 3.7.4+, ou PostgreSQL 9.5+

Téléchargement

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.

Installation

Installation automatisée

  • Docker
  • YunoHost
  • Cloudron
  • PikaPods

Installation manuelle

  1. Récupérez l’application FreshRSS via la commande git ou en téléchargeant l’archive
  2. Placez l’application sur votre serveur (la partie à exposer au Web est le répertoire ./p/)
  3. Le serveur Web doit avoir les droits d’écriture dans le répertoire ./data/
  4. Accédez à FreshRSS à travers votre navigateur Web et suivez les instructions d’installation
  5. Tout devrait fonctionner :) En cas de problème, n’hésitez pas à nous contacter.
  6. Des paramètres de configuration avancés peuvent être vus dans config.default.php et modifiés dans data/config.php.
  7. Avec Apache, activer 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.

Exemple d’installation complète sur Linux Debian/Ubuntu

# 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

# Si vous souhaitez utiliser la dernière version stable de FreshRSS
sudo git checkout $(git describe --tags --abbrev=0)

# Mettre les droits d’accès pour le serveur Web
sudo chown -R :www-data . && sudo chmod -R g+r . && sudo chmod -R g+w ./data/
# Si vous souhaitez permettre les mises à jour par l’interface Web
sudo chmod -R g+w .

# Publier FreshRSS dans votre répertoire HTML public
sudo ln -s /usr/share/FreshRSS/p /var/www/html/FreshRSS
# 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 chown -R :www-data . && sudo chmod -R g+r . && sudo chmod -R g+w ./data/

Voir la documentation de la ligne de commande pour plus de détails.

Contrôle d’accès

Il est requis pour le mode multi-utilisateur, et recommandé dans tous les cas, de limiter l’accès à votre FreshRSS. Au choix :

  • En utilisant l’identification par formulaire (requiert JavaScript)
  • En utilisant un contrôle d’accès HTTP défini par votre serveur Web

Rafraîchissement automatique des flux

  • Vous pouvez ajouter une tâche Cron lançant régulièrement le script d’actualisation automatique des flux. Consultez la documentation de Cron de votre système d’exploitation (Debian/Ubuntu, Red Hat/Fedora, Slackware, Gentoo, Arch Linux…). C’est une bonne idée d’utiliser le même utilisateur que votre serveur Web (souvent “www-data”). Par exemple, pour exécuter le script toutes les heures :

    8 * * * * php /usr/share/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1
    

Exemple pour Debian / Ubuntu

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

Conseils

  • Pour une meilleure sécurité, faites en sorte que seul le répertoire ./p/ soit accessible depuis le Web, par exemple en faisant pointer un sous-domaine sur le répertoire ./p/.
    • En particulier, les données personnelles se trouvent dans le répertoire ./data/.
  • Le fichier ./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.
  • En cas de problème, les logs peuvent être utile à lire, soit depuis l’interface de FreshRSS, soit manuellement depuis ./data/users/*/log*.txt.
    • Le répertoire spécial ./data/users/_/ contient la partie des logs partagés par tous les utilisateurs.

FAQ

  • La date et l’heure dans la colonne de droite sont celles déclarées par le flux, pas l’heure à laquelle les articles ont été reçus par FreshRSS, et cette colonne n’est pas utilisée pour le tri.
    • En particulier, lors de l’import d’un nouveau flux, ses articles sont importés en tête de liste.

Sauvegarde

  • Il faut conserver vos fichiers ./data/config.php ainsi que ./data/users/*/config.php
  • Vous pouvez exporter votre liste de flux au format OPML soit depuis l’interface Web, soit en ligne de commande

Pour sauvegarder les articles eux-mêmes :

Dans le cas où vous utilisez MySQL

Vous pouvez utiliser phpMyAdmin ou les outils de MySQL :

mysqldump --skip-comments --disable-keys --user=<db_user> --password --host <db_host> --result-file=freshrss.dump.sql --databases <freshrss_db>

Pour toutes les bases supportées

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 :

  • exporter complètement les données d’un utilisateur,
  • sauvegarder votre service,
  • migrer votre service sur un autre serveur,
  • changer de type de base de données,
  • corriger des erreurs de base de données.

Extensions

FreshRSS permet l’ajout d’extensions en plus des fonctionnalités natives. Voir le dépôt dédié à ces extensions.

APIs et applications natives

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 ✔️ ⭐⭐ ✔️ ✔️ ✔️
RSS Guard Windows, GNU/Linux, macOS, OS/2 ✔️ ✔️✔️ GReader ✔️ ✔️ ✔️ ✔️ ✔️
EasyRSS Android ✔️ ✔️ GReader Bug ⭐⭐ ✔️
FocusReader Android ✔️✔️ GReader ✔️ ⭐⭐⭐ ✔️ ✔️
Readrops Android ✔️ ✔️✔️ GReader ✔️ ⭐⭐⭐ ✔️
ChristopheHenry Android ✔️ En développement GReader ✔️ ⭐⭐ ✔️ ✔️
Fluent Reader Windows, Linux, macOS ✔️ ✔️✔️ Fever ✔️ ✔️ ✔️
FeedReader GNU/Linux ✔️ ✔️ GReader ✔️ ⭐⭐ ✔️ ✔️ ✔️ ✔️
NewsFlash GNU/Linux ✔️ ✔️✔️ Fever ⭐⭐ ✔️ ✔️ ✔️
NewsFlash GNU/Linux ✔️ En développement GReader
Vienna RSS macOS ✔️ ✔️✔️ GReader
Reeder iOS, macOS ✔️✔️ GReader, Fever ✔️ ⭐⭐⭐ ✔️ ✔️ ✔️
Unread iOS ✔️✔️ Fever ✔️ ✔️
Fiery Feeds iOS ✔️✔️ Fever
Readkit macOS ✔️✔️ Fever ✔️
Netnewswire iOS, macOS ✔️ En développement GReader ✔️ ✔️ ✔️

Bibliothèques incluses

Uniquement pour certaines options ou configurations