Bug 634673

Summary: dhcp conflicts with different version of dhclient and vice versa
Product: [Fedora] Fedora Reporter: Jiri Popelka <jpopelka>
Component: dhcpAssignee: Jiri Popelka <jpopelka>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 14CC: bernie+fedora, jpopelka
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: dhcp-4.2.0-23.P2.fc15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-12-15 19:04:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jiri Popelka 2010-09-16 16:51:30 UTC
Description of problem:

From https://admin.fedoraproject.org/updates/dhcp-4.2.0-6.fc14

bernie - 2010-09-15 00:54:23
package dhcp conflicts with previous version of dhclient without an explicit Conflicts line

jpopelka - 2010-09-15 08:57:54
Bernie, can you tell me the N-V-R of the 'previous version of dhclient'. I was trying to update from 4.2.0-1.fc14 and 4.1.1-23.P1.fc13 and see no problem. Can you also show me the exact warning ?

bernie - 2010-09-16 07:24:55
I had dhclient-12:4.2.0-1.fc14.x86_64. The problem can be reproduced by upgrading only dhcp without upgrading dhclient as well. Because the packages do not depend on each other, yum will allow this. 

  
Actual results:
---> Package dhcp.x86_64 12:4.2.0-6.fc14 set to be updated
--> Finished Dependency Resolution
Running Transaction Test
Transaction Check Error:
  file /usr/share/man/man5/dhcp-options.5.gz
  from install of dhcp-12:4.2.0-6.fc14.x86_64 conflicts with
  file from package dhclient-12:4.2.0-1.fc14.x86_64

Comment 1 Jiri Popelka 2010-09-16 17:07:02 UTC
dhcp and dhclient packages both ship the same
/usr/share/man/man5/dhcp-eval.5.gz
and
/usr/share/man/man5/dhcp-options.5.gz

so when one/both of these man pages is/are changed (by upstream or by me)
and the user tries to update *only* dhcp or *only* dhclient (s)he gets the conflict, because the files are not the same.

Possibilities:

1) Use Conflicts in spec file:
%package -n dhcp
+Conflicts: dhclient < %{epoch}:%{version}-%{release}
+Conflicts: dhclient > %{epoch}:%{version}-%{release}
%package -n dhclient
+Conflicts: dhcp < %{epoch}:%{version}-%{release}
+Conflicts: dhcp > %{epoch}:%{version}-%{release}
  Results in:
---> Package dhcp.x86_64 12:4.2.0-8.fc14 set to be updated
--> Processing Conflict: 12:dhcp-4.2.0-8.fc14.x86_64 conflicts dhclient < 12:4.2.0-8.fc14
--> Finished Dependency Resolution
Error: dhcp conflicts with dhclient
 You could try using --skip-broken to work around the problem

2) Ship those man pages in only one of the packages (dhcp/dhclient)
  Results in:
User doesn't find the man page (s)he needs when (s)he has installed only the package without these man pages.

3) Close this as wontfix because when I have both dhcp and dhclient installed I don't have reason to update only one of them when both packages are updated in repositories together.

4) Any other solution ?

Comment 2 Jiri Popelka 2010-12-15 19:04:24 UTC
(In reply to comment #1)
> 4) Any other solution ?
dhcp-common sub-package, which contains (among others) both man pages.