Initial commit: Glance and Homepage homelab configs

Made-with: Cursor
This commit is contained in:
2026-04-29 21:17:53 -04:00
commit f52b4ae2b4
8 changed files with 720 additions and 0 deletions
+68
View File
@@ -0,0 +1,68 @@
# Homepage config
Config for [gethomepage.dev](https://gethomepage.dev/) — an alternative/companion
to the `glance.yml` in the parent folder. Same services, different dashboard style.
All self-hosted services live under `*.klhoud.com`.
## Files
| File | Purpose |
| ------------------- | -------------------------------------------------------------------- |
| `settings.yaml` | Title, theme, layout order, providers |
| `services.yaml` | Service cards (Homelab / Work / Projects) + widgets where supported |
| `bookmarks.yaml` | Quick-link groups |
| `widgets.yaml` | Info widgets (resources, search, weather, datetime, greeting) |
| `docker.yaml` | Docker host definitions (commented out — fill in if/when you wire it)|
| `kubernetes.yaml` | Disabled placeholder |
## Environment variables
`services.yaml` references these via `{{HOMEPAGE_VAR_*}}`. Set them on the
Homepage container (Coolify → Environment Variables). Any that are omitted just
make that widget show an error — the service card itself still renders.
```
HOMEPAGE_VAR_NEXTCLOUD_USER
HOMEPAGE_VAR_NEXTCLOUD_PASS # Nextcloud app password, NOT your login password
HOMEPAGE_VAR_ADGUARD_USER
HOMEPAGE_VAR_ADGUARD_PASS
HOMEPAGE_VAR_PROXMOX_USER # e.g. api@pam!homepage
HOMEPAGE_VAR_PROXMOX_TOKEN
```
Also required so Homepage allows iframed/proxied requests from your domain:
```
HOMEPAGE_ALLOWED_HOSTS=homepage.klhoud.com
```
## Docker / Coolify deploy
Mount this folder at `/app/config`:
```yaml
services:
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
ports:
- 3000:3000
volumes:
- ./homepage:/app/config
# - /var/run/docker.sock:/var/run/docker.sock:ro # optional
environment:
HOMEPAGE_ALLOWED_HOSTS: homepage.klhoud.com
HOMEPAGE_VAR_NEXTCLOUD_USER: ${HOMEPAGE_VAR_NEXTCLOUD_USER}
HOMEPAGE_VAR_NEXTCLOUD_PASS: ${HOMEPAGE_VAR_NEXTCLOUD_PASS}
HOMEPAGE_VAR_ADGUARD_USER: ${HOMEPAGE_VAR_ADGUARD_USER}
HOMEPAGE_VAR_ADGUARD_PASS: ${HOMEPAGE_VAR_ADGUARD_PASS}
HOMEPAGE_VAR_PROXMOX_USER: ${HOMEPAGE_VAR_PROXMOX_USER}
HOMEPAGE_VAR_PROXMOX_TOKEN: ${HOMEPAGE_VAR_PROXMOX_TOKEN}
restart: unless-stopped
```
## Heads-up
Your `glance.yml` (parent folder, lines 127 & 213) contains a committed GitHub
PAT. Rotate it and move it to an env var before pushing anywhere public.
+61
View File
@@ -0,0 +1,61 @@
---
# https://gethomepage.dev/configs/bookmarks/
- Developer:
- GitHub:
- abbr: GH
href: https://github.com
- Svelte Kit:
- abbr: SK
href: https://kit.svelte.dev
- Tailwind:
- abbr: TW
href: https://tailwindcss.com
- Bun:
- abbr: BN
href: https://bun.sh
- Commute:
- Citi Bike map:
- abbr: CB
href: https://account.citibikenyc.com/map
- MTA status:
- abbr: MT
href: https://new.mta.info/status
- Google Maps:
- abbr: GM
href: https://maps.google.com
- Neighborhood:
- NYT Cooking:
- abbr: NY
href: https://cooking.nytimes.com
- Metrograph:
- abbr: MG
href: https://metrograph.com
- Film Forum:
- abbr: FF
href: https://filmforum.org
- IFC Center:
- abbr: IF
href: https://www.ifccenter.com
- Anthology:
- abbr: AF
href: https://anthologyfilmarchives.org
- Reading:
- Hellgate:
- abbr: HG
href: https://hellgatenyc.com
- THE CITY:
- abbr: TC
href: https://www.thecity.nyc
- Gothamist:
- abbr: GO
href: https://gothamist.com
- Hacker News:
- abbr: HN
href: https://news.ycombinator.com
- Lobsters:
- abbr: LO
href: https://lobste.rs
+10
View File
@@ -0,0 +1,10 @@
---
# https://gethomepage.dev/configs/docker/
# Fill these in if you want per-container stats on service cards.
# Remove this file (or leave empty) if you don't want Docker integration.
# my-coolify-host:
# host: 127.0.0.1
# port: 2375
# my-proxmox-host:
# socket: /var/run/docker.sock
+6
View File
@@ -0,0 +1,6 @@
---
# https://gethomepage.dev/configs/kubernetes/
# Not used — you're on Proxmox + Coolify. Kept here so Homepage doesn't warn
# about a missing config. Leave mode as "disabled" to skip cluster discovery.
mode: disabled
+57
View File
@@ -0,0 +1,57 @@
---
# https://gethomepage.dev/configs/services/
# Widget docs per service: https://gethomepage.dev/widgets/
- Homelab:
- Nextcloud:
href: https://cloud.klhoud.com
description: Files, calendar, contacts
icon: nextcloud.svg
siteMonitor: https://cloud.klhoud.com
widget:
type: nextcloud
url: https://cloud.klhoud.com
username: "{{HOMEPAGE_VAR_NEXTCLOUD_USER}}"
password: "{{HOMEPAGE_VAR_NEXTCLOUD_PASS}}"
- AdGuard Home:
href: https://adguard.klhoud.com
description: Network-wide DNS blocking
icon: adguard-home.svg
siteMonitor: https://adguard.klhoud.com
widget:
type: adguard
url: https://adguard.klhoud.com
username: "{{HOMEPAGE_VAR_ADGUARD_USER}}"
password: "{{HOMEPAGE_VAR_ADGUARD_PASS}}"
- Proxmox:
href: https://proxmox.klhoud.com
description: Hypervisor
icon: proxmox.svg
siteMonitor: https://proxmox.klhoud.com
widget:
type: proxmox
url: https://proxmox.klhoud.com
username: "{{HOMEPAGE_VAR_PROXMOX_USER}}" # e.g. api@pam!homepage
password: "{{HOMEPAGE_VAR_PROXMOX_TOKEN}}"
node: pve
- Coolify:
href: https://coolify.klhoud.com
description: Self-hosted PaaS
icon: coolify.svg
siteMonitor: https://coolify.klhoud.com
- Projects:
- Cardless:
href: https://cardless.games
description: Card game project
icon: mdi-cards-playing
siteMonitor: https://cardless.games
- Selfworth:
href: https://selfworth.klhoud.com
description: Personal project
icon: mdi-chart-line
siteMonitor: https://selfworth.klhoud.com
+41
View File
@@ -0,0 +1,41 @@
---
# https://gethomepage.dev/configs/settings/
title: Konrad's Homelab
favicon: https://cloud.klhoud.com/favicon.ico
# Gruvbox-ish, matching your Glance theme
theme: dark
color: stone
background:
opacity: 80
blur: sm
headerStyle: clean
language: en
target: _blank
# Layout: column order on the dashboard
layout:
Homelab:
style: row
columns: 4
icon: mdi-server-network
Work:
style: row
columns: 2
icon: mdi-briefcase
Projects:
style: row
columns: 2
icon: mdi-rocket-launch
# Quick links shown in the top-right of the header
quicklaunch:
searchDescriptions: true
hideInternetSearch: false
showSearchSuggestions: true
hideVisitURL: false
providers:
openweathermap: openweathermapapikey
# openmeteo needs no key
+28
View File
@@ -0,0 +1,28 @@
---
# https://gethomepage.dev/widgets/info/
# Info widgets render across the top of the dashboard.
- resources:
label: system
cpu: true
memory: true
disk: /
- search:
provider: duckduckgo
target: _blank
- openmeteo:
label: Brooklyn
latitude: 40.6782
longitude: -73.9442
timezone: America/New_York
units: imperial
cache: 5
- datetime:
text_size: xl
format:
timeStyle: short
dateStyle: short
hourCycle: h12