Almost every tracked file in the repo had drifted to mode 777 on disk (only files created fresh this session were unaffected), and a chunk of that drift had already been committed as spurious +x bits on plain YAML/Markdown files (authentik.yaml, kustomization.yaml, coturn.yaml, element-server-suite.yaml, TASKS.md, install.md, etc.) - none of these need to be executable. Restored to 644 for regular files, 755 only for actual scripts (postCreateCommand.sh, docker-init.sh, install-hooks.sh, pre-commit hook, element-setup-linux.sh). Also found element-setup-macos.command was missing +x despite having a shebang and being meant for double-click execution on macOS - fixed. Added .gitignore for .DS_Store and .claude/ and stopped tracking the five .DS_Store files that had been committed by accident. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
91 lines
3.8 KiB
Markdown
91 lines
3.8 KiB
Markdown
# Element Web Customization: Themes, Desktop-Apps, Admin
|
|
|
|
**Status**: ✅ Vollständig deployed
|
|
**Domains**: `axion1337.chat` (Web), `/docs/setup` (Scripts)
|
|
|
|
## 1. Custom Themes (7 Stück)
|
|
|
|
| Theme | Primärfarbe |
|
|
|-------|-----------|
|
|
| aXion1337 Dark | `#1a1a1a` |
|
|
| Deep Purple | `#6a4c93` |
|
|
| Discord Dark | `#2c2f33` |
|
|
| Electric Blue | `#0066ff` |
|
|
| Everforest Dark Hard | `#1e2326` |
|
|
| Gruvbox Dark | `#282828` |
|
|
| Wal | `#1e1e1e` |
|
|
|
|
**Konfiguration**: `apps/production/custom-configs/element-values.yaml`
|
|
|
|
**Anwendung (User)**: Settings → Appearance → Colour theme
|
|
|
|
## 2. Desktop-Setup-Scripts
|
|
|
|
| System | Datei |
|
|
|--------|-------|
|
|
| Windows | `element-setup-windows.cmd` (Doppelklick) |
|
|
| macOS | `element-setup-macos.command` (Doppelklick) |
|
|
| Linux | `element-setup-linux.sh` (bash) |
|
|
|
|
**Was die Scripts tun**:
|
|
1. config.json erstellen mit `configUrl: "https://axion1337.chat/config.json"`
|
|
2. Element installieren (WinGet / Homebrew / apt/dnf/pacman)
|
|
3. Element starten (auto-config laden)
|
|
|
|
**Download**: `https://axion1337.chat/docs/setup/`
|
|
|
|
## 3. Element Admin-Panel
|
|
|
|
**URL**: `https://admin.axion1337.chat`
|
|
|
|
- User verwalten
|
|
- Room durchsuchen
|
|
- Server-Statistiken
|
|
|
|
**Konfiguration**: `apps/production/element-server-suite.yaml` (ESS Chart)
|
|
|
|
## 4. Element Call Fork (Video/Audio-Qualität)
|
|
|
|
**Status**: ✅ Deployed (2026-07-28, Closes Issue #8)
|
|
|
|
- Fork: `rohana.axion1337.de/sorb/threadnet-call` (basiert auf `emmick4/element-call:livekit`,
|
|
enthält den noch nicht gemergten Upstream-PR element-hq/element-call#3736 mit
|
|
config-driven `media_quality` — kein Custom-Code nötig)
|
|
- Defaults angehoben: Kamera bis **1440p/60fps** (~8 Mbps), Screen-Share **1440p/30fps**
|
|
(~6 Mbps). Startwerte, keine harten Limits — Nutzer können in Settings weiter hochdrehen.
|
|
- Rauschunterdrückung: clientseitige WebRTC-Standardtoggles (Echo/Noise/Gain), passend zu
|
|
LiveKits eigener Empfehlung für Mensch-zu-Mensch-Calls. Bewusst **kein** server-seitiges
|
|
ML-Noise-Cancellation (siehe `docs/TASKS.md` Backlog).
|
|
- **Incident (2026-07-28)**: Erster Versuch mit erzwungenem `video_codec: vp9` hat Calls
|
|
komplett kaputt gemacht (kein Bild/Ton). Sofort zurückgerollt. Vermutete Ursache: LiveKit
|
|
nutzt für vp9/av1 SVC statt klassischem Simulcast, `buildPublishOptions()` im Fork setzt
|
|
aber immer Simulcast-Layer — Code-Fix nötig, bevor vp9 erneut versucht wird (Backlog).
|
|
- **720p-Zwischen-Layer ergänzt** (`simulcast_layers`) — ohne eigene Definition fiel die
|
|
Übertragung bei kleinsten Netzwerkschwankungen direkt von 1440p auf blockiges 360p, jetzt
|
|
sanftere Abstufung über 720p.
|
|
- **H.264 statt VP8** (2026-07-28) — nutzt wie VP8 klassisches Simulcast (kein SVC-Risiko wie
|
|
bei VP9), zusätzlich auf vielen Geräten (v.a. iOS/Safari) hardwarebeschleunigt. Live
|
|
verifiziert: 7 von 8 Video-Tracks liefen über H.264, 1 fiel sauber auf den VP8-Backup-Codec
|
|
zurück (kein Ausfall). Deployed als `v0.2.3-elementcall-h264`.
|
|
- Deployt als `rohana.axion1337.de/sorb/threadnet-web:v0.2.1-elementcall-noquotavp9` — nur
|
|
der `/app/widgets/element-call/`-Ordner im bestehenden `v0.1.0`-Image ausgetauscht, da
|
|
`ThreadNet-Web` einen vorbestehenden Build-Bug hat (siehe unten).
|
|
- Config live prüfbar: `https://axion1337.chat/widgets/element-call/config.json`
|
|
|
|
**Bekannter, nicht behobener Bug in `ThreadNet-Web`**: `scripts/docker-link-repos.sh` /
|
|
`docker-package.sh` sind nicht ausführbar committet (Mode 644), und der gepinnte
|
|
`matrix-js-sdk#develop`-Commit im Lockfile ist zu alt (fehlt `src/oidc/authorize.ts`) —
|
|
blockiert einen kompletten Neu-Build des Forks von Grund auf.
|
|
|
|
## Dateien
|
|
|
|
| Datei | Ort |
|
|
|-------|-----|
|
|
| Custom Themes | `element-values.yaml` ConfigMap |
|
|
| Setup-Scripts | `element-web-docs-configmap.yaml` |
|
|
| Docs Server | `element-web-docs-server.yaml` (nginx) |
|
|
| Ingress | `apex-ingress.yaml` (`/docs/setup/` route) |
|
|
|
|
---
|
|
**Weitere Details**: Siehe Kapitel 4.
|