1R2E(1) General Commands Manual R2E(1)
2
3
4
6 r2e - receive RSS feeds by email
7
9 r2e [options] <command> [<args>]
10
12 r2e is a simple program which you can run in your crontab(5). It
13 watches RSS feeds and sends you nicely formatted email message for each
14 new item.
15
16 For a quick start with r2e try these steps:
17
18 r2e new your@yourdomain.com
19 r2e add feedname http://feed.url/somewhere.rss
20 r2e run
21
22
23 The last command should eventually be put into your crontab if you want
24 things be sent you automatically.
25
27 -h, --help
28 Print the rss2email help and exit.
29
30 -v, --version
31 Print the rss2email version and exit.
32
33 --full-version
34 Print the versions of Python, the compiler used to compile Python,
35 and packages used by rss2email.
36
37 -c, --config <path>
38 The program configuration is read from $XDG_CON‐
39 FIG_HOME/rss2mail.cfg by default (see also FILES and ENVIRONMENT
40 VARIABLES below). Use this option to set a different configuration
41 file.
42
43 -d, --data <path>
44 Dynamic program data is read from $XDG_DATA_HOME/rss2mail.json by
45 default (see also FILES and ENVIRONMENT VARIABLES below). Use this
46 option to set a different data file.
47
48 -V, --verbose
49 Increment the logging verbosity.
50
52 new [<email>]
53 Create a new feed database. If the <email> argument is given, it
54 sets the default email address that mails are sent to.
55
56 email [<email>]
57 Update the default target email address to <email>.
58
59 add <name> <url> [<email>]
60 Subscribe to a feed. The <name> argument gives the feed a name for
61 future manipulation. <url> is the URL of the feed. The optional
62 <email> argument is the email address to send new items to, over‐
63 riding the default address for this particular feed. Repeat for
64 each feed you want to subscribe to.
65
66 run [--no-send] [<index> [<index> ...]]
67 Scan the feeds and send emails for new items. This can be run in a
68 cron job.
69
70 The --no-send option stops r2e from sending any email. This can be
71 useful the first time you run it, as otherwise it would send an
72 email for every available feed entry.
73
74 If an <index> is specified, r2e will only download that feed.
75 <index> can be either the feed name (as set by add) or the feed
76 index (as shown by list).
77
78 list List all the feeds in the database.
79
80 pause [<index> [<index> ...]]
81 Pause feeds (disable fetching). The <index> option selects the
82 feed(s) to pause (see run for possible values). If no <index>
83 is given, all feeds are paused.
84
85 unpause [<index> [<index> ...]]
86 Unpause feeds (enable fetching).
87
88 delete <index> [<index> [<index> ...]]
89 Remove a feed (or feeds) from the database. The <index> option
90 selects the feed(s) to delete (see run for possible values).
91
92 reset [<index> [<index> ...]]
93 Forget dynamic feed data (e.g. to re-send old entries). The
94 <index> option selects the feed(s) to reset (see run for possi‐
95 ble values). If no <index> is given, all feeds are reset.
96
97 opmlimport [<path>]
98 Import new feeds from OPML. <path> is the file from which the
99 OPML data will be read. If <path> is not given r2e reads the
100 data from stdin.
101
102 opmlexport [<path>]
103 Export all feeds to OPML. <path> is the file to which the OPML
104 data will be written. If <path> is not given r2e writes the
105 data to stdout.
106
108 The program's behavior can be controlled via the $XDG_CON‐
109 FIG_HOME/rss2email.cfg (see also FILES and ENVIRONMENT VARIABLES
110 below). The file format is similar to a Microsoft Windows INI file.
111 It is parsed by Python's ConfigParser class, so see the Python documen‐
112 tation at http://docs.python.org/3/library/configparser.html for format
113 details.
114
115 The config file stores general configuration (applied to all feeds) in
116 the [DEFAULT] section. The new command will create a configuration
117 file for you, which you can edit as you see fit. The add command will
118 add feed-specific sections. To override any a setting for all feeds,
119 change the value in the [DEFAULT] section. To override a setting for a
120 particular feed, add that setting to the feed-specific section. Here
121 is an example overriding use-publisher-email and name-format for the
122 feedname feed.
123
124 [DEFAULT]
125 from = user@rss2email.invalid
126 force-from = False
127 use-publisher-email = False
128 name-format = {feed-title}: {author}
129 ...
130 verbose = warning
131
132 [feed.feedname]
133 url = http://feed.url/somewhere.rss
134 use-publisher-email = True
135 name-format = {author} ({feed.title})
136
137 You can configure the following items:
138
139 Addressing
140 from The email address messages are from by default
141
142 use-8bit
143 Transfer-Encoding. For local mailing it is safe and convenient
144 to use 8bit.
145
146 force-from
147 True: Only use the 'from' address. False: Use the email address
148 specified by the feed, when possible.
149
150 use-publisher-email
151 True: Use the publisher's email if you can't find the author's.
152 False: Just use the 'from' email instead.
153
154 name-format
155 If empty, only use the feed email address rather than friendly
156 name plus email address. Available attributes may include
157 'feed', 'feed-name', 'feed-url', 'feed-title', 'author', and
158
159 to Set this to default To email addresses.
160
161 Fetching
162 proxy Set an HTTP proxy (e.g. 'http://your.proxy.here:8080/')
163
164 feed-timeout
165 Set the timeout (in seconds) for feed server response
166
167 Processing
168 active True: Fetch, process, and email feeds. False: Don't fetch,
169 process, or email feeds
170
171 digest True: Send a single, multi-entry email per feed per rss2email
172 run. False: Send a single email per entry.
173
174 date-header
175 True: Generate Date header based on item's date, when possible.
176 False: Generate Date header based on time sent.
177
178 date-header-order
179 A comma-delimited list of some combination of ('issued', 'cre‐
180 ated', 'modified', 'expired') expressing ordered list of prefer‐
181 ence in dates to use for the Date header of the email.
182
183 bonus-header
184 Set this to add bonus headers to all emails Example: bonus-
185 header = 'Approved: joe@bob.org'
186
187 trust-guid
188 True: Receive one email per post. False: Receive an email every
189 time a post changes.
190
191 trust-link
192 True: Receive one email per unique link url. False: Defer to
193 trust-guid preference. Toggling this for existing feeds may
194 result in duplicates, because the old entries will not be
195 recorded under their new link-based ids.
196
197 encodings
198 To most correctly encode emails with international characters,
199 we iterate through the list below and use the first character
200 set that works.
201
202 post-process
203 User processing hooks. Note the space after the module name.
204 Example: post-process = 'rss2email.post_process.downcase down‐
205 case_message'
206
207 digest-post-process
208 User processing hooks for digest messages. If 'digest' is
209 enabled, the usual 'post-process' hook gets to message the per-
210 entry messages, but this hook is called with the full digest
211 message before it is mailed. Example: digest-post-process =
212 'rss2email.post_process.downcase downcase_message'
213
214 HTML conversion
215 html-mail
216 True: Send text/html messages when possible. False: Convert
217 HTML to plain text.
218
219 use-css
220 Use CSS
221
222 css Optional CSS styling
223
224 html2text options
225 unicode-snob
226 Use Unicode characters instead of their ascii psuedo-replace‐
227 ments
228
229 links-after-each-paragraph
230 Put the links after each paragraph instead of at the end.
231
232 body-width
233 Wrap long lines at position. Any negative value for no wrapping,
234 0 for 78 width (compatibility), or any positive width.
235
236 Mailing
237 email-protocol
238 Select protocol from: sendmail, smtp, imap, maildir
239
240 sendmail
241 Path to sendmail (or compatible)
242
243 user-agent
244 String to use as User-Agent in outgoing emails. If present,
245 __VERSION__ and __URL__ are replaced with rss2email version num‐
246 ber and webpage
247
248 SMTP configuration
249 smtp-auth
250 Set to True to use SMTP AUTH
251
252 smtp-username
253 username for SMTP AUTH
254
255 smtp-password
256 password for SMTP AUTH
257
258 smtp-server
259 SMTP server
260
261 smtp-ssl
262 Connect to the SMTP server using SSL
263
264 smtp-ssl-protocol
265 TLS/SSL version to use on STARTTLS when not using 'smtp-ssl'.
266
267 IMAP configuration
268 imap-auth
269 set to True to use IMAP auth.
270
271 imap-username
272 username for IMAP authentication
273
274 imap-password
275 password for IMAP authentication
276
277 imap-server
278 IMAP server
279
280 imap-port
281 IMAP port
282
283 imap-ssl
284 connect to the IMAP server using SSL
285
286 imap-mailbox
287 where we should store new messages
288
289 Maildir configuration
290 maildir-path
291 Path of maildir to write messages into
292
293 maildir-mailbox
294 Mailbox within maildir-path to write messages into
295
296 Miscellaneous
297 verbose
298 Verbosity (one of 'error', 'warning', 'info', or 'debug').
299
301 $XDG_CONFIG_HOME/rss2email.cfg
302 If this file exists, it is read to configure the program.
303
304 $XDG_DATA_HOME/rss2email.json
305 The database of feeds. Use r2e to add, remove, or modify feeds, do
306 not edit it directly.
307
309 The environment variables used by r2e are all defined in the XDG Base
310 Directory Specification, which aims to standardize locations for user-
311 specific configuration and data files.
312
313 XDG_CONFIG_HOME
314 The preferred directory for configuration files. Defaults to
315 $HOME/.config.
316
317 XDG_DATA_HOME
318 The preferred directory for data files. Defaults to
319 $HOME/.local/share.
320
321 XDG_CONFIG_DIRS
322 A colon ':' separated, preference ordered list of base directories
323 for configuration files in addition to $XDG_CONFIG_HOME. Defaults
324 to /etc/xdg. If multiple configuration files are found in this
325 path, they will all be read by the ConfigParser class (see also
326 CONFIGURATION above).
327
328 XDG_DATA_DIRS
329 A colon ':' separated, preference ordered list of base directories
330 for data files. Defaults to /usr/local/share/:/usr/share/. Only
331 the first matching file is used.
332
334 rss2email was started by Aaron Swartz, and is currently maintained by a
335 group of people. For a more complete list of contributors, see the
336 AUTHORS file in the rss2email distribution.
337
339 Report bugs by creating an issue at
340 ⟨https://github.com/rss2email/rss2email⟩.
341
342
343
344 R2E(1)