Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
R
ready-set-service
  • Project
    • Project
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 1
    • Merge Requests 1
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Registry
    • Registry
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Ximper Linux
  • ready-set-service
  • Merge Requests
  • !1

Open
Opened Jan 15, 2026 by Жора Змейкин@katze 2 of 6 tasks completed2/6 tasks
  • Report abuse
Report abuse

WIP: Перенос на Weston

Этот MR переносит запуск ReadySet с оконного менеджера Cage на Weston. Преимущества:

  • Нормальная работа с разными мониторами
  • Хорошая поддержка разного оборудования (включая виртуальные машины, встройки). На Cage система могла намертво на программной отрисовке.
  • Возможность сменить раскладку
  • Поддержка глобального масштабирования (в работе...)

Weston запускается с kiosk-shell. Xwayland включен, а ReadySet временно запускается с GDK_BACKEND=x11. Это обход ошибки Weston, из-за которой GTK-приложение после ввода текста визуальный курсор и его хитбокс рассинхронились. После появления исправленной версии Weston можно будет повторно проверить нативный Wayland: https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/2147

Запуск сервиса

По умолчанию ReadySet теперь работает от отдельного системного пользователя ready-set, а не от root. Для него задаются отдельные:

  • HOME и рабочий каталог в /var/lib/ready-set;
  • runtime-каталог в /run/ready-set-service;
  • ограничения systemd на доступ к файловой системе, сети и системным ресурсам.

Это также предотвращает появление GTK-конфигурации в /root. При необходимости ReadySet по-прежнему можно запускать от root.

Конфигурация ReadySet создается перед запуском и явно задает используемые шаги: приветствие, выбор языка и создание пользователя. Необходимые плагины и компоненты Weston/Xwayland добавлены в зависимости пакета.

Завершение первоначальной настройки

Операции после выхода из ReadySet перенесены в привилегированный ExecStopPost. Сам интерфейс работает от сервисного пользователя, а требующие root операции выполняются отдельно.

Перед очисткой проверяется, что в системе действительно появился обычный пользователь. Если пользователь не был создан, очистка не выполняется и ReadySet перезапускается.

После успешного завершения выполняются следующие действия:

  1. systemd.unit=setup.target удаляется из /etc/sysconfig/grub2 и уже сгенерированной конфигурации GRUB.
  2. Удаляется /usr/share/wayland-sessions/weston.desktop, чтобы Weston не предлагался пользователю как обычная сессия.
  3. Запускается graphical.target и текущий Display Manager без дополнительной перезагрузки.
  4. Удаляются временные компоненты первоначальной настройки: Weston, ReadySet и ready-set-service.

Что осталось

  • Добавить поддержку глобального масштабирования, чтобы на дисплеях с большим разрешением не было мелковато (уже подготовил, пока тестирую)
  • Дождаться исправления смещения курсора в Weston
  • Дождаться исправленной версии Weston в Sisyphus.
  • Доработать changelog в спеке пакета (я сам пока не редактировал)
  • Принять данный PR в mkimage-profiles
  • Отключить из пакета установщика страницы настройки пользователя
Edited Jul 17, 2026 by Жора Змейкин

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

git fetch https://gitlab.eterfund.ru/katze/ready-set-service.git master
git checkout -b katze/ready-set-service-master FETCH_HEAD

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git checkout master
git merge --no-ff katze/ready-set-service-master

Step 4. Push the result of the merge to GitLab

git push origin master

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 1
  • Commits 2
  • Changes 7
{{ resolvedDiscussionCount }}/{{ discussionCount }} {{ resolvedCountText }} resolved
  • Жора Змейкин @katze commented · Feb 07, 2026
    Maintainer

    Провёл тестирование своего Merge Request с последней версией ready-set 0.3.1. Теперь не работает, ReadySet в целом не запускается, ибо ему нужна предварительная настройка. Займусь позже.

    (ready-set-ruler:4156): org.altlinux.ReadySet-ERROR **: 02:16:23.748: utils.vala:90: Failed to generate rules: Error opening directory '/usr/share/ready-set/rules.d': No such file or directory
    
    (ready-set:4064): org.altlinux.ReadySet-ERROR **: 02:16:23.748: application.vala:85: Failed to generate rules: Дочерний процесс убит по сигналу 5
    Провёл тестирование своего Merge Request с последней версией ready-set 0.3.1. Теперь не работает, ReadySet в целом не запускается, ибо ему нужна предварительная настройка. Займусь позже. ```shell (ready-set-ruler:4156): org.altlinux.ReadySet-ERROR **: 02:16:23.748: utils.vala:90: Failed to generate rules: Error opening directory '/usr/share/ready-set/rules.d': No such file or directory (ready-set:4064): org.altlinux.ReadySet-ERROR **: 02:16:23.748: application.vala:85: Failed to generate rules: Дочерний процесс убит по сигналу 5 ```
  • Жора Змейкин @katze

    added 1 commit

    • e163c54f - Rework the first-boot setup flow

    Compare with previous version

    · Jul 15, 2026

    added 1 commit

    • e163c54f - Rework the first-boot setup flow

    Compare with previous version

    added 1 commit <ul><li>e163c54f - Rework the first-boot setup flow</li></ul> [Compare with previous version](https://gitlab.eterfund.ru/ximperlinux/ready-set-service/merge_requests/1/diffs?diff_id=13459&start_sha=2f9d6218eba8e812a9259e3d98f5d65a12e3c6fb)
    Toggle commit list
  • Жора Змейкин @katze

    changed the description

    · Jul 15, 2026

    changed the description

    changed the description
    Toggle commit list
  • Жора Змейкин @katze

    changed the description

    · Jul 15, 2026

    changed the description

    changed the description
    Toggle commit list
  • Жора Змейкин @katze

    marked the task Дождаться исправления смещения курсора в Weston as completed

    · Jul 16, 2026

    marked the task Дождаться исправления смещения курсора в Weston as completed

    marked the task **Дождаться исправления [смещения курсора в Weston](https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/2147)** as completed
    Toggle commit list
  • Жора Змейкин @katze

    marked the task Принять данный PR в mkimage-profiles as completed

    · Jul 17, 2026

    marked the task Принять данный PR в mkimage-profiles as completed

    marked the task **Принять данный [PR](https://gitlab.eterfund.ru/ximperlinux/mkimage-profiles/merge_requests/9) в mkimage-profiles** as completed
    Toggle commit list
  • Write
  • Preview
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment
Жора Змейкин
Assignee
Жора Змейкин @katze
Assign to
None
Milestone
None
Assign milestone
Time tracking
0
Labels
None
Assign labels
  • View project labels
Reference: ximperlinux/ready-set-service!1