blob: dee857bb52636f1f0c846193fdbb1589a1994ab5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
# brisket
`brisket` is a primitive newsreader script, capable of fetching posts and
posting to NNTP servers. It's dead simple and lacks any sort of fancy TUI,
opting instead for an interface inspired by the Unix philosophy: posts are read
from stdin, and are written either to stdout or to text files in a directory.
## Installation
`brisket` is self-contained and depends only on Hy core and the Python standard
library. Provided that both Hy and Python are installed, you should be able to
invoke `brisket` in the following ways.
```sh
$ chmod u+x brisket.hy
# Install globally.
$ cp brisket.hy /usr/local/bin/brisket
# Or
# I'd rather just run it from the repository.
$ ./brisket.hy
```
## Usage
Running `brisket` without any arguments will give a list of recognized commands.
```sh
$ brisket
usage: /home/jakob/.bin/brisket [command] [args]
recognized commands:
- describe-group
- help
...
```
The documentation for any command can be obtained with the `help` command.
```sh
$ brisket help describe-group
Describe the first group matching the pattern.
usage: describe-groups [pattern]
```
### Configuration
Upon running `brisket` for the first time, a default configuration file will be
written to `$HOME/.config/brisket/config.ini`. The hostname for the NNTP server
you wish to connect to can be specified here. Alternatively, the hostname can be
specified with the `$NNTPSERVER` environment variable.
Currently, the only way to specify credentials for authenticating with the NNTP
server is with a line in `.authinfo.gpg`. See
[here](https://www.emacswiki.org/emacs/GnusAuthinfo) for more information.
### Exploration
A list of groups available on the server can be obtained with the `list-groups`
command.
```sh
$ brisket list-groups
control
control.cancel
control.checkgroups
control.newgroup
control.rmgroup
junk
orbitalfox
orbitalfox.test
...
```
Descriptions, if available, can be obtained with the `describe-group` command.
```sh
$ brisket describe-group junk
Unfiled articles (no posting).
```
## Why the name?
I couldn't come up with a better name, and there's little in the world that
makes me happier than a smoked brisket.
```
________
< Uhm... >
--------
\ ^__^
\ (oo)\\_______
(__)\\ )\\/\\
||----w |
|| ||
```
|