llist/README.md -rw-r--r-- 1.9 KiB View raw
a79ff5ecPhilip K Reformatted README to markdown 10 months ago

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.


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]. Aftergo 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.


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 fromtrue' (default) to false' inlist.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'.