{"id":19374964,"url":"https://github.com/mbuesch/feedreaders","last_synced_at":"2025-10-05T00:35:28.069Z","repository":{"id":261304110,"uuid":"883907049","full_name":"mbuesch/feedreaders","owner":"mbuesch","description":"Feed reader with web interface for RSS/atom feeds","archived":false,"fork":false,"pushed_at":"2025-09-19T18:14:37.000Z","size":188,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-09-25T01:50:01.883Z","etag":null,"topics":["atom","feed-reader","rss","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mbuesch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-11-05T19:34:00.000Z","updated_at":"2025-09-19T18:14:40.000Z","dependencies_parsed_at":"2024-12-16T22:34:09.382Z","dependency_job_id":"f40ecf45-0b55-4346-8246-12f7a2db97c2","html_url":"https://github.com/mbuesch/feedreaders","commit_stats":null,"previous_names":["mbuesch/feedreaders"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mbuesch/feedreaders","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbuesch%2Ffeedreaders","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbuesch%2Ffeedreaders/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbuesch%2Ffeedreaders/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbuesch%2Ffeedreaders/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mbuesch","download_url":"https://codeload.github.com/mbuesch/feedreaders/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mbuesch%2Ffeedreaders/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278395885,"owners_count":25979685,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["atom","feed-reader","rss","rust"],"created_at":"2024-11-10T08:36:40.037Z","updated_at":"2025-10-05T00:35:28.053Z","avatar_url":"https://github.com/mbuesch.png","language":"Rust","readme":"# feedreader\n\nFeedreader/rs is a Rust re-implementation of the original [feedreader](https://github.com/mlochen/feedreader) Python implementation.\n\nThe database format is almost fully compatible with the original.\nRe-using an existing database is possible.\nWe don't implement 'enclosures', though.\nExisting enclosures in the database will be deleted.\n\n# Thanks\n\nThanks to [Marco Lochen](https://github.com/mlochen) for the idea and for the original Python implementation.\n\n# Building and installing\n\n## Prerequisites\n\nThe Rust compiler must be installed to build feedreader.\nIt is recommended to use the latest version of the stable Rust compiler.\nBut Rust versions down to and including Rust 1.77 are supported by feedreader.\n\n[Rust installer](https://www.rust-lang.org/tools/install)\n\nThe Rust installer will install the compiler and the build tool `cargo`.\n\nThe build requires the additional `cargo-audit` and `cargo-auditable` tools to be installed.\nRun this command to install both tools:\n\n```sh\ncargo install cargo-audit cargo-auditable\n```\n\nThe SQLite3 database has to be installed in your operating system.\n\nIf you use Debian Linux, you can use the following command to install SQLite3:\n\n```sh\nsudo apt install libsqlite3-dev\n```\n\n## Building feedreader\n\nRun the `build.sh` script to build feedreader.\n\nAfter installing all build prerequisites, run the build script:\n\n```sh\n./build.sh\n```\n\n## Installing feedreader\n\nThen run the `install.sh` to install the feedreader to `/opt/feedreader/`:\n\n```sh\n./install.sh\n```\n\n## -lsqlite3: No such file or directory\n\nIf during build you get the following error:\n\n```\n= note: /usr/bin/ld: cannot find -lsqlite3: No such file or directory\n    collect2: error: ld returned 1 exit status\n```\n\nplease install the SQLite 3 libraries and development files to your system.\n\nOn Debian Linux that is done with:\n\n```sh\nsudo apt install libsqlite3-dev\n```\n\n# Configuring web server CGI\n\nThe web frontend `feeds` needs to be configured in your web browser as CGI application.\n\n## lighttpd web server\n\nAdd the following configuration to `/etc/lighttpd/conf-enabled/feedreader.conf`:\n\n```\nserver.modules += ( \"mod_cgi\" )\n\n$HTTP[\"url\"] =~ \"^/cgi-bin/\" {\n    cgi.assign = ( \"\" =\u003e \"\" )\n    alias.url += ( \"/cgi-bin/\" =\u003e \"/opt/feedreader/lib/cgi-bin/\" )\n}\n```\n\n## Apache web server\n\nAdd the following configuration to `/etc/apache2/conf-enabled/feedreader.conf`:\n\n```\nScriptAlias /cgi-bin/feeds /opt/feedreader/lib/cgi-bin/feeds\n\n\u003cDirectory /opt/feedreader/lib/cgi-bin\u003e\n    AllowOverride None\n    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch -Indexes\n    Require all granted\n\u003c/Directory\u003e\n```\n\n# Security\n\nThis software does not implement any authentication and/or encryption.\n\nIt is expected that all users which have access to the server's cgi interface are trusted.\n\nWARNING:\n\nIf you want to run this cgi on a publicly accessible server, please remember to enable encryption (TLS, https) and access authentication (e.g. http auth) in the server (e.g. lighttpd or apache).\nIf you don't do this, then people will destroy your database or possibly use it to distribute illegal material.\n\nRunning this cgi behind a https+auth barrier is fine and there's no problem with that.\n\nIf you don't know what this means, please ask your favorite search engine before setting up a web server.\n\n# License / Copyright\n\nCopyright (C) 2024-2025 Michael Büsch\n\nCopyright (C) 2020 Marco Lochen\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 2 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbuesch%2Ffeedreaders","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmbuesch%2Ffeedreaders","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmbuesch%2Ffeedreaders/lists"}