From 5b05475500ba351d92abf4bda4e5fe0c1e2cd73c Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Sun, 3 Aug 2025 15:17:07 +0300 Subject: [PATCH] Web server now servers the install script --- embeds/embeds.go | 3 +++ internal/webserver/webserver.go | 13 ++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/embeds/embeds.go b/embeds/embeds.go index 6aff681..2cf0dcc 100644 --- a/embeds/embeds.go +++ b/embeds/embeds.go @@ -27,6 +27,9 @@ var ( BuildDate string = "unknown" ) +//go:embed install.sh +var Installer string + //go:embed server.crt var ServerCertificate []byte diff --git a/internal/webserver/webserver.go b/internal/webserver/webserver.go index 106400e..64ce805 100644 --- a/internal/webserver/webserver.go +++ b/internal/webserver/webserver.go @@ -60,6 +60,16 @@ func ServeEkoWebsite() { publicMux := http.NewServeMux() + publicMux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { + http.Redirect(w, r, "https://github.com/kyren223/eko", http.StatusFound) + }) + + publicMux.HandleFunc("/install.sh", func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "application/x-sh") + _, err := io.WriteString(w, embeds.Installer) + assert.NoError(err, "installer should be valid") + }) + publicMux.HandleFunc("/style.css", func(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "text/css") _, err := w.Write([]byte(css)) @@ -99,7 +109,7 @@ func ServeEkoWebsite() { } func writeLegalLayoutHtml(w io.Writer, html string) { - fmt.Fprintf(w, ` + _, err := fmt.Fprintf(w, ` @@ -116,6 +126,7 @@ func writeLegalLayoutHtml(w io.Writer, html string) { `, html) + assert.NoError(err, "html *should* be valid") } func mdToHTML(md string) string {