Bug 990444 - RFE: please add "mergetool" virtual provides
RFE: please add "mergetool" virtual provides
Status: NEW
Product: Fedora
Classification: Fedora
Component: distribution (Show other bugs)
rawhide
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Radek Vokal
Radek Vokal
: Tracking
Depends On: tkcvs-mergetool 990452 vim-mergetool diffuse-mergetool kdiff3-mergetool meld-mergetool kompare
Blocks: 990467
  Show dependency treegraph
 
Reported: 2013-07-31 04:46 EDT by Karel Volný
Modified: 2015-08-31 08:59 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: vim-mergetool diffuse-mergetool kdiff3-mergetool meld-mergetool tkcvs-mergetool 990452 (view as bug list)
Environment:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Karel Volný 2013-07-31 04:46:37 EDT
There are some utilities that may require a tool to resolve merge conflicts. I refer to bug #982627 for example.

However, Fedora does not provide any common name which would satisfy the dependency, so the package has to require some exact package that provides appropriate tool.

This is less than optimal, because 1) the user preference for the tool used may be completely different than what the dependency pulls in, 2) the author/packager of the utility must keep track about the tool availability and possible conflicts.

The solution would be to create virtual Provides for each package providing the tool, so that the utility that needs it would require this virtual and not concrete package.

Let me propose "mergetool" as a name of this virtual.

- it is selfexplaining and, in addition, users of git are used to it, as there is "git mergetool" command which calls one of the available tools

- it doesn't seem to conflict with anything existing; the two important occurences are as a part of "PDF Merge Tool" name, which is clearly distinguished by the "pdf" prefix, and "Mergetool.com" as a company which provides its own "Mergetool" software that is strongly unlikely to appear in Fedora, if it deals with Microsoft NAV
Comment 3 markusN 2015-08-29 09:57:42 EDT
I just (almost) finished updating F21 -> F22 using fedup. All fine except for a missing merge tool in "rpmconf":

[root@desktop ~]# rpmconf -a
Configuration file '/etc/systemd/journald.conf'
-rw-r--r--. 1 root root 969  4. Aug 08:23 /etc/systemd/journald.conf.rpmnew
-rw-r--r--. 1 root root 808 29. Aug 11:41 /etc/systemd/journald.conf

 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      M     : merge configuration files
      Z     : background this process to examine the situation
      S     : skip this file
 The default action is to keep your current version.
*** aliases (Y/I/N/O/D/M/Z/S) [default=N] ? 
Your choice: D
Configuration file '/etc/systemd/journald.conf'
-rw-r--r--. 1 root root 969  4. Aug 08:23 /etc/systemd/journald.conf.rpmnew
-rw-r--r--. 1 root root 808 29. Aug 11:41 /etc/systemd/journald.conf

 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      M     : merge configuration files
      Z     : background this process to examine the situation
      S     : skip this file
 The default action is to keep your current version.
*** aliases (Y/I/N/O/D/M/Z/S) [default=N] ? 
Your choice: M
ERROR:rpmconf:You did not selected any frontend for merge

[root@desktop ~]# cat /etc/issue
Fedora release 22 (Twenty Two)
Kernel \r on an \m (\l)

Using
rpmconf-1.0.12-1.fc22.noarch

Now what do install?
Comment 4 markusN 2015-08-29 10:42:11 EDT
(for the record: I reached this report thru bug #982627)
Comment 5 Karel Volný 2015-08-31 08:40:30 EDT
(In reply to markusN from comment #3)
> Now what do install?

rpmconf can use one of vimdiff, gvimdiff, meld, diffuse, kdiff3 or anything you set using environment variable 'MERGE' so you're free to choose ... please see the list of bugs this depends on (also 'kompare' provides this functionality)

(In reply to markusN from comment #4)
> (for the record: I reached this report thru bug #982627)

there's a difference between rpmconf and fedora-upgrade - interrupting the latter will leave a messed up system, so it has to require some mergetool to prevent rpmconf bailing out

OTOH, if you run rpmconf manually and it quits unexpectedly, you can install the missing dependency and re-run it without breaking any process

therefore there's no such bug for rpmconf as #982627 for fedora-upgrade
Comment 6 markusN 2015-08-31 08:50:15 EDT
Thanks for your comments, I agree.

Will report an enhancement request against "rpmconf" to provide a better error message (essentially, suggesting at least tell the user to make use of the environment variable 'MERGE'):

Instead of

ERROR:rpmconf:You did not selected any frontend for merge

may it be

ERROR:rpmconf:You did not selected any frontend for merge (define it with environment variable 'MERGE' or flag -f)
Comment 7 markusN 2015-08-31 08:59:03 EDT
(In reply to markusN from comment #6)
> Will report an enhancement request against "rpmconf" to provide a better
> error message

For the record: done, bug #1258464

Note You need to log in before you can comment on or make changes to this bug.