diff options
| author | Paul Buetow <paul@buetow.org> | 2022-01-22 10:54:48 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2022-01-22 10:54:48 +0000 |
| commit | 5fdae1b7bf1993ed05ca2e8ed634418b3942a291 (patch) | |
| tree | d59321c5b811501874cc7ccdfe89788dddbd5eb6 /openbsd | |
| parent | e33a3abb0e6743447584e44886f0f444ff599ca6 (diff) | |
moving to vger gemini server
Diffstat (limited to 'openbsd')
| -rw-r--r-- | openbsd/frontends/opt/src/gemini/README.md | 12 | ||||
| -rw-r--r-- | openbsd/frontends/opt/src/gemini/myserver/main.go | 77 |
2 files changed, 0 insertions, 89 deletions
diff --git a/openbsd/frontends/opt/src/gemini/README.md b/openbsd/frontends/opt/src/gemini/README.md deleted file mode 100644 index 2d2d5a8..0000000 --- a/openbsd/frontends/opt/src/gemini/README.md +++ /dev/null @@ -1,12 +0,0 @@ -Custom gemini server configuration -================================= - -``` -doas pkg_add go -git clone https://github.com/a-h/gemini ~/git/gemini -mkdir ~/git/gemini/myserver -cp ./myserver/main.go ~/git/gemini/myserver/ -cd ~/git/gemini/myserver -go build -doas sh -c 'rcctl stop geminid; sleep 1; cp -p ./myserver /usr/local/bin/geminid; rcctl start geminid' -``` diff --git a/openbsd/frontends/opt/src/gemini/myserver/main.go b/openbsd/frontends/opt/src/gemini/myserver/main.go deleted file mode 100644 index 24c903f..0000000 --- a/openbsd/frontends/opt/src/gemini/myserver/main.go +++ /dev/null @@ -1,77 +0,0 @@ -package main - -import ( - "context" - "crypto/tls" - "fmt" - "os" - "time" - - "github.com/a-h/gemini" -) - -type configuration struct { - // Domain name, e.g. localhost. - domain string - // Certfile is the path to a server cerfificate file. - certFile string - // Keyfile is the path to a server key file. - keyFile string - // Path to Gemini content to serve. - path string -} - -func main() { - config := []configuration{ - { - domain: "www.snonux.de", - certFile: "/etc/ssl/snonux.de.fullchain.pem", - keyFile: "/etc/ssl/private/snonux.de.key", - path: "/var/gemini/gemtexter/snonux.de", - }, - { - domain: "snonux.de", - certFile: "/etc/ssl/snonux.de.fullchain.pem", - keyFile: "/etc/ssl/private/snonux.de.key", - path: "/var/gemini/gemtexter/snonux.de", - }, - { - domain: "www.buetow.org", - certFile: "/etc/ssl/buetow.org.fullchain.pem", - keyFile: "/etc/ssl/private/buetow.org.key", - path: "/var/gemini/gemtexter/buetow.org", - }, - { - domain: "buetow.org", - certFile: "/etc/ssl/buetow.org.fullchain.pem", - keyFile: "/etc/ssl/private/buetow.org.key", - path: "/var/gemini/gemtexter/buetow.org", - }, - } - - // Load the config. - domainToHandler := map[string]*gemini.DomainHandler{} - - for i := 0; i < len(config); i++ { - c := config[i] - h := gemini.FileSystemHandler(gemini.Dir(c.path)) - cert, err := tls.LoadX509KeyPair(c.certFile, c.keyFile) - if err != nil { - fmt.Printf("error: failed to load certificates for domain %q: %v\n", c.domain, err) - os.Exit(1) - } - dh := gemini.NewDomainHandler(c.domain, cert, h) - domainToHandler[c.domain] = dh - } - - // Start the server. - ctx := context.Background() - server := gemini.NewServer(ctx, ":1965", domainToHandler) - server.ReadTimeout = time.Second * 5 - server.WriteTimeout = time.Second * 10 - err := server.ListenAndServe() - if err != nil { - fmt.Printf("error: %v\n", err) - os.Exit(1) - } -} |
