______________________
LLIST - LINK LIST
Philip K.
philippija@gmail.com
______________________
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.
1 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.
1.1 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.
2 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.
2.1 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/