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

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

    <bug>
          <bug_id>49831</bug_id>
          
          <creation_ts>2024-03-28 14:35:47 +0300</creation_ts>
          <short_desc>Много неочевидных телодвижений при установке rust</short_desc>
          <delta_ts>2026-04-22 13:49:34 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>rust</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Garrett">AlexShevchenko</reporter>
          <assigned_to name="Сергей Жидких">rx1513</assigned_to>
          <cc>ajratma</cc>
    
    <cc>ancieg</cc>
    
    <cc>crux</cc>
    
    <cc>legion</cc>
    
    <cc>mike</cc>
    
    <cc>rauty</cc>
    
    <cc>rx1513</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>243696</commentid>
    <comment_count>0</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-03-28 14:35:47 +0300</bug_when>
    <thetext>AltLinux Starter + XFCE, перешел на репозиторий Sisyphus.

Информация к размышлению)

Поставил пакет rust, установился только rustc, а cargo - нет.
Пришлось установить ещё пакет rust-cargo.
Считаю это неправильным, установка rust должна установить одновременно как rustc, так и cargo.
После этого сделал проект, скомпилировать не удалось - нет cc.
Тоже считаю это неправильным, скрипт установки rust должен проверить наличие нужного cc и доустановить.
Установил gcc13 - не помогло.
Установил просто gcc - заработало.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246148</commentid>
    <comment_count>1</comment_count>
    <who name="Ajrat Makhmutov">rauty</who>
    <bug_when>2024-05-14 12:18:40 +0300</bug_when>
    <thetext>Так как rustc всё же можно использовать без cargo,
считаю, что нужно оставить установку rustc без cargo.
С gcc согласен - он необходим rust&apos;у.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246225</commentid>
    <comment_count>2</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-05-15 08:34:57 +0300</bug_when>
    <thetext>Cargo необходим, и rust должен ставится в связке rustc + cargo + gcc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246260</commentid>
    <comment_count>3</comment_count>
    <who name="Ajrat Makhmutov">rauty</who>
    <bug_when>2024-05-15 13:55:18 +0300</bug_when>
    <thetext>Почему cargo необходим? В будущем будут другие системы сборки для rust&apos;а, да и сейчас есть: buck2 например.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246261</commentid>
    <comment_count>4</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-05-15 14:00:04 +0300</bug_when>
    <thetext>Потому что запуск проекта, компиляция проекта(или пачки взаимосвязанных проектов), запуск тестов - это всё делает cargo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246264</commentid>
    <comment_count>5</comment_count>
    <who name="Ajrat Makhmutov">rauty</who>
    <bug_when>2024-05-15 14:22:13 +0300</bug_when>
    <thetext>Как и почти все системы сборки любых языков.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246265</commentid>
    <comment_count>6</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-05-15 14:30:57 +0300</bug_when>
    <thetext>Последний аргумент, взывающий к разуму)

Человек решил изучить rust. Установил пакет rust, открывает учебник на сайте rust&apos;а, там написано &quot;запустите cargo new project&quot;. Человек пускает и там не работает, спрашивает где-то на программистском форуме, там отвечают: &quot;у меня на debian(ubunta, mint...) всё работает, ставь эту систему и не парься&quot;. Думаю, он послушает этого совета и уйдёт с проблемного для него Альта...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246266</commentid>
    <comment_count>7</comment_count>
    <who name="Anton Zhukharev">ancieg</who>
    <bug_when>2024-05-15 14:47:37 +0300</bug_when>
    <thetext>(In reply to Garrett from comment #6)
&gt; Последний аргумент, взывающий к разуму)
&gt; 
&gt; Человек решил изучить rust. Установил пакет rust, открывает учебник на сайте
&gt; rust&apos;а, там написано &quot;запустите cargo new project&quot;. Человек пускает и там не
&gt; работает, спрашивает где-то на программистском форуме, там отвечают: &quot;у меня
&gt; на debian(ubunta, mint...) всё работает, ставь эту систему и не парься&quot;.
&gt; Думаю, он послушает этого совета и уйдёт с проблемного для него Альта...

Такому человеку крайне рекомендую меньше на всяких &quot;программистких форумах&quot; вопросы задавать несведущим людям и слушать их &quot;советы&quot;. У нас Rust, видимо, собран отлично от Debian, но это не является проблемой. Если думаете иначе - пользуйтесь Debian.

Предлагаю закрыть репорт как NOTABUG.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246268</commentid>
    <comment_count>8</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-05-15 14:57:13 +0300</bug_when>
    <thetext>Можно вообще ничего не делать, можно закрыть этот репорт, можно заблокировать меня чтобы не раздражал  - вы тут хозяева.

Я лишь указал, что по-моему мнению это неправильно.

Так же, как неправильно, что ваш python3 в системе поставляется без pip!!!

Удачи.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246274</commentid>
    <comment_count>9</comment_count>
    <who name="Ajrat Makhmutov">rauty</who>
    <bug_when>2024-05-15 15:11:22 +0300</bug_when>
    <thetext>(Ответ для Garrett на комментарий #8)
&gt; Я лишь указал, что по-моему мнению это неправильно.
Мы ценим ваше мнение. Спасибо что написали. 

(Ответ для Anton Zhukharev на комментарий #7)
&gt; Предлагаю закрыть репорт как NOTABUG.
Закрывать как NOTABUG не буду, gcc действительно нужен rust&apos;у для линковки. Будет исправлено со следующей версией.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246275</commentid>
    <comment_count>10</comment_count>
    <who name="Anton Zhukharev">ancieg</who>
    <bug_when>2024-05-15 15:14:09 +0300</bug_when>
    <thetext>(In reply to Garrett from comment #8)
&gt; Так же, как неправильно, что ваш python3 в системе поставляется без pip!!!

pip не является частью стандартной библиотеки Python, поэтому в пакете python3 его нет - и это тоже не является проблемой.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246278</commentid>
    <comment_count>11</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-05-15 15:19:44 +0300</bug_when>
    <thetext>(In reply to Anton Zhukharev from comment #10)
&gt; (In reply to Garrett from comment #8)
&gt; &gt; Так же, как неправильно, что ваш python3 в системе поставляется без pip!!!
&gt; 
&gt; pip не является частью стандартной библиотеки Python, поэтому в пакете
&gt; python3 его нет - и это тоже не является проблемой.

Но является важной частью экосистемы python, как и cargo для rust!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246594</commentid>
    <comment_count>12</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2024-05-22 14:14:49 +0300</bug_when>
    <thetext>rust-1:1.78.0-alt1 -&gt; sisyphus:

 Tue May 14 2024 Ajrat Makhmutov &lt;rauty@altlinux&gt; 1:1.78.0-alt1
 - New version (1.78.0).
 - Move rustlib into /usr/lib/ (closes: 49687).
 - Remove the cargo-doc package. Now all documentation is in rust-doc.
 - Require gcc for rustc (closes: 49831).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246736</commentid>
    <comment_count>13</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2024-05-25 07:52:52 +0300</bug_when>
    <thetext>PreScriptum: раз познакомились и вопросы были также заданы лично, да и погода хорошая...

(Ответ для Garrett на комментарий #2)
&gt; Cargo необходим, и rust должен ставится в связке rustc + cargo + gcc.
У нас довольно много пакетов, зависящих по сборке от rust, но не rust-cargo;
насколько понимаю, там или в апстримах, или в пакетах всё стороннее тупо завендорено.

rust-cargo в развёрнутом виде не то чтобы катастрофа по объёму, но всё-таки лишние 27 Мб
в каждом сборочном чруте с rust тоже не очень хорошо с учётом comment 3.

В целом любая среда исполнения, а тем более разработки требует некоторых усилий по освоению (обычно ещё и времени для привыкания; смена привычек -- от двух недель, ср.: http://altlinux.org/migration) -- думаю, по поднятым проблемам (а лучше по одному багу на одну проблему, чтобы состояние было однозначным; если есть связка проблем -- на связку отдельно заводится метабаг, зависящий от всех конкретных багов -- подробнее добавил на http://altlinux.org/BugTracking/BugzillaMiniHowto).

Поэтому предлагаю по данной баге, помимо уже сделанного, судя по comment 12:
1) создать на вики страничку http://altlinux.org/rust с рекомендациями и ссылками;
2) аналогично и http://altlinux.org/python

Если займётесь -- сообщите затем и сюда, почитаем; такие вещи обычно хорошо получаются, когда человек со свежим синяком пишет ровно то, чего ему самому не хватило, а те, у кого свои такие же синяки уже давно зажили -- приходят и смотрят, что поправить/дополнить.

(Ответ для Garrett на комментарий #11)
&gt; (In reply to Anton Zhukharev from comment #10)
&gt; &gt; &gt; Так же, как неправильно, что ваш python3 в системе поставляется без pip!!!
&gt; &gt; pip не является частью стандартной библиотеки Python
&gt; Но является важной частью экосистемы python, как и cargo для rust!
Так можно и за notebook взволноваться -- мол, как же пользователи без него. :)

Ну и pip всё-таки дублирует пакетную систему дистрибутива именно для времени выполнения, поощрять такие практики &quot;из коробки&quot; я бы точно не стал (хотя если правильно помню, к его созданию напрямую был причастен cray@ давным-давно).

PS: давайте проиллюстрирую на примере двадцатилетней давности.
В редхате тогда пакет perl тащил все более-менее &quot;важные для экосистемы&quot; модули.
Одной кучкой.  И в целом подход скорее напоминал &quot;один проект -- один пакет&quot;.
В дебиане уже тогда заморачивались мелкой порезкой и более точными зависимостями.
Альт, будучи rpm-дистрибутивом и &quot;внуком&quot; редхата через мандрейк, исходил как раз
из ситуации с более грубой порубкой пакетной базы -- но поскольку озадачились точными
зависимостями (автогенерацией установочных, затем и сборочных), то из такого условного
perl вдруг начали торчать объективно неудовлетворённые зависимости включённых модулей
на то, что они бы хотели использовать, но что не вошло в пакет (а рекурсивно там бы
пол-CPAN попало, поди).  Не в последнюю очередь по этой причине у нас и выбрана более
тонкая нарезка и обычно весьма неодобрительно смотрят на поползновения к навьючиванию
лишнего дополнительного на базовое.
О пользователях заботиться стоит, но если кормить ребёнка с ложечки всю жизнь --
он попросту не повзрослеет.  Тут скорее про разумную, а не случайную, возможность
отыскать/получить ответы на свои вопросы.

PPS: с документацией на вики, как и любой другой, основная проблема -- доступность:
мы же идём читать документацию не когда было бы надо, а когда совсем ничего уже
не работает ;-]  Можно предложить в %post пакета rust проверку наличия rust-cargo
и echo &quot;** you might also need rust-cargo&quot;, но кого-то возмутит лишний спам в логах, особенно если rust-cargo и будет установлен следующей же строкой; если сделать проверку
на tty (test -t) -- пропадёт и в synaptic (а вдумчивая проверка с учётом всего этого потянет на небольшой отдельный пакет, чтоб не дублировать потом).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246746</commentid>
    <comment_count>14</comment_count>
    <who name="Ajrat Makhmutov">rauty</who>
    <bug_when>2024-05-25 11:08:00 +0300</bug_when>
    <thetext>(Ответ для Michael Shigorin на комментарий #13)
&gt; Поэтому предлагаю по данной баге, помимо уже сделанного, судя по comment 12:
&gt; 1) создать на вики страничку http://altlinux.org/rust с рекомендациями и
&gt; ссылками;
&gt; 2) аналогично и http://altlinux.org/python
&gt; 
&gt; Если займётесь -- сообщите затем и сюда, почитаем; такие вещи обычно хорошо
&gt; получаются, когда человек со свежим синяком пишет ровно то, чего ему самому
&gt; не хватило, а те, у кого свои такие же синяки уже давно зажили -- приходят и
&gt; смотрят, что поправить/дополнить.
Так как у меня таких синяков нет, Garrett, предлагаю вам этим заняться.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246869</commentid>
    <comment_count>15</comment_count>
    <who name="Garrett">AlexShevchenko</who>
    <bug_when>2024-05-28 14:36:43 +0300</bug_when>
    <thetext>Спасибо за предложение, попробую сделать, только чуть позже. Немного занят...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>283409</commentid>
    <comment_count>16</comment_count>
    <who name="Сергей Жидких">rx1513</who>
    <bug_when>2026-03-06 23:49:36 +0300</bug_when>
    <thetext>Мне не нравиться, что в rust в кучу пакуется rustc, хостовый таргет и директория тулчейна. Я считаю, что это разные сущности, которые должны жить в своих пакетах.

Поэтому я сделаю мета пакет rust, который будет зависеть на rustc и cargo.

Ну и думаю вдобавок добавлю пакет, который автоматически установит rustc, cargo, rust-analyzer, rustfmt и clippy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>286161</commentid>
    <comment_count>17</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2026-04-22 13:49:34 +0300</bug_when>
    <thetext>rust-1:1.95.0-alt1 -&gt; sisyphus:

Fri Apr 17 2026 Sergey Zhidkih &lt;rx1513@altlinux&gt; 1:1.95.0-alt1
- New version (1.95.0).
- Add rust-full subpackage, which installs everything required for
  development (Closes: 49831).
- Enable rustc documentation compilation (Closes: 58420).
- Raise the llvm version to 22.1.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>