Go to file
2021-10-01 18:45:47 +02:00
.builds add build file for CI 2020-05-08 07:07:12 -06:00
.github/workflows don't use gover to build 2021-09-29 16:55:37 -06:00
.gitignore initial bits for gavin - a no bs webdav server 2019-11-07 08:05:34 -07:00
go.mod update dependencies 2021-09-29 07:19:39 -06:00
go.sum update dependencies 2021-09-29 07:19:39 -06:00
LICENSE remove comment lines 2019-11-29 08:40:04 -07:00
main.go dump directories too 2021-09-29 16:55:55 -06:00
README.md fix: Linux htpasswd requires -B flag 2021-10-01 18:45:47 +02:00

gavin

gavin is a self contained instance of Organice.

It combines a WebDAV server and the Organice assets into a single binary that can be run from virtually everywhere.

gavin can be used as a standalone webserver or placed behind a reverse proxy.

Features

  • Built in WebDAV server with basic http authentication.
  • Ability to serve over TLS using automatically managed ACME certificates.
  • Reverse proxy friendly.

Docs

Generating a .htpasswd file

OpenBSD

htpasswd .htpasswd $USER

Linux/macOS

htpasswd -B -c .htpasswd $USER

Example usage on local machine

Install

go install suah.dev/gavin@latest

Running

  • Generate a .htpasswd file.
  • Run gavin pointing it at your org files:
gavin -davdir ~/org

Running in auto ACME mode

gavin -domain gavin.example.com -http $externalIP:443

If you would like to specify where gavin stores the certificates the -cache flag can be used.

By default gavin will listen on port 80 for ACME requests. This can be changed using the -alisten flag, however, note that ACME always sends requests over port 80, so you will need something that forwards requests onto gavin.