Files
hyprland-rising/README.md
T
aibrashandClaude Sonnet 5.5 64aba7caf4 Theme-linked glow and terminal, tabs, fonts and layout tweaks
- Real window glow (decoration.glow) plus borders and tab bar take their
  colours from DMS (hypr/dms/colors.lua); Hyprland reloads when DMS changes
  the theme.
- kitty: colours and tab colours come from DMS (dank-theme/dank-tabs),
  no more hard-coded palette.
- Group (tab) mode: Mod+W tabs the whole workspace, thinner tab bar.
- Fullscreen programs keep the DMS bar (Mod+F maximizes, Mod+Shift+F is real
  fullscreen); per-monitor workspace switching on Mod+Tab.
- Less jelly animations, smaller gaps, weaker glow.
- JetBrains Mono is the default monospace font (fontconfig + install.sh).
- DMS settings: purple theme, popup transparency 0.98.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-30 16:12:34 +05:00

7.4 KiB
Raw Blame History

hyprland-rising

Hyprland 0.57 на Fedora 44: тёмный минималистичный райс для рабочей машины сисадмина. Скруглённые окна с блюром, розовый акцент из темы DMS, всё управляется с клавиатуры.

Что внутри

Путь Что это
hypr/hyprland.lua основной конфиг (Lua-формат Hyprland 0.57): оформление, анимации, бинды, правила окон
hypr/hypridle.conf затемнение (2,5 мин) → блокировка (5 мин) → погасание экрана (10 мин)
hypr/cheatsheet.txt справка по хоткеям, открывается на Mod+F1 (поиск по тексту)
hypr/scripts/ssh-menu.sh, ssh_hosts.py SSH-меню на Mod+S (см. ниже)
hypr/scripts/raise.sh «показать, если запущено, иначе запустить» для Mod+B/T/K
hypr/scripts/prev-window.sh Alt+Tab — предыдущее окно
hypr/scripts/ocr.sh Mod+Shift+O — область экрана → текст в буфер (рус+англ)
hypr/scripts/tmux-broadcast.conf отдельный tmux для broadcast-окон SSH-меню
dms/plugins/networkEditor плагин DMS: кнопка в панели, открывает nm-connection-editor
dms/settings.json настройки DMS (панель, тема pink, лаунчер)
systemd/user/hyprland-session.target нужен порталам (xdg-desktop-portal) вне uwsm
kitty/kitty.conf терминал: цвета и вкладки подключены из файлов DMS, прозрачность 0.80
fontconfig/60-monospace-jetbrains.conf JetBrains Mono — моноширинный шрифт по умолчанию для всех программ
install.sh установка на чистую Fedora: по умолчанию только визуал, --full — ещё инструменты и приложения
sync.sh копирует живой конфиг из ~/.config в репозиторий

Панель, уведомления, лаунчер, блокировка, обои и буфер обмена — это DankMaterialShell (DMS), Hyprland отвечает только за окна.

SSH-меню (Mod+S)

Плавающее окно (fzf в kitty) со всеми хостами из ~/.ssh/config: статус доступности, группы цветом, плашка PROD, превью с пингом. Enter — подключиться (окно становится обычным), Alt+T tmux на сервере, Alt+F SFTP, Alt+W веб-интерфейс, Alt+K разослать ключ, Alt+N новый хост, Alt+E править конфиг, Alt+G группа, Alt+R PROD, Tab отметить, Alt+B broadcast в tmux на отмеченные хосты, Alt+X команда на отмеченных хостах.

Метаданные хоста хранятся комментариями прямо над Host в ~/.ssh/config:

# group: Proxmox
# env: prod
# url: https://10.0.0.10:8006
Host proxmox1
    HostName 10.0.0.10
    User root

Сам ~/.ssh/config и ключи в репозиторий не входят. Перед любой записью меню делает бэкап в ~/.local/state/ssh-menu/backups. Для хостов с env: prod перед broadcast и запуском команды спрашивается подтверждение.

Установка на чистую Fedora

Нужна обычная Fedora (в том числе без Hyprland), пользователь с sudo и сеть:

git clone git@git.ibrash.duckdns.org:aibrash/hyprland-rising.git
cd hyprland-rising
./install.sh --dry-run   # посмотреть, что будет сделано, ничего не меняя
./install.sh             # визуал + SSH-меню
./install.sh --full      # + остальные инструменты и приложения

По умолчанию: COPR sachesi/hyprland (в репозиториях Fedora Hyprland нет) и avengemedia/dms, затем Hyprland, DMS (панель, лаунчер, уведомления, блокировка, обои, тема), шрифт JetBrains Mono, терминал kitty, SSH-меню со всем, на чём оно держится (fzf, tmux, jq, micro, nautilus для SFTP, ssh-copy-id, уведомления) и конфиги: hypr, настройки DMS, kitty, hyprland-session.target (нужен порталам). Создаётся ~/.ssh/sockets.

Не ставится без --full: Chrome, Telegram, Remmina, клиент Nextcloud (Flatpak), KeePassXC, OCR (tesseract), скриншоты (grim, slurp), пипетка, сетевой редактор с кнопкой в панели (плагин networkEditor). Бинды на эти программы остаются в конфиге и просто ничего не делают. Alt+W в SSH-меню открывает сайт хоста в браузере по умолчанию, если Chrome (Flatpak) не установлен.

Сам ~/.ssh/config и ключи в репозиторий не входят, их нужно перенести самому: меню читает ваш конфиг.

Существующие конфиги не затираются: они переносятся в *.bak-<время>, повторный запуск безопасен. --yes отключает вопросы, --no-packages и --no-config пропускают этапы. После установки выйдите из сессии и выберите в GDM Hyprland (не hyprland-uwsm). COPR — сторонние репозитории, пакеты в них никем не проверяются.

Вручную (без скрипта)

sudo dnf copr enable sachesi/hyprland avengemedia/dms
sudo dnf install hyprland hyprlock hypridle hyprpaper hyprpicker hyprland-guiutils hyprpolkitagent \
    xdg-desktop-portal-hyprland xdg-desktop-portal-gtk dms
cp -r hypr ~/.config/
mkdir -p ~/.config/dms/plugins ~/.config/systemd/user
cp -r dms/plugins/networkEditor ~/.config/dms/plugins/
cp systemd/user/hyprland-session.target ~/.config/systemd/user/
systemctl --user daemon-reload

Полный список пакетов-инструментов см. в начале install.sh. Плагин networkEditor включите в настройках DMS (Plugins) или создайте ~/.config/dms/plugin_settings.json с {"networkEditor": {"enabled": true}} и выполните dms restart.

Под себя

  • В hypr/hyprland.lua имена мониторов (eDP-1, HDMI-A-1) и масштаб 1.25 — под конкретный ноутбук.
  • Раскладка (us,ru, переключение Alt+Shift), чувствительность тачпада и мыши — там же, в блоке input.
  • Блокировку экрана делает DMS через hypr/scripts/lock.sh (если DMS не запущен, запасной вариант — hyprlock).

Обновление репозитория

./sync.sh && git add -A && git commit -m "…" && git push