Добавить в корзинуПозвонить
Найти в Дзене
PLAFON

~ Обновление ALT Booster v5.0-alpha

~ Обновление ALT Booster v5.0-alpha - Переход на модульную систему json - Возможность редактировать список устанавливаемых приложений - Возможность добавлять кастомные скрипты для установки приложений с GitHub # Release v5.0-alpha: Глобальный Data-Driven UI Рефакторинг Масштабное архитектурное обновление в истории ALT Booster. Полностью переработана логика построения пользовательского интерфейса. Теперь большая часть вкладок генерируется динамически на основе JSON-файлов, что делает утилиту невероятно гибкой, модульной и легкой для добавления новых функций. Статистика рефакторинга: `+2640 добавлено`, `-2239 удалено`. Основной файл `ui.py` похудел более чем на 1300 строк! Новая архитектура (Data-Driven UI) Новый универсальный движок `dynamic_page.py`: Добавлен парсер, который на лету читает JSON-схемы и превращает их в нативные компоненты GTK4 / libadwaita. * **JSON-модули**: Хардкод вырезан. Теперь настройки и списки хранятся в удобном декларативном виде в папке `src/modules/`: *

В ответ на пост

~ Обновление ALT Booster v5.0-alpha

- Переход на модульную систему json

- Возможность редактировать список устанавливаемых приложений

- Возможность добавлять кастомные скрипты для установки приложений с GitHub

# Release v5.0-alpha: Глобальный Data-Driven UI Рефакторинг

Масштабное архитектурное обновление в истории ALT Booster. Полностью переработана логика построения пользовательского интерфейса. Теперь большая часть вкладок генерируется динамически на основе JSON-файлов, что делает утилиту невероятно гибкой, модульной и легкой для добавления новых функций.

Статистика рефакторинга: `+2640 добавлено`, `-2239 удалено`. Основной файл `ui.py` похудел более чем на 1300 строк!

Новая архитектура (Data-Driven UI)

Новый универсальный движок `dynamic_page.py`: Добавлен парсер, который на лету читает JSON-схемы и превращает их в нативные компоненты GTK4 / libadwaita.

* **JSON-модули**: Хардкод вырезан. Теперь настройки и списки хранятся в удобном декларативном виде в папке `src/modules/`:

* `appearance.json` — настройки тем, иконок и цветов папок.

* `terminal.json` — конфигурация Ptyxis, ZSH, шорткатов и алиасов.

* `amd.json` — разгон, управление LACT и выбор конфигурационных файлов.

* `apps.json` — огромный каталог приложений, разбитый по категориям.

* `maintenance.json` — системные задачи обслуживания (APT, Flatpak, Btrfs, TRIM).

## Новые функции

* **Встроенный редактор приложений (CRUD)**: Вкладка «Приложения» теперь поддерживает добавление, редактирование и удаление программ прямо из интерфейса через новое окно `AppEditDialog`. Все изменения моментально сохраняются в `apps.json` и сразу отображаются в UI.

* **Мульти-источники для установки**: Приложения теперь могут иметь несколько источников установки (например, `Flathub` и системный `EPM`). Если их несколько, в интерфейсе автоматически появляется аккуратный выпадающий список для выбора.

* **Поддержка сложных кастомных скриптов**: Добавлен новый тип установки `custom`, позволяющий запускать многострочные bash-скрипты (например, для компиляции утилит с GitHub или сложной установки драйверов принтеров).

* **Фоновый поллинг статусов (`run_check`)**: Индикаторы (зеленые галочки) теперь обновляются в реальном времени. Движок умеет проверять статус через `rpm`, `flatpak`, `which`, `path`, `systemd`, `gsettings` и внутренние функции Python.

## Под капотом (Under the Hood)

* **ActionDispatcher**: Новый маршрутизатор действий, который корректно распределяет команды (выполнение с правами root через sudo, запуск epm, shell-команды, изменение gsettings, открытие ссылок). Все тяжелые задачи выполняются в отдельных потоках, чтобы интерфейс не зависал.

* **RowFactory**: Фабрика виджетов, поддерживающая различные типы строк:

* `command_row` — классическая кнопка выполнения.

* `dropdown_row` — выбор опции из списка.

* `file_row` — диалог выбора файла (например, для конфигов LACT).

* **BUILTIN_REGISTRY**: Изолированный реестр из 22 уникальных Python-функций для сложной логики (применение тем, парсинг dconf, махинации с GRUB), которые вызываются прямо из JSON.

## Очистка и удаление

* **Очищен `config.py`**: Файл конфигурации избавлен от гигантских словарей `APPS` и `TASKS`. Теперь он отвечает исключительно за пути, конфигурацию сессии и базовые системные проверки (DaVinci, Btrfs).

* **Удалено дублирование кода**: Десятки повторяющихся классов кнопок и проверок из `ui.py` заменены универсальной логикой нового движка.

---

*Примечание: Это альфа-версия нового движка. Структура JSON-файлов может быть незначительно изменена в будущих обновлениях.*

https://github.com/plafonlinux/altbooster/releases/tag/v5.1-alpha

-2