From 216cf9482a15045be5c6a4f11b8d4997c155d7aa Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 16 Apr 2026 09:14:38 +0000 Subject: [PATCH 1/2] Add default config and bundle it into Docker image for zero-config deployment Adds config/glance.yml with a default dashboard (calendar, clock, markets, search, hacker-news, lobsters, rss, bookmarks, server-stats, releases, to-do) and updates the Dockerfile to copy it into the image so Railway/Render deploys work out of the box without external volume mounts. https://claude.ai/code/session_01WbRnSWZadXKgYYoGUjQBpY --- Dockerfile | 1 + config/glance.yml | 105 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 106 insertions(+) create mode 100644 config/glance.yml diff --git a/Dockerfile b/Dockerfile index 9d4ae678d..e56b34c4d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,6 +8,7 @@ FROM alpine:3.21 WORKDIR /app COPY --from=builder /app/glance . +COPY config/glance.yml /app/config/glance.yml EXPOSE 8080/tcp ENTRYPOINT ["/app/glance", "--config", "/app/config/glance.yml"] diff --git a/config/glance.yml b/config/glance.yml new file mode 100644 index 000000000..a77c7ca3d --- /dev/null +++ b/config/glance.yml @@ -0,0 +1,105 @@ +server: + host: 0.0.0.0 + port: 8080 + +branding: + app-name: Glance + +pages: + - name: Home + columns: + - size: small + widgets: + - type: calendar + first-day-of-week: monday + + - type: clock + hour-format: 24h + timezones: + - timezone: America/New_York + label: New York + - timezone: Europe/London + label: London + - timezone: Asia/Tokyo + label: Tokyo + + - type: markets + markets: + - symbol: SPY + name: S&P 500 + - symbol: BTC-USD + name: Bitcoin + - symbol: NVDA + name: NVIDIA + - symbol: AAPL + name: Apple + + - size: full + widgets: + - type: search + search-engine: duckduckgo + bangs: + - title: YouTube + shortcut: "!yt" + url: https://www.youtube.com/results?search_query={QUERY} + - title: GitHub + shortcut: "!gh" + url: https://github.com/search?q={QUERY} + + - type: group + widgets: + - type: hacker-news + limit: 15 + collapse-after: 5 + - type: lobsters + limit: 15 + collapse-after: 5 + + - type: rss + title: Tech Blogs + style: horizontal-cards + limit: 6 + cache: 2h + feeds: + - url: https://ciechanow.ski/atom.xml + title: Bartosz Ciechanowski + - url: https://samwho.dev/rss.xml + title: samwho + - url: https://jvns.ca/atom.xml + title: Julia Evans + + - type: bookmarks + groups: + - title: General + links: + - title: Gmail + url: https://mail.google.com + - title: GitHub + url: https://github.com + - title: Wikipedia + url: https://www.wikipedia.org + - title: Dev + color: 200 50 50 + links: + - title: StackOverflow + url: https://stackoverflow.com + - title: MDN + url: https://developer.mozilla.org + - title: Go Docs + url: https://pkg.go.dev + + - size: small + widgets: + - type: server-stats + servers: + - type: local + name: This Server + + - type: releases + cache: 6h + repositories: + - glanceapp/glance + - golang/go + - nodejs/node + + - type: to-do From 6a18e30e42274dfeb60bff10bab4ce745f00cb4a Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 16 Apr 2026 09:19:23 +0000 Subject: [PATCH 2/2] Fix .dockerignore to include config/ so glance.yml is bundled in Docker image --- .dockerignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.dockerignore b/.dockerignore index 1f9515c0d..50a7526f6 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,3 +9,4 @@ !/go.mod !/go.sum !main.go +!/config/