diff --git a/internal/glance/config.go b/internal/glance/config.go index 318367c..7957b67 100644 --- a/internal/glance/config.go +++ b/internal/glance/config.go @@ -50,6 +50,7 @@ type config struct { LogoText string `yaml:"logo-text"` LogoURL string `yaml:"logo-url"` FaviconURL string `yaml:"favicon-url"` + FaviconType string `yaml:"-"` AppName string `yaml:"app-name"` AppIconURL string `yaml:"app-icon-url"` AppBackgroundColor string `yaml:"app-background-color"` diff --git a/internal/glance/glance.go b/internal/glance/glance.go index c568be4..6f5beb2 100644 --- a/internal/glance/glance.go +++ b/internal/glance/glance.go @@ -127,11 +127,17 @@ func newApplication(c *config) (*application, error) { config.Theme.CustomCSSFile = app.resolveUserDefinedAssetPath(config.Theme.CustomCSSFile) config.Branding.LogoURL = app.resolveUserDefinedAssetPath(config.Branding.LogoURL) - if config.Branding.FaviconURL == "" { - config.Branding.FaviconURL = app.StaticAssetPath("favicon.png") - } else { - config.Branding.FaviconURL = app.resolveUserDefinedAssetPath(config.Branding.FaviconURL) - } + config.Branding.FaviconURL = ternary( + config.Branding.FaviconURL == "", + app.StaticAssetPath("favicon.svg"), + app.resolveUserDefinedAssetPath(config.Branding.FaviconURL), + ) + + config.Branding.FaviconType = ternary( + strings.HasSuffix(config.Branding.FaviconURL, ".svg"), + "image/svg+xml", + "image/png", + ) if config.Branding.AppName == "" { config.Branding.AppName = "Glance" diff --git a/internal/glance/templates/document.html b/internal/glance/templates/document.html index ce2e9a6..91647f8 100644 --- a/internal/glance/templates/document.html +++ b/internal/glance/templates/document.html @@ -21,7 +21,8 @@ - + +