~zge/llist

llist/README.md -rw-r--r-- 1.9 KiB View raw
                                                                                
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
LLIST - A Link List
===================

llist is a simple and stupid HN/lobste.rs clone, without voting, written
in [Golang]. It's published under a 2-clause BSD, see LICENSE.

Setup
-----

After having downloaded the source, `cd' into the source directory and
run

	go get
	go build

`go get' will download the [Go SQL driver for Sqlite] and the [Go
Libravatar library]. After `go build' is run, a `llist' binary will
appear in the working directory.

User file
---------

The user file lists all users, their hashed password, their email
address and a short description. Each entry is in it's own line, and
each section is separated by semicolons (`:'). The hashed password is
the result of applying sha256 to a string containing the username, a
semicolon and the password (eg. `john:sEkr3t').

To easily add new entires to the user file, use the `add_user.sh'
shell script. `$USERF' (see below) has to be specified for this to
work.


Use
---

llist can either be run as a standalone binary, as a cgi- or a fcgi
executable. The latter two options are enabled by letting the binary
file end with `.cgi' and `.fcgi' respectively.

Users can now submit links and comment on them. To deactivate
commenting, one has to change to `$users' variable from `true'
(default) to `false' in `list.gtml'.

It is generally recommended to tweak the templates to fit the specific
needs of the situation, either in regards to styling or template
variables.


Environmental variables
-----------------------

- `PORT': Specified port to listen on when run as a standalone binary.
  Will fail if empty.
- `GTML': Sets template directory, defaults to `./gtml/'.
- `USERF': Tells llist where to look for user file, defaults to
  `/etc/llist_users'.
	   
[Golang]: https://golang.org
[Go SQL driver for Sqlite]: https://github.com/mattn/go-sqlite3
[Go Libravatar library]: https://strk.kbt.io/projects/go/libravatar/