<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>45886</bug_id>
          
          <creation_ts>2023-04-17 14:07:13 +0300</creation_ts>
          <short_desc>[3.6] join guschin@</short_desc>
          <delta_ts>2025-08-26 15:17:13 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Team Accounts</product>
          <component>join</component>
          <version>unspecified</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc>https://altlinux.org/Team/Join</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrew Guschin">guschin.drew</reporter>
          <assigned_to name="Gleb F-Malinovskiy">glebfm</assigned_to>
          <cc>asheplyakov</cc>
    
    <cc>glebfm</cc>
    
    <cc>grenka</cc>
    
    <cc>guschin.drew</cc>
    
    <cc>iv</cc>
    
    <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>nir</cc>
    
    <cc>nir</cc>
    
    <cc>sin</cc>
    
    <cc>sova</cc>
          
          <qa_contact name="Andrey Cherepanov">cas</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>224604</commentid>
    <comment_count>0</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-04-17 14:07:13 +0300</bug_when>
    <thetext>Псевдоним       : guschin
Почта           : Andrew Guschin &lt;guschin@altlinux.org&gt;
Пересылка почты : guschin.drew@gmail.com
Имя ментора     : Игорь Чудов
Почта ментора   : nir@altlinux.org
Моя цель        : Научиться собирать пакеты</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225186</commentid>
    <comment_count>1</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2023-04-29 10:24:17 +0300</bug_when>
    <thetext>Игорь, подтвердите, пожалуйста, что вы согласны на менторство.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225261</commentid>
    <comment_count>2</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2023-05-02 13:35:33 +0300</bug_when>
    <thetext>Эта заявка недооформлена.
Можете переоткрыть баг когда решите её оформить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225275</commentid>
    <comment_count>3</comment_count>
      <attachid>13071</attachid>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-05-02 14:37:22 +0300</bug_when>
    <thetext>Created attachment 13071
GPG ключ</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225276</commentid>
    <comment_count>4</comment_count>
      <attachid>13072</attachid>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-05-02 14:37:50 +0300</bug_when>
    <thetext>Created attachment 13072
SSH ключ</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225277</commentid>
    <comment_count>5</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-05-02 14:41:27 +0300</bug_when>
    <thetext>Прикрепил свои SSH и GPG ключи.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225278</commentid>
    <comment_count>6</comment_count>
    <who name="Igor Chudov">nir</who>
    <bug_when>2023-05-02 14:44:32 +0300</bug_when>
    <thetext>Добрый день.

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

(Ответ для Vitaly Lipatov на комментарий #1)
&gt; Игорь, подтвердите, пожалуйста, что вы согласны на менторство.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225281</commentid>
    <comment_count>7</comment_count>
    <who name="Igor Chudov">nir</who>
    <bug_when>2023-05-02 14:53:02 +0300</bug_when>
    <thetext>Было вынесено предложение собрать Digital Speech Decoder:

https://github.com/szechyjs/dsd</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225286</commentid>
    <comment_count>8</comment_count>
    <who name="Igor Chudov">nir</who>
    <bug_when>2023-05-02 15:03:21 +0300</bug_when>
    <thetext>Коллеги сообщили, что DSD уже есть в Sisyphus, потому есть предложение рассмотреть vosk-api:

https://github.com/alphacep/vosk-api</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226013</commentid>
    <comment_count>9</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-05-17 17:59:11 +0300</bug_when>
    <thetext>В рамках работы над опакечиванием vosk-api понадобилось также опакетить библиотеки kaldi и openfst. Опакечивание openfst сейчас ведётся в https://github.com/vasthecat/openfst/tree/alt-package. Сам пакет пока не собирается, пытаюсь выяснить причины проблем. Остальные две библиотеки будут добавлены когда получится опакетить openfst.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226183</commentid>
    <comment_count>10</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-05-22 11:49:40 +0300</bug_when>
    <thetext>Добавлены spec-файлы для vosk-api и kaldi
- https://github.com/vasthecat/vosk-api/tree/alt-package
- https://github.com/vasthecat/libkaldi-vosk/tree/alt-package</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226507</commentid>
    <comment_count>11</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2023-05-26 11:47:59 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #3)
&gt; Created attachment 13071 [details]
&gt; GPG ключ
Ok.

(In reply to Andrew Guschin from comment #4)
&gt; Created attachment 13072 [details]
&gt; SSH ключ
Ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>226920</commentid>
    <comment_count>12</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-06-02 11:15:49 +0300</bug_when>
    <thetext>Добрый день.

Закончил работу над пакетированием:
- https://github.com/vasthecat/openfst
- https://github.com/vasthecat/libkaldi-vosk
- https://github.com/vasthecat/vosk-api</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227036</commentid>
    <comment_count>13</comment_count>
    <who name="Igor Chudov">nir</who>
    <bug_when>2023-06-05 14:18:43 +0300</bug_when>
    <thetext>Ключи посмотрел, вопросов не вызвало. Прошу создать почтовый псевдоним и зарегистрировать кандидата на соответствующих ресурсах.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>227327</commentid>
    <comment_count>14</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2023-06-08 18:17:11 +0300</bug_when>
    <thetext>ssh ключ на gitery.alt зарегистрирован.
Адрес для пересылки создан.     

T/J/S -&gt; 2.3.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228854</commentid>
    <comment_count>15</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-07-03 18:58:54 +0300</bug_when>
    <thetext>Переработал пакеты по совету прошлого ментора. Пакет 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, но сейчас не хватает квоты.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>230067</commentid>
    <comment_count>16</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-07-20 14:39:41 +0300</bug_when>
    <thetext>Хотел бы добавить также пакет с новым flavour ядра mcom03-def. Лежит в репозитории [1] в соответствующей ветке.

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

[1]: https://git.altlinux.org/people/guschin/packages/?p=kernel-image-std-def.git;a=shortlog;h=mcom03-def</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>231466</commentid>
    <comment_count>17</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2023-08-15 15:49:28 +0300</bug_when>
    <thetext>Добрый день. Хотел бы изменить ментора на Ивана Мельникова iv@.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>236673</commentid>
    <comment_count>18</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2023-11-08 19:51:15 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #17)
&gt; Добрый день. Хотел бы изменить ментора на Ивана Мельникова iv@.
Тут нет никакой проблемы, но новый ментор должен явно на это согласиться.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237222</commentid>
    <comment_count>19</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2023-11-15 15:29:08 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #17)
&gt; Добрый день. Хотел бы изменить ментора на Ивана Мельникова iv@.

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

Да, я согласен быть ментором Андрея, мы об этом договаривались.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237225</commentid>
    <comment_count>20</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2023-11-15 15:46:16 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #16)
&gt; https://git.altlinux.org/people/guschin/packages/?p=kernel-image-std-def.git;
&gt; a=shortlog;h=mcom03-def

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

Также я бы всё-таки почистил некотороые мелочи, даже если они &quot;унаследованны&quot;
- epoch с маленькой буквы это нехорошо
- есть мусор вроде kernel_base_version или def_disable oss, который, мне кажется, не стоит сохранять.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237227</commentid>
    <comment_count>21</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2023-11-15 15:59:22 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary

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

Также рекомендуется summary покороче и description поразвёрнутее.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237232</commentid>
    <comment_count>22</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2023-11-15 16:14:13 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary

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

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

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

&gt; +BuildRequires: libclapack-devel

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

&gt; +Requires: libfst
&gt; +Requires: liblapack
&gt; +Requires: libopenblas
&gt; +Requires: libxblas

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

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

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

&gt; Requires: %name python3(srt) python3(websockets) python3(tqdm)

То же самое. Почему AutoReq этого не находит?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237234</commentid>
    <comment_count>23</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2023-11-15 16:30:29 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary

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

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

&gt; +%files -n %lname
&gt; +%_libdir/libfst*
&gt; +%_libdir/fst/*.la
&gt; +%_libdir/fst/*.so

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

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


&gt; +%files -n %lname-devel
Почему не запакован каталог %_includedir/fst? Зачем перечислять все файлы?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237235</commentid>
    <comment_count>24</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2023-11-15 16:34:17 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary
&gt; %set_verify_elf_method rpath=relaxed

Может это всё-таки можно нормально починить?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241211</commentid>
    <comment_count>25</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-02-06 14:37:45 +0300</bug_when>
    <thetext>Исправил указанные проблемы со спеками:
- https://git.altlinux.org/people/guschin/packages/?p=kernel-image-std-def.git;a=tree;h=refs/heads/mcom03-def;hb=mcom03-def
- 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
- https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243823</commentid>
    <comment_count>26</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-04-01 11:23:21 +0300</bug_when>
    <thetext>&gt; 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 -- хорошая идея; если всё-таки править, то отдельным коммитом, так как это изменение не относится к сборке пакета.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243824</commentid>
    <comment_count>27</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-04-01 11:34:57 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary

Можно подробнее, что там не так с gear-тегом и pytest&apos;ом?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243827</commentid>
    <comment_count>28</comment_count>
    <who name="Grigory Ustinov">grenka</who>
    <bug_when>2024-04-01 12:26:39 +0300</bug_when>
    <thetext>(Ответ для Ivan A. Melnikov на комментарий #27)
&gt; &gt; https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary
&gt; 
&gt; Можно подробнее, что там не так с gear-тегом и pytest&apos;ом?

Кандидат видимо не осилил:
sed -i &apos;s/ -n auto//&apos; tox.ini
Ну а если без издёвки, то не обязательно пользоваться токсовым макросом, можно было бы запустить тесты например через %pyproject_run_pytest ну или даже просто через py.test-3. Хочу так же обратить внимание, что pytest является далеко не единственным способом тестировать питоновские модули. Разные апстримы могут это делать по-разному. Но как бы то ни было, такая мелочь не является основанием для отключения тестов.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>243828</commentid>
    <comment_count>29</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-04-01 12:31:50 +0300</bug_when>
    <thetext>&gt;  https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary

Очень странно распределены файлы между libfst и libfst-devel. Андрей, давай разбираться, что это за файлы и зачем они нужны.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>244042</commentid>
    <comment_count>30</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-04-03 17:09:11 +0300</bug_when>
    <thetext>&gt; - 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&apos;ов 5.10..5.10.y и 5.10.y..HEAD например.

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

arch/arm64/configs/defconfig не кажется мне хорошим источником для конфига под конкретную плату;  к теме именно пакетирования это, конечно, не относится, но всё-таки я бы предложил пересмотреть состав конфига этого ядра.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248764</commentid>
    <comment_count>31</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-07-12 12:52:20 +0300</bug_when>
    <thetext>Обновил пакеты
- https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary
- https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary
- https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary
- https://git.altlinux.org/people/guschin/packages/?p=linux.git;a=summary

Репозиторий kernel-image-std-def переименовал в linux, потому что, всё-таки, в нём не только kernel-image и не только std-def. Конкретно в flavour mcom03-def, конфиг мерджится из defconfig и mcom03_defconfig.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248767</commentid>
    <comment_count>32</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-07-12 13:16:01 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=openfst.git;a=summary

Мне казалось, что в %_libdir/fst находятся файлы, нужные в процессе работы, а не сборки зависимостей. Что там находится? Зачем нужны эти файлы?

Почему на все мои вопросы ты отвечаешь только коммитами?)))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248768</commentid>
    <comment_count>33</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-07-12 13:22:43 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git;a=summary

Стало хорошо.

Единственный вопрос -- не нужно ли вынести заголовочный файл в отдельный devel подпакет?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248769</commentid>
    <comment_count>34</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-07-12 13:37:45 +0300</bug_when>
    <thetext>&gt;  https://git.altlinux.org/people/guschin/packages/?p=python3-module-srt.git;a=summary

Тут тоже нужен URL. Во всех пакетах нужен URL. В остальном ок.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248770</commentid>
    <comment_count>35</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-07-12 13:54:46 +0300</bug_when>
    <thetext>&gt; https://git.altlinux.org/people/guschin/packages/?p=linux.git;a=summary

(In reply to Ivan A. Melnikov from comment #30)
&gt; В целом нормально скопированный спек. Я не против сборки ядер из коммита
&gt; безо всяких kernel-source-x.y, хотя и рекомендовал бы организовать генерацию
&gt; diff&apos;ов 5.10..5.10.y и 5.10.y..HEAD например.

М?

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

Всё ещё непонятно.

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

Не вижу в истории этого defconfig ничего специфичного для платы:

$ git diff 353757066776e78d9796fba25231a5797264a844 v5.10.160 -- arch/arm64/configs/defconfig
$

Так что он по прежнему не кажется мне хорошим источником для конфига под конкретную плату.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248772</commentid>
    <comment_count>36</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-07-12 14:28:16 +0300</bug_when>
    <thetext>&gt; Мне казалось, что в %_libdir/fst находятся файлы, нужные в процессе работы, а не сборки зависимостей. Что там находится? Зачем нужны эти файлы?

Насколько я понял, .la (и .so) файлы - это файлы, которые используются libtool. Каким образом они могут быть использованы при работе мне не известно. Никакие из остальных библиотек не линкуются с ними, как и libvosk.so

&gt; Тут тоже нужен URL

Исправил спеку. В остальных пакетах URL есть. У меня было ощущение, что когда у проекта есть только страница на хостинге репозиториев, точнее будет указать только VCS.

&gt; Единственный вопрос -- не нужно ли вынести заголовочный файл в отдельный devel подпакет?

Мне казалось странным выделять один хедер в отдельный пакет, но, наверное, имеет смысл. Исправил спеку.


С пакетом ядра буду разбираться.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248804</commentid>
    <comment_count>37</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-07-12 18:31:41 +0300</bug_when>
    <thetext>Обновил ветку с ядром
- https://git.altlinux.org/people/guschin/packages/?p=linux.git;a=shortlog;h=refs/heads/spec-mcom03-5.10

Убрал defconfig и оставил только mcom03_defconfig. Размер директории с модулями уменьшился почти в два раза, но плата всё ещё запустилась и даже продолжила работать.

Также я решил переименовать flavour в mcom03-5.10, так как ожидается, что появится ядро mcom03 версии 6.6. Хотелось бы сохранить обе версии параллельно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>249293</commentid>
    <comment_count>38</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-07-25 17:35:29 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #36)
&gt; &gt; Тут тоже нужен URL
&gt; 
&gt; Исправил спеку. В остальных пакетах URL есть. У меня было ощущение, что
&gt; когда у проекта есть только страница на хостинге репозиториев, точнее будет
&gt; указать только VCS.
&gt; 
&gt; &gt; Единственный вопрос -- не нужно ли вынести заголовочный файл в отдельный devel подпакет?
&gt; 
&gt; Мне казалось странным выделять один хедер в отдельный пакет, но, наверное,
&gt; имеет смысл. Исправил спеку.

Я как-то пропустил тот факт, что эти изменения уже выложены и на них надо посмотреть. Меня можно пинговать активнее в таких ситуациях.

Эти пакеты выглядят готовыми. Пора переходить к следующему пункту Join.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>249754</commentid>
    <comment_count>39</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-08-06 14:37:53 +0300</bug_when>
    <thetext>Глеб, мы ждём тебя, или это я чего-то недоделал по процессу?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>249768</commentid>
    <comment_count>40</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-08-06 17:12:06 +0300</bug_when>
    <thetext>Изменил два других пакета
- http://git.altlinux.org/people/guschin/packages/openfst.git
- https://git.altlinux.org/people/guschin/packages/?p=linux.git;a=tree;h=refs/heads/spec-mcom03-5.10;hb=spec-mcom03-5.10

В openfst директория /usr/lib64/fst, похоже, действительно расширения, которые могут использоваться в рантайме. Добавил отдельные пакеты с расширениями и devel с хедерами расширений. Не уверен стоит ли делать по подпакету на каждое расширение.

В ядре всё же разобрался со сборкой из kernel-source-* и diff. Спеку и rules исправил.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251044</commentid>
    <comment_count>41</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2024-09-02 18:45:33 +0300</bug_when>
    <thetext>ssh ключ на gyle.alt зарегистрирован.
Пакет alt-gpgkeys обновлён.
Адрес подписан на devel@.

T/J/S -&gt; 3.6.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251157</commentid>
    <comment_count>42</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-09-03 22:57:56 +0300</bug_when>
    <thetext>Поправил пакеты, чтобы собирались на всех сизифных архитектурах. Всё в тасках 356656 и 356734. Также разобрался с итерациями пакетов, больше не буду создавать лишних задач.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252550</commentid>
    <comment_count>43</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2024-10-06 10:59:29 +0300</bug_when>
    <thetext>&gt; Всё в тасках 356656 и 356734

По 356734: не очень понял схему с тегированным импортом тарбола. Зачем?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252553</commentid>
    <comment_count>44</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2024-10-06 13:49:33 +0300</bug_when>
    <thetext>vosk-api использует не апстримную версию kaldi, а свой форк. Я не вижу смысла пакетировать его для одного приложения. Если опакетить, то апстрим, но vosk с ним не собирается.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>257169</commentid>
    <comment_count>45</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-01-13 13:08:12 +0300</bug_when>
    <thetext>&gt; 356656

если это ядро ещё актуально, то пусть будет</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>257171</commentid>
    <comment_count>46</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-01-13 13:22:50 +0300</bug_when>
    <thetext>&gt; 356734

200:python3-module-srt.git=3.5.3-alt1
  Почему часть сборочных зависимостей в BuildRequires(pre), а часть просто в BuildRequires?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>257172</commentid>
    <comment_count>47</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-01-13 13:28:49 +0300</bug_when>
    <thetext>&gt; 356734

&gt; 1100:openfst.git=1.8.0-alt1


Как я писал выше, я не очень понял схему с импортом тарбола, можешь пояснить подробнее:
 - как это будет обновляться
 - чем такая схема хороша, по сравнению с &quot;обычной&quot; (с импортом тарбола в подкаталог a-la gear-srpmimport)

Мне также не нравиться, что тег v1.8.0 на первый взгляд похож на апстримный, но таковым не является.

А ещё я не смог собрать пакет, чтобы посмотреть на практике, как там разложены файлы.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>257173</commentid>
    <comment_count>48</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-01-13 13:33:31 +0300</bug_when>
    <thetext>&gt; 356734

&gt; 1500:vosk-api.git=0.3.45-alt1

Я бы всё-таки не держал запакованные исходники в гите. Можно распактовать тарбол прямо туда, где он будет лежать при сборке, и обратно запаковвывать его gear&apos;ом; можно сделать каталог kaldi-vosk в .gear.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>266047</commentid>
    <comment_count>49</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2025-05-29 20:52:26 +0300</bug_when>
    <thetext>Я решил, что лучше всё-таки выложить какой-то промежуточный результат, а не выгружать сразу всё.

Достаточно тривиальные пакеты:
- #385470, https://git.altlinux.org/people/guschin/packages/?p=bore.git&amp;a=summary
- #385473, https://git.altlinux.org/people/guschin/packages/?p=fdm.git&amp;a=summary
- #385472, https://git.altlinux.org/people/guschin/packages/?p=oils-for-unix.git&amp;a=summary
- #385556, https://git.altlinux.org/people/guschin/packages/?p=openfst.git&amp;a=summary
- #385542, https://git.altlinux.org/people/guschin/packages/?p=tectonic.git&amp;a=summary
- #385543, https://git.altlinux.org/people/guschin/packages/?p=tuigreet.git&amp;a=summary

Некоторые пакеты даже успел обновить до новых версий.

По поводу openfst:
&gt; Как я писал выше, я не очень понял схему с импортом тарбола, можешь пояснить подробнее:
&gt; - как это будет обновляться
С помощью gear-import

&gt; Мне также не нравиться, что тег v1.8.0 на первый взгляд похож на апстримный, но таковым не является.
Такой тег создаёт gear-import

NMU:
- https://git.altlinux.org/people/guschin/packages/?p=lact.git&amp;a=summary
- https://git.altlinux.org/people/guschin/packages/?p=linux-tools.git&amp;a=summary

Более нетривиальные пакеты в процессе допиливания до собирающегося и работающего состояния.

vosk-api и python3-module-srt уже кто-то собрал в сизиф. Сам виноват, что так долго тянул.

По поводу kernel-image-mcom03-5.10:
&gt; если это ядро ещё актуально, то пусть будет
Уже не актуально, у скифа появилось 6.6.y. Может быть, когда-то его соберу. Но ему на замену я сейчас пакетирую немного другое ядро.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>266050</commentid>
    <comment_count>50</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2025-05-29 23:44:39 +0300</bug_when>
    <thetext>(Ответ для Ivan A. Melnikov на комментарий #48)
&gt; &gt; 356734
&gt; 
&gt; &gt; 1500:vosk-api.git=0.3.45-alt1
&gt; 
&gt; Я бы всё-таки не держал запакованные исходники в гите. Можно распактовать
&gt; тарбол прямо туда, где он будет лежать при сборке, и обратно запаковвывать
&gt; его gear&apos;ом; можно сделать каталог kaldi-vosk в .gear.
Да более того, kaldi-vosk это же библиотека kaldi, которая используется при сборке и подключается через
find_package(kaldi REQUIRED)
нужно просто собрать её в отдельный пакет и использовать при сборке.
Если вдруг kaldi-vosk содержит какие-то специальные патчи именно для vosk, то можно собрать kaldi как libkaldi-vosk.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>266053</commentid>
    <comment_count>51</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2025-05-30 01:09:04 +0300</bug_when>
    <thetext>(In reply to Vitaly Lipatov from comment #50)
&gt; Если вдруг kaldi-vosk содержит какие-то специальные патчи именно для vosk,
&gt; то можно собрать kaldi как libkaldi-vosk.
Именно так оно и есть. И не очень хотелось добавлять в репозиторий разделяемую библиотеку для ровно одного пакета и поэтому собирал её статически для vosk-api.

При этом не очень понятно как может работать текущий собранный python3-module-vosk без подобного патча [1]. Прямо сейчас он и не работает...
&gt; &gt;&gt;&gt; import vosk
&gt; Traceback (most recent call last):
&gt;   File &quot;&lt;stdin&gt;&quot;, line 1, in &lt;module&gt;
&gt;   File &quot;/usr/lib/python3/site-packages/vosk/__init__.py&quot;, line 37, in &lt;module&gt;
&gt;     _c = open_dll()
&gt;          ^^^^^^^^^^
&gt;   File &quot;/usr/lib/python3/site-packages/vosk/__init__.py&quot;, line 31, in open_dll
&gt;     return _ffi.dlopen(os.path.join(dlldir, &quot;libvosk.so&quot;))
&gt;            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
&gt; OSError: cannot load library &apos;/usr/lib/python3/site-packages/vosk/libvosk.so&apos;: /usr/lib/python3/site-packages/vosk/libvosk.so: cannot open shared object file: No such file or directory

Я думаю, что в noarch пакете .so файлам не место. А libvosk.so нигде и не собран. И никаких SONAME и SOVERSION у него сейчас и не предполагается при сборке из апстрима.

kaldi и openfst используются какие-то свои [2] и пытаться сопровождать это не вендоря их kaldi и openfst мне просто кажется бессмысленным. openfst я держал на более старой версии как раз для того, чтобы подружить vosk с апстримным openfst. Сделать я этого так и не смог. Возможно, стоит передать наработки ментейнеру python3-module-vosk и уже просто статически завендорить vosk-версии kaldi и openfst, чтобы этот пакет заработал.

С этим я бы тогда наверное обратился к более опытным членам team, потому что историю с vosk-api я сейчас вижу для себя только так. Я (зря) потратил очень мого времени, чтобы подружить этот проект с апстримными разделяемыми библиотеками и у меня не получилось.

openfst я сейчас обновил до последней версии с которой vosk-api не собирается.

[1]: https://git.altlinux.org/people/guschin/packages/?p=vosk-api.git&amp;a=blob&amp;f=.gear/vosk-api-0.3.45-alt-linux-ffi.patch&amp;h=616b42183931dd97f4de9d8eab4f1130e54e117e&amp;hb=58460849fe6b3e7b799f9cc073e81be3cda48049
[2]: https://github.com/alphacep/vosk-api/blob/master/travis/Dockerfile.manylinux</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>266158</commentid>
    <comment_count>52</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2025-05-30 23:33:10 +0300</bug_when>
    <thetext>(Ответ для Andrew Guschin на комментарий #51)
&gt; (In reply to Vitaly Lipatov from comment #50)
&gt; &gt; Если вдруг kaldi-vosk содержит какие-то специальные патчи именно для vosk,
&gt; &gt; то можно собрать kaldi как libkaldi-vosk.
&gt; Именно так оно и есть. И не очень хотелось добавлять в репозиторий
&gt; разделяемую библиотеку для ровно одного пакета и поэтому собирал её
&gt; статически для vosk-api.
ничего нет страшного в добавлении библиотеки для одного пакета, если это позволяет всё это красиво сопровождать и не выглядеть недотёпой, укладывая zip с исходниками в git.

&gt; Я думаю, что в noarch пакете .so файлам не место. А libvosk.so нигде и не
Это точно.

&gt; собран. И никаких SONAME и SOVERSION у него сейчас и не предполагается при
&gt; сборке из апстрима.
 
&gt; kaldi и openfst используются какие-то свои [2] и пытаться сопровождать это
&gt; не вендоря их kaldi и openfst мне просто кажется бессмысленным. openfst я
Тогда можно вендорить, но более красиво. 

&gt; держал на более старой версии как раз для того, чтобы подружить vosk с
&gt; апстримным openfst. Сделать я этого так и не смог. Возможно, стоит передать
&gt; наработки ментейнеру python3-module-vosk и уже просто статически завендорить
&gt; vosk-версии kaldi и openfst, чтобы этот пакет заработал.
&gt; 
&gt; С этим я бы тогда наверное обратился к более опытным членам team, потому что
&gt; историю с vosk-api я сейчас вижу для себя только так. Я (зря) потратил очень
&gt; мого времени, чтобы подружить этот проект с апстримными разделяемыми
&gt; библиотеками и у меня не получилось.
Это было не обязательно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>266402</commentid>
    <comment_count>53</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2025-06-04 01:15:17 +0300</bug_when>
    <thetext>Ещё прошу заменить почту для пересылки на ayguschin@yandex.ru.  Отправлять почту от своего имени @altlinux.org я не смог.  Похоже, что гугл открутил возможность использования таких алиасов (и даже достаточно давно: [1]).  Если есть ещё возможность использовать smtp gmail, то менять, наверное, не нужно.  Но я такой возможности не нашёл.

Очень не хочу заниматься поддержкой почты со своим доменом, поэтому хотел бы попробовать хотя бы яндекс.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269347</commentid>
    <comment_count>54</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2025-07-17 18:49:23 +0300</bug_when>
    <thetext>Следующая пачка несколько более интересных пакетов:
- #385102, https://git.altlinux.org/people/guschin/packages/?p=randomx.git&amp;a=summary
- #385102, https://git.altlinux.org/people/guschin/packages/?p=monero.git&amp;a=summary
- #390021, https://git.altlinux.org/people/guschin/packages/?p=linux.git&amp;a=shortlog&amp;h=refs/heads/spec-xenomai
- #390021, https://git.altlinux.org/people/guschin/packages/?p=libevl.git&amp;a=summary

Ещё tuigreet нужно привести к тому, как остальные greetd гритеры пакетятся, но пока руки не дошли.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269844</commentid>
    <comment_count>55</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-07-25 14:19:28 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #49)
&gt; Я решил, что лучше всё-таки выложить какой-то промежуточный результат, а не
&gt; выгружать сразу всё.
&gt; 
&gt; Достаточно тривиальные пакеты:
&gt; - #385470,
&gt; https://git.altlinux.org/people/guschin/packages/?p=bore.git&amp;a=summary

В целом ок, rust как rust, две просьбы:
- у апстрима уже достаточно давно есть 0.6.0, обновитесь пожалуйста.
- группа Terminals всё-таки для эмуляторов терминалов и подобных устройств[1], этот пакет больше похож на Networking/Other

[1] в случае сомнений текущий состав группы удобно посмотреть на https://packages.altlinux.org/en/sisyphus/packages/Terminals/ .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269845</commentid>
    <comment_count>56</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-07-25 14:34:21 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #49)
&gt; Достаточно тривиальные пакеты:
&gt; - #385473, https://git.altlinux.org/people/guschin/packages/?p=fdm.git&amp;a=summary

lgtm, approved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269847</commentid>
    <comment_count>57</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-07-25 14:42:12 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #49)
&gt; - #385472, https://git.altlinux.org/people/guschin/packages/?p=oils-for-unix.git&amp;a=summary


- `Summary: tmp`;
- при живом (кажется) гите пакет собран из тарбола. Зачем?
- последняя версия у апстрима 0.34.0.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269848</commentid>
    <comment_count>58</comment_count>
    <who name="Andrew Guschin">guschin.drew</who>
    <bug_when>2025-07-25 14:48:10 +0300</bug_when>
    <thetext>&gt; - `Summary: tmp`;

Действительно, забыл. Не ожидал что соберётся с первого раза.

&gt; при живом (кажется) гите пакет собран из тарбола. Зачем?

Апстрим разрабатывается на питоне, после чего с помощью своих инструментов транслируется в c++. Реальный релизный код распространяется только в тарболах.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>269852</commentid>
    <comment_count>59</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-07-25 15:31:06 +0300</bug_when>
    <thetext>(In reply to Andrew Guschin from comment #58)
&gt; Апстрим разрабатывается на питоне, после чего с помощью своих инструментов
&gt; транслируется в c++.

omg

&gt; Реальный релизный код распространяется только в тарболах.

Аругмент. Сóит упомянуть это в спеке, вместе с ссылкой на страницу загрузки релизных тарболов.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>271131</commentid>
    <comment_count>60</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-08-20 14:34:02 +0300</bug_when>
    <thetext>&gt; #385543, https://git.altlinux.org/people/guschin/packages/?p=tuigreet.git&amp;a=summary

Увидел одну явную ошибку:

&gt; %attr(775,_greeter,_greeter) %dir %_cachedir/%name

Значит, пользователь и группа должны существовать на момент распаковки пакета. То есть, на greetd должа быть зависимость вида `Requires(pre)`.



Ну и какие-то мелочи:

scdoc лучше вызвать в %build, положив результат рядом с исходниками.


&gt; %_altdir/greetd-tuigreet

rpm-macros-alternatives лучше требовать явно, и через `BuildRequires(pre)`.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>271133</commentid>
    <comment_count>61</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-08-20 14:44:45 +0300</bug_when>
    <thetext>&gt; #385542, https://git.altlinux.org/people/guschin/packages/?p=tectonic.git&amp;a=summary

Здесь лучше сохранить оригинальный апстримный тег. Например команда

  gear-store-tags  v0.15.0 tectonic@0.15.0

создаст gear-tag v0.15.0, которым можно пользоваться, и файл 2ee60d7758f3554e2d6a590014ab33ac7bd14ac8 с содержимым оригинального апстримного тега.

При этом в rules стоит написать какой-то комментарий, поясняющий, что поскольку у апстрима вот такой вот формат имён тегов, а &quot;@&quot; в gear нельзя, мы ими пользуемся вот так.


По спеку в целом всё ок, кроме группы &quot;Terminals&quot;, которая явно не про это.


И что там с %check?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>271136</commentid>
    <comment_count>62</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-08-20 15:37:23 +0300</bug_when>
    <thetext>&gt; - #385556, https://git.altlinux.org/people/guschin/packages/?p=openfst.git&amp;a=summary

Зачем делать теги от своего имени и потом сохранять их в .gear? `gear-update-tag &lt;name&gt; &lt;commit sha&gt; работает.

Чем вообще в данном контексте `tar: v@version@:openfst` лучше чем `tar: openfst`?

На остальное пока внимательно не смотрел, но вопросы ещё будут.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>271443</commentid>
    <comment_count>63</comment_count>
    <who name="Ivan A. Melnikov">iv</who>
    <bug_when>2025-08-26 15:17:13 +0300</bug_when>
    <thetext>&gt; #385102, https://git.altlinux.org/people/guschin/packages/?p=randomx.git&amp;a=summary

В целом ок.

Единственное что, не вижу никаких причин не последовать за shared libs policy и не назвать пакет с библиотекой, например, `librandomx0`.

&gt; #385102, https://git.altlinux.org/people/guschin/packages/?p=monero.git&amp;a=summary

Интересный подход к сабмодулям. Но так ли это нужно? Чем не устроил minupnpc из репозитория например? Как используются остальные &quot;завендоренные&quot; сабмодули?


Ну и по мелочам:

&gt; %package -n %name-devel-static

Зачем тут -n?


&gt; %setup -D -q
&gt; %setup -D -a1 -a2 -a3 -a4

У певого %setup&apos;а -D лучше убрать.

А в один %setup оно не влазиет? -b0 -a[всё остальное]?


&gt; %_libdir/*
&gt; %ifarch %ix86
&gt; %exclude %_libdir/debug/
&gt; %endif

Я понимаю, что у нас осталось мало 32-битных архитектур, но всё-таки лучше сделть то же самое аккуратнее. Просто `%libdir/lib*.a` чем-то хуже?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13071</attachid>
            <date>2023-05-02 14:37:22 +0300</date>
            <delta_ts>2023-05-02 14:37:22 +0300</delta_ts>
            <desc>GPG ключ</desc>
            <filename>guschin_gpg.pub</filename>
            <type>text/plain</type>
            <size>3078</size>
            <attacher name="Andrew Guschin">guschin.drew</attacher>
            
              <data encoding="base64">LS0tLS1CRUdJTiBQR1AgUFVCTElDIEtFWSBCTE9DSy0tLS0tCgptUUlOQkdSUTlCMEJFQUM5aFo5
elJWZ1M5TWRVQmk2TE8vbDRoekV4OE9YMU1NVDNtK2p4c2JxaDJRTjdRdjFVCkVwVitJWU4wcEY2
aVhCOFZxWjgzOE54SjFHSXp0anpkZ3hmQmNjMnpQR1NTZXZlVXRnRTA3MjJ0dHAvbHBJY04KWTFt
alE5QUFzRFAwelNzTmJCemFtb1Bib25VZGxMTE02S3c4b1lpdnpYQ1p0UXdUang1cWRFWmh1MHVu
MFcwSQpaU1V3WDFvYXQybEl0TFM0anh5ODB2KzBRdzYzdjJzMzJLYkJvZk1yL0hVRHppcndPN3dw
R1RLSkF4Q29SK1dnCndBWXl0V3ExSkFzWkhVblhPaTVJaWEwaTU1dGRuOHpoMGdBN0dPaG1HdU1j
RnovcFRYbFB2VEoyd2pFdGJuYzQKa2FnTGlwTnNkNDUvRUpFQ21GVWJKeWlGOGwyd3ZMcEMwVWNL
Z2F3eUNoWGM4dUJSNklKN0ExbERTT3dGN0VWWAo0b0VJaVlKeWtiNkcxSTh2SHBlR0g1bUFTVm9L
SHdOeEVxaHplOTdTbTFhV0VIb2dpUHZvL1RqSVc0Zm5DblN4CkRZMnI4SXZGOHk5Umo0dUlWc01w
djJoNFYzMVZ5cjNMRlBZa05PS3NpblFhMExoVWVhNmJ0MGJUQzlCc1JIbXMKR053eEJDRy9WT2dP
TEZOZTBtd2RwSDlSYjNpenhUSVQvY3cwaFpwTlJuR01IYTJJQUdzeW5VeWxVYjU3a05lUwp4M0p5
Z3JrUEZPaHpFdXJxU1hNUmxRTkZNQ1o5WGlpUmhtWUdnUExSdERCNHBjTVdPdWFhOSt5eFZNTCtt
dHYvCkZoVnFFUSt4UFhkK2Uwc0U0RVE5NGlYVkxHdE0zZUNmTXZuSWlyeVFWeTN3Y2trcW5MOVA3
UmRWM3dBUkFRQUIKdENWQmJtUnlaWGNnUjNWelkyaHBiaUE4WjNWelkyaHBia0JoYkhSc2FXNTFl
QzV2Y21jK2lRSTRCQk1CQ0FBaQpCUUprVVBRZEFoc0RCZ3NKQ0FjREFnWVZDQUlKQ2dzRUZnSURB
UUllQVFJWGdBQUtDUkNxK1JyQ1JJZis5ek5WCkQvMFFid3JIcUVZV3czNmViN1ZUT2NacGhLTFEw
QW9wVEpIaklWQkdGdVM1Z1ZJL1ZrTGQwSkhkWXg2UjBSY3QKNFdFUHZjeTE1QXFIRzEzL0RVZWZG
YmU3cmhJWTdRbmhmTkVHY1kwODkzblk1L2huT2ZKNWQyMDhPY3RxQm1EOQpsL0NtN3hBaGpqYjgz
dkM4TVVCaml0dDhURFFITHVPc1o3ZExEQjE2RSs3Ym5FcExkenQ0dUdBZkhBYjFWeHY2CnJvYURW
b1J1cTc3eGlWalZ1ZDFxL0U2NTdKRWVHa1Y5bjJYdzI1TlJ1MjB3Yi8yTGcxYUNxWHF4aEMvOVJC
R2oKOVNMYTlLL0VaUjBsUmhoUVg4SU44Mml2WmwwSDdpTy9mYlR1UlpUdEdjWldpMWpEcnhkQ3la
NStTd0tZZVM3Two2SHNJS3RSbnRWZkxTVUpENmdjQ2kyL1V5d2h4a1Y2NVk2RnhJbDB5QjdERGFv
YmwvREw5U29GUkpNTVA4WmhDCnZzdk1VSWVQUnB2bFNETVZnRFlUeU9sVUZHUiswOEgzWnVpRVAx
MzFmVkhOM0ZsaUhSYlpJN0ZPYkgwY0h5UTcKY0x2UkZlWitrNzNNR1p3TnZlb1Mvb0tyalVKZ1NB
K1VnMGxTVm5Hemg3aFB0aXlMY1pvdnpWanVQQ2VxRWVTOQovTGM0VTYrVXlNUU1FK3dSSTlqcTg0
aXluRU5TTmtJb1hlSkgxOCtNR3NyN2c2Y2NiaWJZOFl4Snp3SmVqOXdICkc3bmMzTmJ2M0Q0a3FB
WTZwTVZReDZUOVhSUlRjdDFaQis0bGhEZkxTdXZWa1QzNjRrdVowRXcwdDRXekp6cngKd1cvdVVa
TGlUbXo5d1dFMWFoMGxCeFowUXpQVUpDQUxmY3BOckVHSVQrYk5uN2tDRFFSa1VQUWRBUkFBeEZR
cApRVnhHSDdmZ0g3NzZRd3Z0NTRLN0s0L3NKOGVwOGxwRitmOXl6TG43aTN4VHpIR1RPanRJeS81
WGFjOVhlZU1RCmhYRGFnSWFMV3FSbklUTllWVjZ6RUZFNU1RL3A2c0VFTWR2Zjc5K1B4NVNoSXZM
ZGs4R01RRjl5VG4yZFVURnAKWUJjby9qK3RYSkZpQTJvMUxVWElxYUxvOFp3ckNZVStwV2V5NDB5
bFZEeVBsRW9haVQrZkxwMklTVm5ka3VLZApqbE1XV3Q0Y25XaG9zTXd4UUdxanpFeWZSWHNpWk5q
V0dwSXRqZi9qNFZxU2s4RDhFaHZicVh4dWhudktmSjRUCm8yaXhYbGlEYTdzY29aZVhpZVNFYW51
clFZZWhCdXNJM3pxc0c0MmxzZGJJTU42a3hRVFBiYnlVTHZaRWhlNG4KcnY3cm5UVzMvRXZML1FZ
bWFFd1huL2FpTllhYlI5Q1hRT0NwZ3VoU2NSaUp6SkRzbzE1UkV3QUdxcWdiditBTApxS1ovUEtv
MjExdk1PZkFpazFzeUFlUlF2ZUlKSWwvYXIxck53SCtwSTZuTnIzekg0djhkOE0raGFyUGcxTmR2
CjJNbWZwdVVvbEJuVjl6RXluMkZ2WTdrNGd2TkszdHo2TGh4bXVVaEJXOXBJeUlSVTVZUnJCd1ZN
RVpnQ0lnUmsKL1NzOS96aTB3WUdZdDRaUnFpUXZsL0dqbG8wenJrTWhEZ2VyQks0LzRKVCs1RFlh
SFRBS2xLMWQwVG1mTytaUwpwMEsvWnE3R21GbGs4QVBFMndRb1pGWklJWk04U3Y0N3V2NkZpdUlX
RkRHVUpwN3pZVGd2SmF0T291SjRZdEYvCjhreHUyNU8zVmQ3b0dLeTY0WW9zSzI0OTExR2paSEVI
RDFrdTVJY0FFUUVBQVlrQ0h3UVlBUWdBQ1FVQ1pGRDAKSFFJYkRBQUtDUkNxK1JyQ1JJZis5eEU0
RUFDYWxsZUpsczlaK2ZQRVFpSTNTY3VzemdCZjQveXl0UVAxUnh4VAo0N0c5UXZKLzVpK1k0QlRs
cThuS3Z6LzJycnFuVGZsdWFJempnU3NweGFpV2RKSUc0aWNaa3dNQkZZelk4Yy9SCjZLbUJWdzlF
YU9MMlV0dURjUTVMeGhLODZHbzdKODE5YmFSNWgvMEFCVGlJNTBqYlRVWFI2dGl4WTFxZ3dRNFkK
YTgzaFdhVllwR3piSXlmcTZ0YllqMVc0L3Q1NTVqN2xDdTFQZXo3ZXFwWnhmNVgrNkdjY1RFOGhr
Wm5ncHVEYwpTNzdoclVNcG5tbEl2OVNwSmwxVzFmaFhBa1hKZG1rM2NuWktIczBzU2pPbk1xNG80
YnVlcjEyR1p6bXlMNDN6CmU1OWI4cndCRkRlOU02YjZKbnRBRVc1WXZ1L0lqZ21jOU1CSDhJNk43
Z3ZPVkE1UzlZc05TbXcwV3RlTlVhNzIKL3dZemJsbW1NOWMzV0lac1RSN1hEclY4SlM3Rk1taEt3
bjFQbnBobU1wNWdRREk1Z0NRVXBnUk1hUXI1anhSSwo5VjF3TWRvcGI2YTZ0MThGUDFROTREWFFH
RTArTzJnZDRwR3RPMm5sRXdQWDRqWTFWVGYzMlRUMFRmNGxtb21VCjFWMnNjWVMwcWVVaktxdTBF
aE5MMW9ScTRrNVlXazZmaFpsQmFzMWx3STBzZzZRQUtCeW1SLzhncXFiL290OVEKWTFiMEM3ZTNq
QjdLTUd6U1pDeHRqVUEvZ05ZZ1gxYXE4eFhhRDYrUTBRaitiRUZ5UEczNUllQmtuLy91Y0NDMQpa
UzNnVG5qNzZYNURJZ3E5aCtnWEtjdlFqbWdZZllxZkg4Rkd4bzdqd2JISHl6MHBKa3lDTXd6NHlq
bFVGbk1FCjArcEVKZz09Cj1KVzA2Ci0tLS0tRU5EIFBHUCBQVUJMSUMgS0VZIEJMT0NLLS0tLS0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>13072</attachid>
            <date>2023-05-02 14:37:50 +0300</date>
            <delta_ts>2023-05-02 14:37:50 +0300</delta_ts>
            <desc>SSH ключ</desc>
            <filename>guschin_ssh.pub</filename>
            <type>text/plain</type>
            <size>740</size>
            <attacher name="Andrew Guschin">guschin.drew</attacher>
            
              <data encoding="base64">c3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFDQVFESmtXVHhCcy9IOTByTkIvTVFX
OTJVbXJTaEpFZENoaVZuMFBpZGRBTnhObjNTcERLMGFFZ0JtRnhqdG0zZXFwTERTOVBBL2NpODRt
UVJmVi9jc2NsL1BZQTdrZGFWWTE4OHN1aDhSN3kxanE1b09hYXlUWDZvVjcyNXkxYkM5L0dhNjJn
Qk9ZK1ZKbDJNM2tWbDJWdHcrK0ltMlYyUEVuZHJZRkh2a1JzUE0veUt5WXczRldad1ZubzE0T1Nw
aGd4UUFyNVFmVldEMVZqVjdPU01wQUhkUGZDS25SZHIxVGF4UkhuOWQ5VlYvS0F1cm9ja1ppU2Qr
WHlvUTdFdzNqZVBxQWVWVUlROTNINGpoQmhPUmUzMFhwbkRBYmxNeGhVeFBWVzdXUFEvbXlQZ0ZI
V01acU5BQmc4VnpTa3hOd1R3OE5KOG10Q2xPM2EyWTRrSFdLdCtsbnBJREdSOVlDQjAySzRNa1FV
L1Ayeml5SWd2Nk9tYlpxWjBHN3Z1ZG1BV1c1dkRxQisxN2pUNVJHNVhUUWZJRXY2cU1COURaMzQ2
aloreVY0eXArKzBjRzhJRktjaThPMDVRNFBQRjRheEMzN01XamtQV2IxN0gyV1N4UFZhT2R4VWRK
d2RLTFU0QnVqREIwZGs5MTN0N3FDQzlRVUFUVG82UUV4K2NxNU5wN0Q4M3RYOTVzdjRrNkZzUTNZ
TDNZNmZUUXhrZGkxMWFoMi9ialRSN0xZTDV4VTFOMkpoR0xTNkNoWFR4MEEwZU1uRnpBbUN2bmRK
SXU4WFcyYjhkK1hFT2N1UlhBYWFNVWUzUm5kQ1ludGVTbk90MU5sYTVrVkxNelh5TlFCQUV1eEFT
UXZyZXZMNHlDTnlQREtiM2Era2dUOE9mUDZhVmFYUURLT1lZMHc9PSBBbmRyZXcgR3VzY2hpbgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>