LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Fedora (http://www.linuxquestions.org/questions/fedora-35/)
-   -   vim-common and vim-minimal conflicts Fedora19 (http://www.linuxquestions.org/questions/fedora-35/vim-common-and-vim-minimal-conflicts-fedora19-4175473680/)

jason_m 08-16-2013 09:43 PM

vim-common and vim-minimal conflicts Fedora19
 
Hello,

I recently installed Fedora 19. The version of vim that came with the install comes from the vim-minimal package which does not have syntax/coloring support, among other features.

I tried to install vim-enhanced, but one of its dependencies, vim-common, conflicts with vim-minimal (over a man page file):
Code:

Transaction check error:
  file /usr/share/man/man1/vim.1.gz from install of vim-common-2:7.4.0-2.fc19.x86_64 conflicts with file from package vim-minimal-2:7.3.1314-1.fc19.x86_64

So the obvious next step would be to remove vim-minimal. However, sudo depends on vim-minimal:
Code:

Dependencies Resolved

================================================================================
 Package      Arch    Version              Repository                    Size
================================================================================
Removing:
 vim-minimal  x86_64  2:7.3.1314-1.fc19    @updates                      856 k
Removing for dependencies:
 sudo        x86_64  1.8.6p7-1.fc19        @koji-override-0/$releasever  2.4 M

Transaction Summary
================================================================================
Remove  1 Package (+1 Dependent package)

Is it not possible to have vim-enhanced and sudo on the same system? That seems silly, especially since the conflict is over a man file. I don't know what sudo needs with vim, but it seems like either should satisfy the dependency.

I thought this would be a common problem, but I couldn't find much searching around.

This person ran into the conflict about a year ago, so it isn't new. No mention of sudo in that thread.
http://www.linuxquestions.org/questi...im-4175412031/

Thanks

John VV 08-17-2013 02:31 PM

i would start with setting "yum-priorities" so that the "koji" repo is a lower priority
and dose not replace fedora updates installed rpm's

if yum-priorities is not installed INSTALL IT and configure it !

this plugin is needed with "third party repos" do to the very well documented issues with third party repos

jason_m 08-17-2013 08:17 PM

Thanks for the reply. I have never set priorities before, I didn't know it was something I could configure. For others reading this, the package is called yum-plugin-priorities, at least in Fedora 19.

I've installed the plugin, but then when I went to /etc/yum.repos.d, I was expecting to find something with kojo in the name. However, there was no such repository file:
Code:

[jason@booky yum.repos.d]$ ls
adobe-linux-x86_64.repo      rpmfusion-free-updates.repo
fedora.repo                  rpmfusion-free-updates-testing.repo
fedora-updates.repo          rpmfusion-nonfree-rawhide.repo
fedora-updates-testing.repo  rpmfusion-nonfree.repo
rpmfusion-free-rawhide.repo  rpmfusion-nonfree-updates.repo
rpmfusion-free.repo          rpmfusion-nonfree-updates-testing.repo
[jason@booky yum.repos.d]$

This is only a couple days old install of Fedora. As you can see, I've added an adobe repo in order to get a flash plugin, and rpmfusion for some multimedia packages.

Getting back to the original question though, I don't think it is just a matter of repositories. I have found a couple threads on the topic on the fedora forums. This was a recent discussion, which also contains one work-around (install sudo, then remove vim-minimal, but skip removing dependencies).
http://forums.fedoraforum.org/showthread.php?t=292058

I don't know enough about the visudo requirements at this point, but my current understanding is that at compile time, a list of one or more allowable editors is passed in. The default behavior of visudo is to only check for those default(s) (the man page more fully describes the bahavior). "vi" (as installed by the vim-minimal package is the typical default. Whether other editors are also passed in at compile time (such as "vim"), I do not know. Alternatively, visudo can be built with a flag that would allow it to respect the EDITOR or VISUAL environment variables. Whether visudo as packed by Fedora was built that way, I do not know.

It still seems silly to me to have a hard requirement on vim-minimal. I'm still formulating my thoughts because I might try to open a bug report if I can put together a convincing enough argument. Here's what I've got so far:

- By default, the system comes with vi and sudo. In this state, visudo will work as expected.
- sudo is generally useful, and losing the ability to use visudo is not, in my opinion, catastrophic
- A user would have to make a deliberate decision to uninstall vim-minimal. If such a deliberate decision is made, would it be unacceptable to lose the ability to use visudo?
- I have a hypothesis that the majority of users making a deliberate decision to remove vim-minimal are doing such so that they can install vim-enhanced (why else would you actively uninstall an editor?)
- From the thread I linked to above, it seems visudo works with vim (the author of the post didn't mention having to set any environment variables, so it seems visudo may have been compiled to check for vim specifically)
- Losing sudo entirely seems more detrimental to system administration that losing the ability to run visudo

For these reasons, I don't think the current dependency situation is ideal. Maybe the dependency should just be removed. Again - in its default state, the system will work. For visudo to (potentially) stop working, a user would have to take the deliberate action of removing vim-minimal. In this case, remove a basic editor at your own risk.

Additionally, I wonder if creating a symlink vi -> vim would work with visudo?

There is some tinkering I can do to answer some of these questions. But as of now, these are my thoughts on the issue. I mostly use my machine for development, and make heavy use of vim, especially for python and html editing. I really like having the syntax/coloring support. I run Fedora on my personal computers, only have a single user on them, and before yesterday, have never used or heard of (or had a reason for using) visudo. I understand its usefulness and a desire not to provide sudo without a proper means for configuring it, but my reasons for disagreeing are above.

I'm curious what others think.

tomwest 08-17-2013 10:11 PM

Hello jason,

I'm not sure that I understand everything you have explained, but here are my installed vi and sudo programs:

vim-common-7.3.944-1.fc19.i686
vim-enhanced-7.3.944-1.fc19.i686
vim-filesystem-7.3.944-1.fc19.i686
vim-minimal-7.3.944-1.fc19.i686
vim-X11-7.3.944-1.fc19.i686
sudo-1.8.6p7-1.fc19.i686

and it all works.

John VV 08-17-2013 11:52 PM

Hi jason_m for one running "ls" on the yum.d folder dose not tell us much
for example :
"fedora-updates-testing.repo"
"rpmfusion-free-rawhide.repo" are disabled by DEFAULT
that is unless you turned them on

a much better command to run is this
Code:

su -
yum repolist all

that outputs a list of every installed repo AND if it is turned ON or OFF

if you are wondering the "rawhide" should not even be in there
"rawhide" is the NEXT version of fedora right now that is 'Fedora 20' ALPHA testing ONLY

and "fedora-updates-testing.repo " is beta testing of the new rpm's about to be placed in the official "updates"
they WILL and do cause conflicts
that should be disabled


as to "yum"
you might want to start with the documentation
see section # 5
http://docs.fedoraproject.org/en-US/...ide/index.html
and a good doc for that plugin is the CentOS / RHEL
http://wiki.centos.org/PackageManagement/Yum/Priorities


for a new user a very good guid / help page is Mjmwired's
http://www.mjmwired.net/resources/mjm-fedora-f19.html
and of course the FedoraForum.org
http://www.fedoraforum.org/

jason_m 08-18-2013 11:52 AM

Quote:

Originally Posted by tomwest (Post 5011169)
Hello jason,

I'm not sure that I understand everything you have explained, but here are my installed vi and sudo programs:

vim-common-7.3.944-1.fc19.i686
vim-enhanced-7.3.944-1.fc19.i686
vim-filesystem-7.3.944-1.fc19.i686
vim-minimal-7.3.944-1.fc19.i686
vim-X11-7.3.944-1.fc19.i686
sudo-1.8.6p7-1.fc19.i686

and it all works.

tomwest, that is interesting. I could not install vim-common until removing vim-minimal. I see that you are pulling the i686 packages, whereas I am pulling the x86_64 packages. It seems like maybe the conflict doesn't exist between the i686 packages?

Code:

[jason@booky ~]$ yum list vim-common vim-enhanced vim-filesystem vim-minimal sudo
Loaded plugins: langpacks, priorities, refresh-packagekit
Installed Packages
vim-common.x86_64                      2:7.4.0-2.fc19                  @updates
vim-enhanced.x86_64                    2:7.4.0-2.fc19                  @updates
vim-filesystem.x86_64                  2:7.4.0-2.fc19                  @updates
Available Packages
sudo.x86_64                            1.8.6p7-1.fc19                  fedora 
vim-minimal.x86_64                    2:7.4.0-2.fc19                  updates


jason_m 08-18-2013 12:02 PM

After my last post, I noticed that the vim packages are all now up to version 7.4.0, whereas in my original post, you can see that the other day I was working with 7.3.X. I just did a 'yum install vim-minimal' and it worked! So it seems to me like this issue was _just_ resolved.

You can see from my original post that there was a conflict, and there is a bug report about this conflict going all the way back to 2005 (https://bugzilla.redhat.com/show_bug.cgi?id=164982). Just seems to be a case of excellent timing. My issue appears resolved

John VV, I'll take a look at the links you provided. Admittedly, I'm not very familiar with yum. I'm a recent convert from debian/ubuntu systems (in fact, I'm typing this reply from an ubuntu system.) And I was no expert with apt either. I can install, show/info, and remove. Outside of that I just hope for the best - all the rest falls on the repo maintainers, right :)


All times are GMT -5. The time now is 07:34 AM.