summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-r2k.spec451
-rw-r--r--sources1
3 files changed, 453 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..46c4163 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/r2k-0.7.4.tar.gz
diff --git a/python-r2k.spec b/python-r2k.spec
new file mode 100644
index 0000000..9c680ec
--- /dev/null
+++ b/python-r2k.spec
@@ -0,0 +1,451 @@
+%global _empty_manifest_terminate_build 0
+Name: python-r2k
+Version: 0.7.4
+Release: 1
+Summary: A tool that lets you periodically send articles received from an RSS feed to your Kindle
+License: MIT
+URL: https://github.com/mcouthon/r2k
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d7/4d/7893785f01ea662a4d132ce903fcfa55e19382af29e9d83fa01cd26f1e87/r2k-0.7.4.tar.gz
+BuildArch: noarch
+
+Requires: python3-docker
+Requires: python3-feedparser
+Requires: python3-click
+Requires: python3-pyyaml
+Requires: python3-beautifulsoup4
+Requires: python3-pick
+Requires: python3-dateutil
+Requires: python3-orjson
+Requires: python3-requests
+Requires: python3-chardet
+Requires: python3-lxml
+Requires: python3-cssselect
+Requires: python3-arrow
+
+%description
+# R2K (RSS to Kindle)
+
+`r2k` is a tool that lets you to track your favorite RSS/Atom feeds, and send cleaned-up (i.e. only text
+and images) articles received from them directly to your Kindle.
+
+[Installation](#installation)
+
+[Cleaning up the articles](#cleaning-up-the-articles)
+
+[Usage](#usage)
+
+
+## Installation
+The best way to get up and running with `r2k` us to use pipx. Simply run:
+```bash
+pipx install r2k
+```
+
+If you're not using `pipx` (you should!), `pip install r2k` will also do.
+
+If you want to add `r2k` to your Poetry project, run `poetry add r2k`.
+
+## Cleaning up the articles
+
+There are currently 3 ways to clean up articles:
+1. The default is using the `readability` Python implementation. It doesn't require any extra steps or
+installations, and thus is the easiest to use. It is, however, a bit less precise than the other 2 methods.
+1. Using the [PushToKindle](http://pushtokindle.com/) service. The service works by attaching an email
+address that forwards cleaned up versions of URLs to your Kindle. It's free for a certain amount of articles,
+but you need to become their supporter afterward.
+1. Using a dockerized version of the [Mercury-Parser](https://github.com/postlight/mercury-parser).
+This method requires Docker, but is marginally better than the `readability` approach.
+
+## Usage
+
+### Preparations
+
+#### If you're using PushToKindle (PTK)
+
+The free version of PTK only allows for 25 articles to be sent using their service. After this,
+you'll have to become their "sustainer" (for as low as 1$/month) on Patreon
+[here](https://www.patreon.com/bePatron?c=1946606).
+
+Before using `r2k` with PTK you need to:
+
+1. Know your kindle email address (find it [here](https://www.amazon.com/mycd), under
+"Preferences" -> "Personal Document Settings").
+
+2. Add `kindle@fivefilters.org` to the list of approved email senders (in the same place in
+Amazon's settings).
+
+### Set up your configuration file
+
+Most of what `r2k` does involves the configuration file, in which the feeds you're subscribed to
+are kept, as well as some other data.
+
+After installation, run:
+
+```bash
+r2k config init [-p CONFIG_PATH]
+```
+
+The default location for the config YAML file is in `~/.r2k/config.yml`.
+
+During the init you'll be asked several questions (like your kindle email address).
+
+To see your configuration run:
+
+```bash
+r2k config show [-p CONFIG_PATH]
+```
+
+#### Adding your GMail credentials
+
+Currently `r2k` relies on the fact that you have a GMail address, and it requires a
+[Google App Password](https://support.google.com/accounts/answer/185833?hl=en&authuser=1).
+These are useful in cases where you don't want to go through 2FA authentication. Go
+[here](https://myaccount.google.com/u/1/apppasswords) to generate an `r2k` App Password, and
+add it to the configuration.
+
+### Add some RSS subscriptions
+
+#### Using an OPML file
+
+The [OPML](https://en.wikipedia.org/wiki/OPML) format is widely used in the RSS/Atom world
+(as well as in podcasting and other areas) to represent a collection of feeds. You can export your
+existing subscriptions from most feed readers into an OPML file.
+
+To load all of your subscriptions in one move run:
+
+```bash
+r2k feed import PATH_TO_OPML_FILE
+```
+
+#### Manually adding feeds
+
+If you don't have an OPML export, or just want to add a single feed you can run:
+
+```bash
+r2k feed add -t FEED_TITLE -u FEED_URL
+```
+
+If the `FEED_URL` is a proper RSS feed (i.e. an actual XML feed URL), it will be added as is.
+If the `FEED_URL` is a regular URL, `r2k` will attempt to find the RSS feed by analyzing the page
+source. In the case of multiple candidates (e.g. WordPress content feed and comment feed), you will
+be presented with a list of choices.
+
+### Send updates to your Kindle
+
+Right now the "periodical" part of `r2k` is not yet operational. In order to send updates to your
+Kindle you'll have to run:
+
+```bash
+r2k kindle send [-f FEED_TITLE]
+```
+
+If you don't pass the `-f/--feed-title` option, updates will be sent for all of your subscriptions.
+
+The first time that `kindle send` is run for any feed, you will be presented with a list of all the
+available articles in the feed (note that RSS feeds usually only keep a subset of the most recent
+entries), and will be asked to choose the last one you've already read. This is to avoiding sending
+you any article you've already consumed.
+
+
+%package -n python3-r2k
+Summary: A tool that lets you periodically send articles received from an RSS feed to your Kindle
+Provides: python-r2k
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-r2k
+# R2K (RSS to Kindle)
+
+`r2k` is a tool that lets you to track your favorite RSS/Atom feeds, and send cleaned-up (i.e. only text
+and images) articles received from them directly to your Kindle.
+
+[Installation](#installation)
+
+[Cleaning up the articles](#cleaning-up-the-articles)
+
+[Usage](#usage)
+
+
+## Installation
+The best way to get up and running with `r2k` us to use pipx. Simply run:
+```bash
+pipx install r2k
+```
+
+If you're not using `pipx` (you should!), `pip install r2k` will also do.
+
+If you want to add `r2k` to your Poetry project, run `poetry add r2k`.
+
+## Cleaning up the articles
+
+There are currently 3 ways to clean up articles:
+1. The default is using the `readability` Python implementation. It doesn't require any extra steps or
+installations, and thus is the easiest to use. It is, however, a bit less precise than the other 2 methods.
+1. Using the [PushToKindle](http://pushtokindle.com/) service. The service works by attaching an email
+address that forwards cleaned up versions of URLs to your Kindle. It's free for a certain amount of articles,
+but you need to become their supporter afterward.
+1. Using a dockerized version of the [Mercury-Parser](https://github.com/postlight/mercury-parser).
+This method requires Docker, but is marginally better than the `readability` approach.
+
+## Usage
+
+### Preparations
+
+#### If you're using PushToKindle (PTK)
+
+The free version of PTK only allows for 25 articles to be sent using their service. After this,
+you'll have to become their "sustainer" (for as low as 1$/month) on Patreon
+[here](https://www.patreon.com/bePatron?c=1946606).
+
+Before using `r2k` with PTK you need to:
+
+1. Know your kindle email address (find it [here](https://www.amazon.com/mycd), under
+"Preferences" -> "Personal Document Settings").
+
+2. Add `kindle@fivefilters.org` to the list of approved email senders (in the same place in
+Amazon's settings).
+
+### Set up your configuration file
+
+Most of what `r2k` does involves the configuration file, in which the feeds you're subscribed to
+are kept, as well as some other data.
+
+After installation, run:
+
+```bash
+r2k config init [-p CONFIG_PATH]
+```
+
+The default location for the config YAML file is in `~/.r2k/config.yml`.
+
+During the init you'll be asked several questions (like your kindle email address).
+
+To see your configuration run:
+
+```bash
+r2k config show [-p CONFIG_PATH]
+```
+
+#### Adding your GMail credentials
+
+Currently `r2k` relies on the fact that you have a GMail address, and it requires a
+[Google App Password](https://support.google.com/accounts/answer/185833?hl=en&authuser=1).
+These are useful in cases where you don't want to go through 2FA authentication. Go
+[here](https://myaccount.google.com/u/1/apppasswords) to generate an `r2k` App Password, and
+add it to the configuration.
+
+### Add some RSS subscriptions
+
+#### Using an OPML file
+
+The [OPML](https://en.wikipedia.org/wiki/OPML) format is widely used in the RSS/Atom world
+(as well as in podcasting and other areas) to represent a collection of feeds. You can export your
+existing subscriptions from most feed readers into an OPML file.
+
+To load all of your subscriptions in one move run:
+
+```bash
+r2k feed import PATH_TO_OPML_FILE
+```
+
+#### Manually adding feeds
+
+If you don't have an OPML export, or just want to add a single feed you can run:
+
+```bash
+r2k feed add -t FEED_TITLE -u FEED_URL
+```
+
+If the `FEED_URL` is a proper RSS feed (i.e. an actual XML feed URL), it will be added as is.
+If the `FEED_URL` is a regular URL, `r2k` will attempt to find the RSS feed by analyzing the page
+source. In the case of multiple candidates (e.g. WordPress content feed and comment feed), you will
+be presented with a list of choices.
+
+### Send updates to your Kindle
+
+Right now the "periodical" part of `r2k` is not yet operational. In order to send updates to your
+Kindle you'll have to run:
+
+```bash
+r2k kindle send [-f FEED_TITLE]
+```
+
+If you don't pass the `-f/--feed-title` option, updates will be sent for all of your subscriptions.
+
+The first time that `kindle send` is run for any feed, you will be presented with a list of all the
+available articles in the feed (note that RSS feeds usually only keep a subset of the most recent
+entries), and will be asked to choose the last one you've already read. This is to avoiding sending
+you any article you've already consumed.
+
+
+%package help
+Summary: Development documents and examples for r2k
+Provides: python3-r2k-doc
+%description help
+# R2K (RSS to Kindle)
+
+`r2k` is a tool that lets you to track your favorite RSS/Atom feeds, and send cleaned-up (i.e. only text
+and images) articles received from them directly to your Kindle.
+
+[Installation](#installation)
+
+[Cleaning up the articles](#cleaning-up-the-articles)
+
+[Usage](#usage)
+
+
+## Installation
+The best way to get up and running with `r2k` us to use pipx. Simply run:
+```bash
+pipx install r2k
+```
+
+If you're not using `pipx` (you should!), `pip install r2k` will also do.
+
+If you want to add `r2k` to your Poetry project, run `poetry add r2k`.
+
+## Cleaning up the articles
+
+There are currently 3 ways to clean up articles:
+1. The default is using the `readability` Python implementation. It doesn't require any extra steps or
+installations, and thus is the easiest to use. It is, however, a bit less precise than the other 2 methods.
+1. Using the [PushToKindle](http://pushtokindle.com/) service. The service works by attaching an email
+address that forwards cleaned up versions of URLs to your Kindle. It's free for a certain amount of articles,
+but you need to become their supporter afterward.
+1. Using a dockerized version of the [Mercury-Parser](https://github.com/postlight/mercury-parser).
+This method requires Docker, but is marginally better than the `readability` approach.
+
+## Usage
+
+### Preparations
+
+#### If you're using PushToKindle (PTK)
+
+The free version of PTK only allows for 25 articles to be sent using their service. After this,
+you'll have to become their "sustainer" (for as low as 1$/month) on Patreon
+[here](https://www.patreon.com/bePatron?c=1946606).
+
+Before using `r2k` with PTK you need to:
+
+1. Know your kindle email address (find it [here](https://www.amazon.com/mycd), under
+"Preferences" -> "Personal Document Settings").
+
+2. Add `kindle@fivefilters.org` to the list of approved email senders (in the same place in
+Amazon's settings).
+
+### Set up your configuration file
+
+Most of what `r2k` does involves the configuration file, in which the feeds you're subscribed to
+are kept, as well as some other data.
+
+After installation, run:
+
+```bash
+r2k config init [-p CONFIG_PATH]
+```
+
+The default location for the config YAML file is in `~/.r2k/config.yml`.
+
+During the init you'll be asked several questions (like your kindle email address).
+
+To see your configuration run:
+
+```bash
+r2k config show [-p CONFIG_PATH]
+```
+
+#### Adding your GMail credentials
+
+Currently `r2k` relies on the fact that you have a GMail address, and it requires a
+[Google App Password](https://support.google.com/accounts/answer/185833?hl=en&authuser=1).
+These are useful in cases where you don't want to go through 2FA authentication. Go
+[here](https://myaccount.google.com/u/1/apppasswords) to generate an `r2k` App Password, and
+add it to the configuration.
+
+### Add some RSS subscriptions
+
+#### Using an OPML file
+
+The [OPML](https://en.wikipedia.org/wiki/OPML) format is widely used in the RSS/Atom world
+(as well as in podcasting and other areas) to represent a collection of feeds. You can export your
+existing subscriptions from most feed readers into an OPML file.
+
+To load all of your subscriptions in one move run:
+
+```bash
+r2k feed import PATH_TO_OPML_FILE
+```
+
+#### Manually adding feeds
+
+If you don't have an OPML export, or just want to add a single feed you can run:
+
+```bash
+r2k feed add -t FEED_TITLE -u FEED_URL
+```
+
+If the `FEED_URL` is a proper RSS feed (i.e. an actual XML feed URL), it will be added as is.
+If the `FEED_URL` is a regular URL, `r2k` will attempt to find the RSS feed by analyzing the page
+source. In the case of multiple candidates (e.g. WordPress content feed and comment feed), you will
+be presented with a list of choices.
+
+### Send updates to your Kindle
+
+Right now the "periodical" part of `r2k` is not yet operational. In order to send updates to your
+Kindle you'll have to run:
+
+```bash
+r2k kindle send [-f FEED_TITLE]
+```
+
+If you don't pass the `-f/--feed-title` option, updates will be sent for all of your subscriptions.
+
+The first time that `kindle send` is run for any feed, you will be presented with a list of all the
+available articles in the feed (note that RSS feeds usually only keep a subset of the most recent
+entries), and will be asked to choose the last one you've already read. This is to avoiding sending
+you any article you've already consumed.
+
+
+%prep
+%autosetup -n r2k-0.7.4
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-r2k -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 0.7.4-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..3bd60b2
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+391ecf71db9157a64718f9f5fc2ffca0 r2k-0.7.4.tar.gz