ref: e48ddadf229ca1091cc60fb862cb29cbda23c313 gobin/README.md -rw-r--r-- 1.6 KiB
e48ddadfAlexey Yerin Dump config.example.toml to README 6 months ago


Simple self-hosted service for sharing text snippets


  • Totally anonymous, not even IP is logged
  • Dark theme by default
  • JavaScript-free
  • Easy to deploy (not really but much easier than paste.sr.ht)


Two basic requirements are Go compiler (unless you grab built binaries) and PostgreSQL database running.


Copy config.example.toml to config.toml (or whatever you want) and edit to your liking. All fields are required.

# Postgres database URI to connect to
# Format as follows: postgres://<USER>[:PASSWORD]@<HOST>[:PORT]/<DB>
databaseUri = "postgres://postgres:qqqq@localhost/gobin"

# On which port the application runs
# If you port is <1024, you need to run gobin as root because such ports
# are priviliged
port = 4000

# Directories for static assets and templates, relative to where you're
# launching gobin from
templateRoot = "./templates"
staticRoot = "./static"

# Assume http:// on permalinks, setting this to true is not recommended
# in production environments
#insecure = true
insecure = false


git clone https://git.sr.ht/~yerinalexey/gobin
cd gobin

go build


./gobin-migrate up


./gobin-migrate -c /etc/whatever.toml up

Warning: TOML parser in gobin-migrate is too simple and will not handle all cases.

If something goes wrong, you can apply migrations manually by running up.sql files in subdirectories of ./migrations.




./gobin -config /etc/whatever.toml    # if you have a config file in different place

It's also a good idea to run gobin binary as a system service.