Решения владельца: Qt, OneNote, права на собственный код
2026-10-04 · что нужно решить, почему, какие есть варианты, сколько стоит каждый и что я рекомендую. Основание:
docs/11-open-source-reuse.md,docs/12-license-policy.md, отчётыdocs/research/, официальные страницы Qt (FAQ по лицензиям и обязательства LGPL, проверено 2026-10-04). Это инженерная записка, не юридическое заключение: перед выпуском 1.0 все три пункта стоит показать юристу.
Принятые решения (2026-10-04)
| № | Решение владельца |
|---|---|
| 1 | Qt: целевой вариант — коммерческая лицензия; в фазе 0 запросить предложение Qt; до покупки — только прототипы без распространения. Заменено 2026-10-04 решением № 4 |
| 2 | OneNote: библиотеку под MPL не берём — своя реализация по спецификации (решение «полностью свой код») |
| 3 | Правообладатель — Орос Алексей Михайлович, ИП Орос А.М.; заявление о
правах заполнено; незакоммиченный код PasswordSafe сохранён в ветке
wip/snapshot-2026-10-04 |
| 4 | Своя оболочка без Qt (2026-10-04, слова владельца:
«Нам нужно сделать такую же оболочку и использовать свою оболочку»;
библия § 12, решение № 39). Интерфейс — собственный набор компонентов
ui/meridian-ui на Rust; Qt не покупаем и не используем по
LGPL; запрос в Qt Sales (docs/legal/qt-quote-request.md) не
отправляем. Прототип своей оболочки сделан в тот же день: вид и
поведение как у Qt-прототипа (SSIM 0.97–0.996), 39 тестов, кадр 8,7 мс,
Linux и macOS — docs/research/own-shell.md, страница «Своя
оболочка» |
| 41 | Переименование в «MOffice» (2026-10-04, слова
владельца: «Да, я даю разрешение на всё, продолжай, переименуй на
MOffice, делай»): этап 1 — видимые имена во всех документах, макетах,
интерфейсе и на сайтах; этап 2 (крейты, C ABI, URN, MIME, префикс ключей
MRDN-, домены) — по отдельному слову. Библия §1, §5.1, §12
| | 42 | Разрешено управлять Microsoft Word на Mac владельца для
эталонных рендеров корпуса (сессия A) | | 43 | Разрешены шрифты с
разрешительными лицензиями по списку библии §4 в комплекте (файлы — A,
записи в third_party.toml — B) | | 44 | Этап 2
переименования (2026-10-04, ответ владельца «MOffice» на вопрос
«делать этап 2?», подтверждено сессии B напрямую): ключи
MOFC-, URN urn:moffice:<app>:1, MIME
application/vnd.moffice.<app>, домены
moffice.24oros.ru/moffice-api.24oros.ru
(старые работают), пути данных «MOffice»; крейты, C ABI, репозиторий —
кодовое имя meridian. Библия §12 |
Ниже — исходный разбор, на основании которого приняты решения.
Сводка
| № | Решение | Срок | Рекомендация | Цена ошибки |
|---|---|---|---|---|
| 1 | Как лицензировать Qt 6 | до начала фазы 1 (код оболочки) | получить коммерческое предложение Qt в фазе 0; если на команду оболочки выходит ≤ 50 тыс. USD в год — покупать коммерческую до фазы 1; иначе работать по LGPL по чек-листу | переход с LGPL на коммерческую позже возможен только по договорённости с Qt и может стоить дороже |
| 2 | Разрешить ли библиотеку OneNote под MPL-2.0 | до фазы 5 (Notes) | разрешить как неизменяемую зависимость | без разрешения — 4–7 чел.-мес. своей работы |
| 3 | Права на код FlyType, ScreenPrompt, PasswordSafe, AXEL | до переноса их кода в MOffice (фаза 0–1) | подписать заявление о правах (шаблон —
docs/legal/code-rights-statement.md); если продавать будет
компания — договор об отчуждении прав на неё; зафиксировать
незакоммиченный код |
спор о правах или невозможность доказать авторство при продаже/инвестиции |
1. Лицензия Qt 6
Итог (2026-10-04): Qt не используем — своя оболочка (решение № 4 выше, библия № 39). Разбор ниже сохранён как обоснование: коммерческая Qt в РФ, скорее всего, недоступна, а LGPL противоречит решению «полностью свой код».
Что это и почему важно
Qt — библиотека, на которой построен весь интерфейс MOffice на всех трёх ОС (окна, лента, диалоги, ввод, печать, доступность). Ядро на Rust от Qt не зависит. Qt распространяется в трёх вариантах: GPL (для нас запрещён), LGPLv3 (бесплатно, с обязательствами) и коммерческая лицензия (платно, без обязательств). Часть модулей Qt доступна только под GPL или коммерческой лицензией: Qt Charts, Qt Graphs, Qt Data Visualization, Qt Virtual Keyboard, Qt Quick 3D, Qt Lottie, Qt Network Authorization, Qt Quick Compiler (qmlsc) и другие. Мы их и так не используем: диаграммы, вход OAuth и прочее пишем сами.
Вариант А. LGPLv3 (бесплатно)
Что обязаны делать (по официальной странице Qt об обязательствах LGPL):
- Только динамическая линковка: Qt поставляется отдельными DLL/dylib/so. При статической сборке наше приложение само попадает под LGPL — это запрещено.
- Пользователь должен иметь возможность заменить библиотеки Qt своей версией и запустить программу. Наш EULA не может запрещать это, включая обратную разработку в той мере, в какой она нужна для замены Qt.
- Отдать исходники используемой Qt (вместе с нашими правками Qt, если они будут) — архивом на сайте или письменным предложением.
- Показать текст LGPL пользователю — в окне «О программе → Лицензии открытого ПО» (макет OS-02).
- Правки в самой Qt публикуем (правила MPL/LGPL распространяются только на код Qt, не на наш).
- Не использовать модули только под GPL.
Ограничения на практике:
- нельзя статически собрать один исполняемый файл — установщик чуть больше, запуск на 5–10 % медленнее;
- без qmlsc QML компилируется слабее (qmlcachegen доступен) — интерфейс чуть медленнее на слабых машинах;
- Mac App Store и Microsoft Store: подпись пакета мешает пользователю заменить Qt — для магазинных сборок LGPL рискован (магазины у нас — фаза 7, основной канал — прямая загрузка);
- нет официальной поддержки Qt Company.
Стоимость: 0 ₽ лицензий; ≈1–2 чел.-мес. на соблюдение (сборка с отдельными библиотеками, архив исходников, проверка в CI).
Вариант Б. Коммерческая лицензия Qt
- Никаких обязательств LGPL: можно статически линковать, использовать все модули, qmlsc, публиковать в магазинах.
- Официальная поддержка, исправления, долгосрочные версии.
- Цена (ориентир по открытым источникам, точная — только по запросу у Qt): Qt for Application Development Professional ≈ 3 600 USD, Enterprise ≈ 3 950 USD за разработчика в год. Тариф Small Business (≈ 550–620 в год) нам не подходит: максимум 3 места и выручка компании до 1 млн €.
- Лицензия нужна разработчикам, которые работают с Qt. У нас Qt изолирован в оболочке: если Qt согласится считать только команду оболочки (8–12 человек), это ≈ 30–45 тыс. USD в год; если всех инженеров (до 40) — ≈ 145 тыс. USD в год. За 4 года плана — от ≈ 0,12 до ≈ 0,6 млн USD.
- Важное условие Qt: в FAQ сказано, что проекты, которые распространяются с коммерческой Qt, должны и разрабатываться на коммерческой Qt; если разработка начата на открытой версии, переход согласуется с Qt отдельно. Поэтому решение нужно принять до начала фазы 1, пока не написан код оболочки.
Вариант В. Начать на LGPL, решить позже
Работает технически (мы не используем GPL-модули и линкуем динамически), но переход потребует переговоров с Qt и может обойтись дороже. Допустим только на прототипах фазы 0, которые никому не распространяются.
Рекомендация
- В фазе 0 (январь–апрель 2027) прототипы оболочки делать на LGPL — их никому не распространяем, обязательств нет.
- До конца фазы 0 запросить у Qt коммерческое предложение с явным вопросом: «лицензии только на команду оболочки, ядро на Rust без Qt».
- Если выходит ≤ 50 тыс. USD в год — покупать коммерческую до старта фазы 1: это снимает все ограничения, включая магазины приложений.
- Если дороже — остаёмся на LGPL с чек-листом выше (≈ 1–2 чел.-мес. на соблюдение), магазинные сборки переносим на потом.
Что нужно от вас сейчас: согласие на этот порядок (прототипы на LGPL, запрос цены у Qt в фазе 0).
2.
Библиотека OneNote (onenote_parser, лицензия MPL-2.0)
Что это и зачем
MOffice Notes должен импортировать записные книжки OneNote — это
главный путь миграции пользователей Microsoft. Готовая библиотека
onenote_parser (проект onenote.rs, Rust, ≈ 18,8 тыс. строк,
версия 2.0, последнее обновление август 2026) читает файлы
.one и .onetoc2, в том числе книжки из
OneDrive, с текстом, таблицами, картинками, вложениями, рукописными
штрихами и формулами. Записывать формат OneNote она не умеет — нам это и
не нужно, только импорт. Архив .onepkg распаковываем
отдельным крейтом cab (MIT).
Что значит MPL-2.0 для нас
MPL — «копилефт на уровне файла»:
- можно встроить библиотеку в закрытый продукт, наш код остаётся закрытым и под нашей лицензией;
- в «О программе» указываем библиотеку, её лицензию и где взять её исходники (ссылка на версию);
- если меняем файлы самой библиотеки — публикуем изменённые файлы (только их); если не меняем — ничего публиковать не нужно. По нашей политике это класс 2: допускается только с вашего разрешения.
Варианты
| Вариант | Работа | Риски |
|---|---|---|
| А. Разрешить как неизменяемую зависимость | ≈ 1 чел.-мес. на встраивание (песочный процесс кодеков, тесты на корпусе) | если понадобится правка — публикуем правку этого файла или отправляем её автору; одна строка в «О программе» |
| Б. Своя реализация по спецификации Microsoft [MS-ONESTORE]/[MS-ONE] | 4–7 чел.-мес. (11–15 тыс. строк; чернила и формулы — по реверсу) | дольше; ошибки совместимости на редких файлах |
| В. Импорт облачных книжек через Microsoft Graph | ≈ 2 чел.-мес. | только онлайн и с аккаунтом Microsoft; теряются штрихи и раскладка страницы; нужна регистрация приложения в Microsoft |
Рекомендация
Вариант А: разрешить onenote_parser без
изменений, в отдельном процессе кодеков, с зафиксированной
версией и зеркалом на repoBase (meridian-oss/onenote-rs уже
создано). Экономия ≈ 4–6 чел.-мес. Если позже понадобятся правки —
оформлять их как вклад автору проекта. Решение нужно к фазе 5 (2029 г.),
но лучше принять сейчас — от него зависит план эпика «Кодеки PIM».
Что нужно от вас: «да» или «нет».
3. Права на ваш собственный код
Почему это вопрос
Мы собираемся перенести в MOffice части ваших проектов: шифрование и синхронизацию из PasswordSafe, захват экрана из ScreenPrompt, диктовку и сервер аккаунтов из FlyType, инструменты формул и OCR из Formulник/AXEL. Код ваш — все коммиты, сделанные людьми, идут от ваших учётных записей. Но есть три формальности, которые всплывают при продаже продукта, привлечении инвестиций или споре:
- В файлах LICENSE правообладатель записан условно («FlyType», «ScreenPrompt contributors») — неясно, кто именно владелец.
- Большая часть кода написана с помощью ИИ-инструментов (в истории FlyType ≈ 1 735 коммитов с отметкой Cursor, в AXEL ≈ 224 с отметкой Claude). По условиям этих сервисов права на результат принадлежат пользователю, но в российском праве автором может быть только человек — поэтому полезно письменно зафиксировать, что код создан вами с использованием инструментов и что права на него принадлежат вам.
- Часть кода не зафиксирована в git — в PasswordSafe это ≈ 27 % кода на Rust. Без коммита нет датированного доказательства авторства, а сам код можно потерять.
Что сделать
- Подписать заявление о правах — шаблон:
docs/legal/code-rights-statement.md. В нём: перечень репозиториев, подтверждение авторства, роль ИИ-инструментов как инструментов, отсутствие сторонних соавторов, перечень сторонних компонентов внутри (они остаются под своими лицензиями). - Решить, кто будет правообладателем MOffice:
- если продавать будете вы как физлицо или ИП — заявления достаточно;
- если будет компания (ООО) — нужен договор об отчуждении исключительного права (или лицензионный договор) от вас компании на код этих проектов и на сам MOffice. Без этого компания не владеет кодом.
- Зафиксировать незакоммиченный код в PasswordSafe (и
проверить остальные проекты):
затем коммит и отправка в ваш репозиторий. Могу сделать это сам по вашей команде.
cd ~/Mac1amoros/PasswordSafe && git status --short | head -50 - По желанию — государственная регистрация программ для ЭВМ в Роспатенте (добровольная; даёт официальное доказательство авторства и даты) — для MOffice имеет смысл после первого выпуска.
- Не переносить из ваших проектов чужое: запись через FFmpeg с libx264 (GPL) в ScreenPrompt, веса Silero (некоммерческие) и edge-tts (LGPL) в FlyType, процесс LibreOffice в AXEL — остаются в своих проектах.
Что нужно от вас: (а) кто правообладатель MOffice — вы лично или компания; (б) подписать заявление; (в) команда «закоммить PasswordSafe» или сделаете сами.
Остальные решения из отчёта (можно принять по умолчанию)
| Вопрос | Рекомендация по умолчанию |
|---|---|
| Словари под MPL/LGPL (fr, uk, es, pt, da, el, kk, sv, be) | не встраивать; загрузка пользователем из первоисточника |
| База автонастройки почты ISPDB (MPL) | не встраивать; запрос к публичному сервису только с согласия пользователя |
| GStreamer на Linux (LGPL) | разрешить как системную библиотеку |
| HEIC и RAW | декодеры ОС на Windows и macOS; на Linux — необязательная системная библиотека |
| Шрифт Intos (клон Aptos, OFL) | включить после юридической проверки |
| Тестовые серверы Stalwart и Dovecot (AGPL) | разрешить только как внешние контейнеры в CI |