Bug 45886 - [2.3] join guschin@
Summary: [2.3] join guschin@
Status: ASSIGNED
Alias: None
Product: Team Accounts
Classification: Development
Component: join (show other bugs)
Version: unspecified
Hardware: all Linux
: P5 normal
Assignee: Andrew Guschin
QA Contact: Andrey Cherepanov
URL: https://altlinux.org/Team/Join
Keywords:
Depends on:
Blocks:
 
Reported: 2023-04-17 14:07 MSK by Andrew Guschin
Modified: 2024-04-03 17:09 MSK (History)
11 users (show)

See Also:


Attachments
GPG ключ (3.01 KB, text/plain)
2023-05-02 14:37 MSK, Andrew Guschin
no flags Details
SSH ключ (740 bytes, text/plain)
2023-05-02 14:37 MSK, Andrew Guschin
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Guschin 2023-04-17 14:07:13 MSK
Псевдоним       : guschin
Почта           : Andrew Guschin <guschin@altlinux.org>
Пересылка почты : guschin.drew@gmail.com
Имя ментора     : Игорь Чудов
Почта ментора   : nir@altlinux.org
Моя цель        : Научиться собирать пакеты
Comment 1 Vitaly Lipatov 2023-04-29 10:24:17 MSK
Игорь, подтвердите, пожалуйста, что вы согласны на менторство.
Comment 2 Gleb F-Malinovskiy 2023-05-02 13:35:33 MSK
Эта заявка недооформлена.
Можете переоткрыть баг когда решите её оформить.
Comment 3 Andrew Guschin 2023-05-02 14:37:22 MSK
Created attachment 13071 [details]
GPG ключ
Comment 4 Andrew Guschin 2023-05-02 14:37:50 MSK
Created attachment 13072 [details]
SSH ключ
Comment 5 Andrew Guschin 2023-05-02 14:41:27 MSK
Прикрепил свои SSH и GPG ключи.
Comment 6 Igor Chudov 2023-05-02 14:44:32 MSK
Добрый день.

Подтверждаю согласие на менторство.

(Ответ для Vitaly Lipatov на комментарий #1)
> Игорь, подтвердите, пожалуйста, что вы согласны на менторство.
Comment 7 Igor Chudov 2023-05-02 14:53:02 MSK
Было вынесено предложение собрать Digital Speech Decoder:

https://github.com/szechyjs/dsd
Comment 8 Igor Chudov 2023-05-02 15:03:21 MSK
Коллеги сообщили, что DSD уже есть в Sisyphus, потому есть предложение рассмотреть vosk-api:

https://github.com/alphacep/vosk-api
Comment 9 Andrew Guschin 2023-05-17 17:59:11 MSK
В рамках работы над опакечиванием vosk-api понадобилось также опакетить библиотеки kaldi и openfst. Опакечивание openfst сейчас ведётся в https://github.com/vasthecat/openfst/tree/alt-package. Сам пакет пока не собирается, пытаюсь выяснить причины проблем. Остальные две библиотеки будут добавлены когда получится опакетить openfst.
Comment 10 Andrew Guschin 2023-05-22 11:49:40 MSK
Добавлены spec-файлы для vosk-api и kaldi
- https://github.com/vasthecat/vosk-api/tree/alt-package
- https://github.com/vasthecat/libkaldi-vosk/tree/alt-package
Comment 11 Gleb F-Malinovskiy 2023-05-26 11:47:59 MSK
(In reply to Andrew Guschin from comment #3)
> Created attachment 13071 [details]
> GPG ключ
Ok.

(In reply to Andrew Guschin from comment #4)
> Created attachment 13072 [details]
> SSH ключ
Ok.
Comment 12 Andrew Guschin 2023-06-02 11:15:49 MSK
Добрый день.

Закончил работу над пакетированием:
- https://github.com/vasthecat/openfst
- https://github.com/vasthecat/libkaldi-vosk
- https://github.com/vasthecat/vosk-api
Comment 13 Igor Chudov 2023-06-05 14:18:43 MSK
Ключи посмотрел, вопросов не вызвало. Прошу создать почтовый псевдоним и зарегистрировать кандидата на соответствующих ресурсах.
Comment 14 Gleb F-Malinovskiy 2023-06-08 18:17:11 MSK
ssh ключ на gitery.alt зарегистрирован.
Адрес для пересылки создан.     

T/J/S -> 2.3.
Comment 15 Andrew Guschin 2023-07-03 18:58:54 MSK
Переработал пакеты по совету прошлого ментора. Пакет libkaldi-vosk убран, так как не имеет особого смысла добавлять его в сизиф (для vosk-api нужен вариант из их форка с определённой ветки, upstream не подходит). В самом vosk-api добавлена сборка биндинга для python, для этого понадобился новый пакет python3-module-srt. libkaldi лежит исходниками в архиве внутри репозитория.

- https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary
- https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary
- https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary

Также хотел бы добавить пакет kernel-image-mcom03-def, но сейчас не хватает квоты.
Comment 16 Andrew Guschin 2023-07-20 14:39:41 MSK
Хотел бы добавить также пакет с новым flavour ядра mcom03-def. Лежит в репозитории [1] в соответствующей ветке.

Как я понимаю, ментору на этом этапе нужно дать какие-то комментарии по собранным пакетам. nir@, вы всё ещё можете посмотреть это или мне лучше сменить ментора?

[1]: https://git.altlinux.org/people/guschin/packages/?p=kernel-image-std-def.git;a=shortlog;h=mcom03-def
Comment 17 Andrew Guschin 2023-08-15 15:49:28 MSK
Добрый день. Хотел бы изменить ментора на Ивана Мельникова iv@.
Comment 18 Gleb F-Malinovskiy 2023-11-08 19:51:15 MSK
(In reply to Andrew Guschin from comment #17)
> Добрый день. Хотел бы изменить ментора на Ивана Мельникова iv@.
Тут нет никакой проблемы, но новый ментор должен явно на это согласиться.
Comment 19 Ivan A. Melnikov 2023-11-15 15:29:08 MSK
(In reply to Andrew Guschin from comment #17)
> Добрый день. Хотел бы изменить ментора на Ивана Мельникова iv@.

Я не против, я просто медленный. Андрей, извини.

Да, я согласен быть ментором Андрея, мы об этом договаривались.
Comment 20 Ivan A. Melnikov 2023-11-15 15:46:16 MSK
(In reply to Andrew Guschin from comment #16)
> https://git.altlinux.org/people/guschin/packages/?p=kernel-image-std-def.git;
> a=shortlog;h=mcom03-def

На первый взгляд спек вызывает не больше отторжения, чем любые другие виденные мной спеки ядер. Однако было бы правильно указать в changelog'е, на основе чего сделан спек -- во-первых, из уважения к автору оригинала, а во-вторых -- чтобы можно было понять, что именно сделано.

Также я бы всё-таки почистил некотороые мелочи, даже если они "унаследованны"
- epoch с маленькой буквы это нехорошо
- есть мусор вроде kernel_base_version или def_disable oss, который, мне кажется, не стоит сохранять.
Comment 21 Ivan A. Melnikov 2023-11-15 15:59:22 MSK
> https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary

Я бы всё-таки сделал gear-tag и собирал из него.

Также рекомендуется summary покороче и description поразвёрнутее.
Comment 22 Ivan A. Melnikov 2023-11-15 16:14:13 MSK
> https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary

Я бы всё-таки сделал gear-tag и собирал из него.

Summary, опять же, можно и покороче.

К патчам, если они хранятся отдельно, стоит относится как к коммитам: делать одним патчем одно, давать им нормальное описание, следовать рекомендациям по их именованию
(https://www.altlinux.org/ALT_Packaging_HOWTO#Наименование_патчей).

> +BuildRequires: libclapack-devel

Правда что ли?

> +Requires: libfst
> +Requires: liblapack
> +Requires: libopenblas
> +Requires: libxblas

Если эти зависимости находятся автоматически, такие Requires не нужны.

Если эти зависимости не находятся автоматически, нужен комментарий, в котором будет сказано, почему они не находятся автоматически. Также, возможно, их стоит делать более точными (по soname или имени библиотеки).

А ешё -- openblas и xblas в одном флаконе. Зачем?

> Requires: %name python3(srt) python3(websockets) python3(tqdm)

То же самое. Почему AutoReq этого не находит?
Comment 23 Ivan A. Melnikov 2023-11-15 16:30:29 MSK
> https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary

Я не против сборки из тарбола (я пока не смотрел, есть ли у апстрима публичная VCS, но даже если есть, "мне так удобнее" это достойный аргумент).

Однако при этом есть определённые конвенции: тарбол кладётся в подкаталог, чтобы потом можно было использовать gear-update  при обновлении. Спек и патчи тогда можно класть в корень репозитория, а не прятать в .gear.

> +%files -n %lname
> +%_libdir/libfst*
> +%_libdir/fst/*.la
> +%_libdir/fst/*.so

*.la нужны для работы, или это всё-таки в -devel?

%_libdir/libfst* все нужны для работы, или что-то их можно положить в -devel?


> +%files -n %lname-devel
Почему не запакован каталог %_includedir/fst? Зачем перечислять все файлы?
Comment 24 Ivan A. Melnikov 2023-11-15 16:34:17 MSK
> https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary
> %set_verify_elf_method rpath=relaxed

Может это всё-таки можно нормально починить?
Comment 26 Ivan A. Melnikov 2024-04-01 11:23:21 MSK
> https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary

Я наконец рассмотрел, что происходит с тарболом kadi. Паковать его в общий тарбол а потом брать из .gear -- это нехорошо. Всё-таки лучше бы

- не класть .gear в тарбол vosk-api (exclude=.gear/**, а лучше собирать из gear-тега)
- сделать для kadi отдельный Source.

По мелочам:
- URL нужен, можно такой же или вместо VCS
- я не увидел, зачем нужен patchelf. он правда нужен?
- не думаю, что править .gitignore -- хорошая идея; если всё-таки править, то отдельным коммитом, так как это изменение не относится к сборке пакета.
Comment 27 Ivan A. Melnikov 2024-04-01 11:34:57 MSK
> https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary

Можно подробнее, что там не так с gear-тегом и pytest'ом?
Comment 28 Grigory Ustinov 2024-04-01 12:26:39 MSK
(Ответ для Ivan A. Melnikov на комментарий #27)
> > https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary
> 
> Можно подробнее, что там не так с gear-тегом и pytest'ом?

Кандидат видимо не осилил:
sed -i 's/ -n auto//' tox.ini
Ну а если без издёвки, то не обязательно пользоваться токсовым макросом, можно было бы запустить тесты например через %pyproject_run_pytest ну или даже просто через py.test-3. Хочу так же обратить внимание, что pytest является далеко не единственным способом тестировать питоновские модули. Разные апстримы могут это делать по-разному. Но как бы то ни было, такая мелочь не является основанием для отключения тестов.
Comment 29 Ivan A. Melnikov 2024-04-01 12:31:50 MSK
>  https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary

Очень странно распределены файлы между libfst и libfst-devel. Андрей, давай разбираться, что это за файлы и зачем они нужны.
Comment 30 Ivan A. Melnikov 2024-04-03 17:09:11 MSK
> - https://git.altlinux.org/people/guschin/packages/?p=kernel-image-std-def.git;a=tree;h=refs/heads/mcom03-def;hb=mcom03-def

В целом нормально скопированный спек. Я не против сборки ядер из коммита безо всяких kernel-source-x.y, хотя и рекомендовал бы организовать генерацию diff'ов 5.10..5.10.y и 5.10.y..HEAD например.

Непонятно, зачем нужны закомментированные строки в .gear/rules.

arch/arm64/configs/defconfig не кажется мне хорошим источником для конфига под конкретную плату;  к теме именно пакетирования это, конечно, не относится, но всё-таки я бы предложил пересмотреть состав конфига этого ядра.