abd62d8f735104d6a7a7379c5d78053d82cbe3d0
- Главная конфигурация home.yml и виджеты (countdown, qbittorrent) - PowerShell и Bash скрипты для автоматической загрузки на сервер - Обновлен README с документацией
Glance Dashboard Configuration
Конфигурация для Glance - минималистичного дашборда для самостоятельного хостинга.
📁 Структура проекта
glance/
├── home.yml # Главный файл конфигурации
├── widgets/ # Отдельные виджеты (модульная структура)
│ ├── bookmarks-homelab.yml # Закладки Homelab
│ ├── qbittorrent.yml # Виджет qBittorrent
│ └── ... # Другие виджеты
├── upload-glance-config.sh # Shell скрипт для загрузки конфигурации
├── upload-glance-config.ps1 # PowerShell обертка (использует WSL)
└── README.md # Этот файл
🚀 Установка и настройка
Требования
Для Linux/macOS:
bashsshиscp(обычно предустановлены)- SSH доступ к серверу с Glance
Для Windows:
- WSL (Windows Subsystem for Linux)
- PowerShell 5.1+ (предустановлен в Windows 10/11)
- SSH доступ к серверу с Glance
Установка WSL (только для Windows)
# Запустите PowerShell от имени администратора
wsl --install
После установки перезагрузите компьютер.
📤 Загрузка конфигурации на сервер
Linux/macOS
# С параметрами по умолчанию (./glance, root@192.168.50.114)
./upload-glance-config.sh
# С произвольными параметрами
./upload-glance-config.sh /path/to/glance username 192.168.50.100
Windows
# С параметрами по умолчанию
.\upload-glance-config.ps1
# С произвольными параметрами
.\upload-glance-config.ps1 -LocalDir "e:\repos\glance" -User "root" -Host "192.168.50.114"
# Или в кратком виде
.\upload-glance-config.ps1 "e:\repos\glance" "root" "192.168.50.114"
Примечание: PowerShell скрипт является оберткой, которая вызывает shell скрипт через WSL, избегая дублирования кода.
⚙️ Параметры скрипта
| Параметр | Описание | Значение по умолчанию |
|---|---|---|
LOCAL_DIR / -LocalDir |
Локальная директория с конфигурацией | ./glance |
USER / -User |
Пользователь SSH | root |
HOST / -Host |
IP адрес или hostname сервера | 192.168.50.114 |
📋 Что делает скрипт
- Загружает
home.yml→/opt/glance/config/glance.ymlна сервере - Синхронизирует директорию
widgets/→/opt/glance/config/widgets/на сервере - Автоматически создает необходимые директории на сервере
- Проверяет наличие файлов и директорий перед загрузкой
Glance автоматически перезагружает конфигурацию при обнаружении изменений.
🎨 Модульная структура виджетов
Конфигурация использует функцию include для организации виджетов:
# В home.yml
pages:
- name: Главная
columns:
- size: full
widgets:
- type: include
path: widgets/bookmarks-homelab.yml
Преимущества модульной структуры
- ✅ Легче управлять и редактировать отдельные виджеты
- ✅ Переиспользование виджетов в разных страницах
- ✅ Простота версионирования и отладки
- ✅ Чище git история изменений
🔧 Настройка SSH ключей (рекомендуется)
Для автоматической загрузки без ввода пароля:
# Сгенерируйте SSH ключ (если еще не создан)
ssh-keygen -t ed25519 -C "glance-config"
# Скопируйте ключ на сервер
ssh-copy-id root@192.168.50.114
🐛 Устранение неполадок
Windows: "wsl: команда не найдена"
Убедитесь, что WSL установлен:
wsl --version
Если WSL не установлен, выполните:
wsl --install
Ошибка SSH подключения
Проверьте подключение вручную:
ssh root@192.168.50.114
Директория не найдена
Убедитесь, что вы запускаете скрипт из правильной директории:
# Linux/macOS
ls -la glance/
# PowerShell
Get-ChildItem glance/
📚 Полезные ссылки
📝 Лицензия
Этот проект следует лицензии основного проекта Glance.
Description
Languages
PowerShell
50.6%
Shell
49.4%