]> Sergey Matveev's repositories - feeder.git/blob - doc/index.texi
de4dceac2665b3b3a19d0b3aba6392d57388441a
[feeder.git] / doc / index.texi
1 \input texinfo
2 @documentencoding UTF-8
3 @settitle feeder
4
5 @copying
6 Copyright @copyright{} 2022 @email{stargrave@@stargrave.org, Sergey Matveev}
7 @end copying
8
9 @node Top
10 @top feeder
11
12 @command{feeder} is a free software newsfeeds aggregator.
13 I wrote it solely for my personal needs, so currently probably there is
14 some hard-code in the scripts.
15
16 My experience was heavily based on @url{https://newsboat.org/, Newsboat}
17 reader, that unfortunately was rewritten on Rust, so I had to use its
18 old version. I also saw
19 @url{https://codemadness.org/git/sfeed/file/README.html, sfeed} project,
20 that tries to reuse many already existing tools (like @command{curl}),
21 be @url{https://suckless.org/philosophy/, suckless} and Unix-friendly,
22 but failed somewhere during the try, and asked myself if it is really so
23 hard to make that kind of software. It was written in less than a day,
24 completely replacing Newsboat, with much higher performance and great
25 flexibility.
26
27 Its architecture is very simple:
28
29 @itemize
30 @item @url{https://curl.se/, curl} is used to download feed URLs.
31 @item @url{https://go.dev/, Go}-written @command{feed2mdir} utility
32     parses and converts feed's items to mail messages stored inside
33     @url{https://en.wikipedia.org/wiki/Maildir, Maildir}.
34 @item Automatically generated @url{http://www.mutt.org/, Mutt} source
35     file contains convenient options and human-readable mailboxes list.
36 @item @url{https://www.gnu.org/software/parallel/, GNU parallel} for
37     parallel invocation of download/parsing jobs.
38 @item @url{https://www.djcbsoftware.nl/code/mu/, mu} utilities perform
39     indexing and searching among the messages. Of course it would be
40     trivial to use @url{https://www.lesbonscomptes.com/recoll/, recoll}
41     or @url{https://notmuchmail.org/, notmuch} instead, if you need that.
42 @item Bunch of optional @url{https://www.zsh.org/, Zsh} helper scripts.
43 @end itemize
44
45 But of course it has its price: original feed data, its Base64-encoded
46 copy in mailbox and another copy in @command{mu}'s Xapian database.
47
48 @insertcopying
49
50 @include storage.texi
51 @include mail.texi
52 @include usage/index.texi
53
54 @bye