Raw Download
diff --git a/tesseract/genconf/env.go b/tesseract/genconf/env.go
index 620af3a..94ef42f 100644
--- a/tesseract/genconf/env.go
+++ b/tesseract/genconf/env.go
@@ -32,7 +32,7 @@ func generateEnv(yamlFile string, wantDiff bool, allowWrite bool, useColor bool)
 		// Build TESSERACT_ARGS string
 		args := []string{
 			fmt.Sprintf("--private_key=%s", logEntry.Secret),
-			fmt.Sprintf("--origin=%s.log.ct.ipng.ch", logEntry.ShortName),
+			fmt.Sprintf("--origin=%s", logEntry.Origin),
 			fmt.Sprintf("--storage_dir=%s", logEntry.LocalDirectory),
 			fmt.Sprintf("--roots_pem_file=%s", rootsPemPath),
 		}
diff --git a/tesseract/genconf/html.go b/tesseract/genconf/html.go
index 4e26c08..ae10eba 100644
--- a/tesseract/genconf/html.go
+++ b/tesseract/genconf/html.go
@@ -74,7 +74,7 @@ const htmlTemplate = `<!DOCTYPE html>
 
     {{range .Logs}}
 
-    <h2>{{.ShortName}}.log.ct.ipng.ch</h2>
+    <h2>{{.Origin}}</h2>
 
     <p>
       Log ID: <code>{{.LogID}}</code><br>
@@ -211,7 +211,7 @@ func computeKeyInfo(logEntry *Log) error {
 
 func generateLogJSONWithStatus(logEntry Log, outputPath string, wantDiff bool, allowWrite bool, useColor bool) error {
 	logJSON := LogV3JSON{
-		Description:   fmt.Sprintf("%s.log.ct.ipng.ch", logEntry.ShortName),
+		Description:   logEntry.Origin,
 		SubmissionURL: fmt.Sprintf("%s/", logEntry.SubmissionPrefix),
 		MonitoringURL: fmt.Sprintf("%s/", logEntry.MonitoringPrefix),
 		TemporalInterval: TemporalInterval{
diff --git a/tesseract/genconf/main.go b/tesseract/genconf/main.go
index d7daa4b..0af70dc 100644
--- a/tesseract/genconf/main.go
+++ b/tesseract/genconf/main.go
@@ -4,6 +4,7 @@ import (
 	"flag"
 	"fmt"
 	"log"
+	"net/url"
 	"os"
 	"strings"
 	"time"
@@ -41,6 +42,7 @@ type Log struct {
 	PublicKeyPEM    string
 	PublicKeyDERB64 string
 	PublicKeyBase64 string
+	Origin          string
 }
 
 func main() {
@@ -99,6 +101,15 @@ func loadConfig(yamlFile string) Config {
 		if config.Logs[i].Period == 0 {
 			config.Logs[i].Period = 200
 		}
+
+		// Extract hostname from SubmissionPrefix to set Origin
+		if config.Logs[i].SubmissionPrefix != "" {
+			if parsedURL, err := url.Parse(config.Logs[i].SubmissionPrefix); err == nil {
+				config.Logs[i].Origin = parsedURL.Host
+			} else {
+				log.Fatalf("Failed to parse SubmissionPrefix URL for %s: %v", config.Logs[i].ShortName, err)
+			}
+		}
 	}
 
 	return config