Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 18886 - Ximperconf: метаинформация к модулям Hyprland   Make a simular bug
Summary: Ximperconf: метаинформация к модулям Hyprland
Status: CLOSED FIXED
Alias: None
Product: Ximper Linux
Classification: Продукты (Products)
Component: Общее (show other bugs)
Version: не указана
Hardware: PC Linux
: P4 minor
Target Milestone: ---
Assignee: Кирилл Уницаев
QA Contact: Кирилл Уницаев
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 18853
  Show dependency treegraph
 
In work:
Reported: 2026-02-14 12:53 MSK by Кирилл Уницаев
Modified: 2026-02-14 15:57 MSK (History)
0 users

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Кирилл Уницаев 2026-02-14 12:53:16 MSK
нужно добавить метаинформацию к модулям Hyprland, и придумать как её хранить
Comment 1 Кирилл Уницаев 2026-02-14 15:56:22 MSK
Реализацию начал чуть раньше чем создал багу, время может не совпадать!

https://gitlab.eterfund.ru/ximperlinux/ximperconf/commit/19c74f3439576c83e4403bd56b458cd45130a1de - добавлен сам механизм метадаты, указывается в начале файла модуля, так:

#---
# summary: Правила окон/слоёв 
# description: |
#   Модуль настройки пользовательских правил
#   окон и слоёв
#---

Summary и description отображаются в командах show и info, по ним можно просто определить назначение модуля.

Group используется для связи нескольких замещающих друг друга модулей, при включении одного модуля из группы будут отключаться другие.

https://gitlab.eterfund.ru/ximperlinux/ximperconf/commit/5520a33c185d0f336341d58e922469904e4d5fac - В метадату добавлено поле Order, от него зависит положение модуля в конфиге 

чем больше значение, тем выше модуль
Однако, модули делятся на системные и пользовательские, у них не связаны order, пользовательские всегда ниже.

https://gitlab.eterfund.ru/ximperlinux/ximperconf/commit/b3fa78cf6eed8519b0f8fb4e75a5273f9d0cc68e - Добавил команду hyprland fix, она сортирует строки в конфиге на основе метадаты модулей и расставляет их в правильном порядке.

#---------- ПЕРЕМЕННЫЕ ---- VARS
$kb_layout = us,ru
$mainMod = SUPER
..


#---------- СИСТЕМНЫЕ МОДУЛИ ---- SYSTEM MODULES
source = /etc/ximperdistro/hyprland/hypr/env.conf
source = /etc/ximperdistro/hyprland/hypr/rules.conf
...


#---------- ПОЛЬЗОВАТЕЛЬСКИЕ МОДУЛИ ---- USER MODULES
source = ~/.config/hypr/panel-ashell.conf
source = ~/.config/hypr/user-autostart.conf

и пример модуля:
#---
# summary: Правила окон/слоёв 
# description: |
#   Модуль настройки пользовательских правил
#   окон и слоёв
# group: rules
# order: 2
#---

windowrule {
  name = windowrule-1
  float = on
  center = on
  size = 850 620
  match:class = kitty
  match:title = kitty
}
Comment 2 Кирилл Уницаев 2026-02-14 15:57:13 MSK
Сама метаинформация готова, расширять можно

задачу считаю выполненной
Comment 3 Кирилл Уницаев 2026-02-14 15:57:38 MSK
Сразу закрываю багу