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

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

    <bug>
          <bug_id>37352</bug_id>
          
          <creation_ts>2019-10-18 14:37:57 +0300</creation_ts>
          <short_desc>Конфликт с systemd-utils</short_desc>
          <delta_ts>2019-11-06 20:18:15 +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>systemd-utils</component>
          <version>unstable</version>
          <rep_platform>all</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>P3</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>33000</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Антон Мидюков">antohami</reporter>
          <assigned_to name="Alexey Shabalin">shaba</assigned_to>
          <cc>iv</cc>
    
    <cc>jqt4</cc>
    
    <cc>legion</cc>
    
    <cc>mike</cc>
    
    <cc>shaba</cc>
    
    <cc>zxwarior</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>184983</commentid>
    <comment_count>0</comment_count>
    <who name="Антон Мидюков">antohami</who>
    <bug_when>2019-10-18 14:37:57 +0300</bug_when>
    <thetext>Из-за коммита:
http://git.altlinux.org/gears/s/systemd.git?p=systemd.git;a=commitdiff;h=30c28ce9e6d8d006c81b6bbecaf6423a08d8f3f5;hp=060cea49f5f2514e85aa3fab168830059f27e561

Невозможно установить bash-completion-elogind
Конфликтующий файл:
/usr/share/bash-completion/completions/loginctl

В качестве решения предлагаю loginctl переименовать в eloginctl.
Сейчас /usr/share/bash-completion/completions/loginctl/eloginctl является симлинком на /usr/share/bash-completion/completions/loginctl. Так что превращение симлинка в файл вызовет проблемы при обновлении. Потому необходимо выставить конфликт с предыдущими версиями у bash-completion-elogind.

Но лучше пойти ещё дальше и включить bash-completion-elogind в elogind по аналогии с systemd-utils, так как bash-completion весит копейки и никаких зависимостей не тянет. Не забыв выставить конфликт с bash-completion-elogind.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184984</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2019-10-18 14:54:03 +0300</bug_when>
    <thetext>Так понимаю, ты собирался повесить на bash-completion-elogind.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184985</commentid>
    <comment_count>2</comment_count>
    <who name="Антон Мидюков">antohami</who>
    <bug_when>2019-10-18 15:20:15 +0300</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; Так понимаю, ты собирался повесить на bash-completion-elogind.

Да. Но, если подумать, то лучше решать проблему в systemd.
Всё-таки /usr/share/bash-completion/completions/loginctl не обязаны быть идентичными для elogind и systemd.
А потому правильным решением будет перенести /usr/share/bash-completion/completions/* из systemd-utils в systemd-services, где в основном и находятся утилиты, для которых предназначены bash-completion. А главное не нужно порождать ещё один конфликт.

Потому перевешиваю обратно на systemd-utils.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185248</commentid>
    <comment_count>3</comment_count>
    <who name="Speccyfighter">zxwarior</who>
    <bug_when>2019-11-01 15:35:47 +0300</bug_when>
    <thetext>(В ответ на комментарий №2)
&gt; (В ответ на комментарий №1)
&gt; &gt; Так понимаю, ты собирался повесить на bash-completion-elogind.
&gt; 
&gt; Да. Но, если подумать, то лучше решать проблему в systemd.
&gt; Всё-таки /usr/share/bash-completion/completions/loginctl не обязаны быть
&gt; идентичными для elogind и systemd.
&gt; А потому правильным решением будет перенести
&gt; /usr/share/bash-completion/completions/* из systemd-utils в systemd-services,
&gt; где в основном и находятся утилиты, для которых предназначены bash-completion.
&gt; А главное не нужно порождать ещё один конфликт.
&gt; 

Пакет apt-conf-ignore-systemd предназначен для блокирования установки пакетов systemd{,-services,-sysvinit} в системы на sysvinit.

И если /usr/share/bash-completion/completions/* из systemd-utils

# rpm -ql systemd-utils | grep bash-completion | wc -l
24

# rpm -ql systemd-utils | grep completions | grep localectl 
/usr/share/bash-completion/completions/localectl

перенести в systemd-services, то при наличии apt-conf-ignore-systemd в системе на sysv, apt заблокирует установку systemd-services в систему на sysv и конфликт не возникнет.

При этом systemd-services в конфликтах elogind, - или sysv или systemd:

# apt-cache show elogind | grep ^Conflict
Conflicts: ConsoleKit2, ConsoleKit2-x11, systemd, systemd-services</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185341</commentid>
    <comment_count>4</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2019-11-06 06:11:31 +0300</bug_when>
    <thetext>systemd-1:243-alt4 -&gt; sisyphus:

Tue Nov 05 2019 Alexey Shabalin &lt;shaba@altlinux&gt; 1:243-alt4
- move completions to systemd-services (ALT #37352)
- group add vmusers in pre for udev package (ALT #37200)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>185371</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2019-11-06 20:18:15 +0300</bug_when>
    <thetext>Лёш, спасибо!</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>