blob: d7c8c01a97f516479d336dd76889566f06273c70 (
plain) (
tree)
|
|
━━━━━━━━━
PYXIS
Andinus
━━━━━━━━━
Table of Contents
─────────────────
1 Demo
.. 1.1 Screenshots
2 Documentation
.. 2.1 Commands
.. 2.2 Examples
.. 2.3 Configuration
3 Installation
.. 3.1 Dependencies
Pyxis is a simple twtxt client.
[twtxt] is a decentralised, minimalist microblogging service for
hackers.
• Website: [https://andinus.nand.sh/pyxis]
• Source: [https://git.tilde.institute/andinus/pyxis]
• Mirror: [https://github.com/andinus/pyxis]
[twtxt] https://github.com/buckket/twtxt
1 Demo
══════
1.1 Screenshots
───────────────
• timeline [2020-08-30 Sun]
[https://andinus.nand.sh/static/pyxis/2020-08-30_timeline.png]
2 Documentation
═══════════════
The feeds are saved in `$XDG_DATA_HOME/pyxis', if it's not defined
then `$HOME/.local/share/pyxis' is used. Feeds are configured in
`$XDG_CONFIG_HOME/pyxis.pl' or `$HOME/.config/pyxis.pl'.
2.1 Commands
────────────
2.1.1 fetch
╌╌╌╌╌╌╌╌╌╌╌
fetch will fetch all the latest feeds from config file. You can use
Pyxis without this feature by fetching the files yourself manually to
data directory.
2.1.2 timeline
╌╌╌╌╌╌╌╌╌╌╌╌╌╌
timeline will print your timeline from all the feeds. You can also
pass an optional argument to load custom feeds.
For example, you can pass multiple feeds like `pyxis timeline f1 f2',
it'll load both `f1' & `f2'. If you pass an invalid feed then it
prints a warning & goes to the next one.
2.2 Examples
────────────
┌────
│ pyxis fetch # fetch all feeds
│
│ # dispay emacs & perl feeds (if available)
│ pyxis timeline emacs perl
│
│ pyxis timeline # display all feeds
└────
2.3 Configuration
─────────────────
There is an example config file under `share/config.pl', move it to
config directory & rename to `pyxis.pl'.
┌────
│ cp share/config.pl $HOME/.config/pyxis.pl
└────
*Warning*: Pyxis will evaluate the configuration file, which means an
attacker can use it to run malicious code.
*Note*: They could always add malicious code to `.profile' & do harm.
Just thought I should put the warning.
┌────
│ #!/usr/bin/perl
│
│ use strict;
│ use warnings;
│
│ my %feeds = (
│ andinus => "https://andinus.nand.sh/static/twtxt",
│ );
│
│ sub get_feeds { return %feeds; }
│
│ 1;
└────
Add your feeds to `%feeds' hash like shown above. You can remove those
2 `use' lines but it's good if you keep them.
3 Installation
══════════════
Install these dependencies from CPAN. Then just clone the repository,
copy the config & run pyxis!
3.1 Dependencies
────────────────
• Getopt::Long is required only for options.
• [HTTP::Tiny] is only required if you use `fetch'.
• Path::Tiny can be replaced with perl core.
• Term::ANSIColor is just for good looks.
• Time::Moment can be replaced with DateTime or you can just `sort' it
directly. Sorting directly will mess up the order a bit but should
be okay for most cases.
|