Hello,
Till proposed in bugzilla #311061 to use alternatives in vim-enhanced and vim-X11 so that both of them can provide /usr/bin/vim. His reasoning as that when gvim gets started as vim (via a symlink) it opens the text mode vim with the additional benefit of xterm clipboard support.
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Karsten
-- Karsten Hopp | Mail: karsten@redhat.de Red Hat Deutschland | Tel: +49-711-96437-0 Hauptstaetterstr.58 | Fax: +49-711-613590 D-70178 Stuttgart | http://www.redhat.de
On Tue January 15 2008, Karsten Hopp wrote:
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Ah, the only possible problem I can think of would be that an "update" from vim-enhanced to vim-X11 may not be possible. It should be possbile to do
# yum install vim-enhanced # yum install vim-X11
and then vim-enhanced would be removed and vim-X11 installed. I do not know, whether this works with only Conflicts: or if e.g. a Obsoletes: or something else then needs to be added to vim-X11.
Regards, Till
On Tue January 15 2008, Till Maas wrote:
On Tue January 15 2008, Karsten Hopp wrote:
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Ah, the only possible problem I can think of would be that an "update" from vim-enhanced to vim-X11 may not be possible. It should be possbile to do
Using alternatives would make it easier for users in another case, too. When someone wants to remove X11 from a default Fedora install ans still keep his favourite editor. Then one could install both vim-X11 and vim-enhanced and after removing X11, vim-enhanced would be still there.
Regards, Till
Till Maas (opensource@till.name) said:
On Tue January 15 2008, Till Maas wrote:
On Tue January 15 2008, Karsten Hopp wrote:
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Ah, the only possible problem I can think of would be that an "update" from vim-enhanced to vim-X11 may not be possible. It should be possbile to do
Using alternatives would make it easier for users in another case, too. When someone wants to remove X11 from a default Fedora install ans still keep his favourite editor. Then one could install both vim-X11 and vim-enhanced and after removing X11, vim-enhanced would be still there.
Define 'X11'. You can remove the servers just fine.
Bill
On Tue January 15 2008, Bill Nottingham wrote:
Till Maas (opensource@till.name) said:
On Tue January 15 2008, Till Maas wrote:
On Tue January 15 2008, Karsten Hopp wrote:
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Ah, the only possible problem I can think of would be that an "update" from vim-enhanced to vim-X11 may not be possible. It should be possbile to do
Using alternatives would make it easier for users in another case, too. When someone wants to remove X11 from a default Fedora install ans still keep his favourite editor. Then one could install both vim-X11 and vim-enhanced and after removing X11, vim-enhanced would be still there.
Define 'X11'. You can remove the servers just fine.
The X11 that gives the vim-X11 package its name. To be more precise, I meant with X11 every package that provides a requirement for vim-X11, that vim-enhanced does not have.
Regards, Till
Till Maas (opensource@till.name) said:
Define 'X11'. You can remove the servers just fine.
The X11 that gives the vim-X11 package its name. To be more precise, I meant with X11 every package that provides a requirement for vim-X11, that vim-enhanced does not have.
I just don't see what having a separate package *just* for that gains you, especially with the complicated lengths suggested in this thread to maintain it? (alternatives is never the answer...)
Bill
On Tue January 15 2008, Bill Nottingham wrote:
Till Maas (opensource@till.name) said:
Define 'X11'. You can remove the servers just fine.
The X11 that gives the vim-X11 package its name. To be more precise, I meant with X11 every package that provides a requirement for vim-X11, that vim-enhanced does not have.
I just don't see what having a separate package *just* for that gains you, especially with the complicated lengths suggested in this thread to maintain it? (alternatives is never the answer...)
I do not know, whether or not seperating vim-X11 and vim-enhanced is worth it. This is only what is currently the case. All I want to achive is that the /usr/bin/gvim binary from vim-X11 will have symlinks with the names {vim,vimdiff,ex,view,rview,rvim,vimtutor} in /usr/bin. So now there are three ways to do it:
1) use Conflicts 2) use alternatives 3) use the binary from vim-X11 in vim-enhanced instead
Is there an easy way to compare the amount of packages that need to be installed for vim-X11 but do not need to be installed for vim-enhanced?
Regards, Till
Till Maas wrote:
I do not know, whether or not seperating vim-X11 and vim-enhanced is worth it. This is only what is currently the case. All I want to achive is that the /usr/bin/gvim binary from vim-X11 will have symlinks with the names {vim,vimdiff,ex,view,rview,rvim,vimtutor} in /usr/bin. So now there are three ways to do it:
- use Conflicts
- use alternatives
- use the binary from vim-X11 in vim-enhanced instead
And 1 really isn't an option. fedora ninjas will find you in your sleep...
-- Rex
2008/1/15, Till Maas opensource@till.name:
Is there an easy way to compare the amount of packages that need to be installed for vim-X11 but do not need to be installed for vim-enhanced?
Here's the list of packages that are required by vim-X11 and NOT required by vim-enhanced:
atk-1.20.0-1.fc8.x86_64 cairo-1.4.12-1.fc8.x86_64 glib2-2.14.4-1.fc8.x86_64 gtk2-2.12.3-3.fc8.i386 gtk2-2.12.3-3.fc8.x86_64 libICE-1.0.4-2.fc8.x86_64 libSM-1.0.2-4.fc8.x86_64 libX11-1.1.3-4.fc8.x86_64 libXt-1.0.4-3.fc8.x86_64 libattr-2.4.38-2.fc8.i386 libattr-2.4.38-2.fc8.x86_64 pango-1.18.3-1.fc8.x86_64
Michał Bentkowski (mr.ecik@gmail.com) said:
2008/1/15, Till Maas opensource@till.name:
Is there an easy way to compare the amount of packages that need to be installed for vim-X11 but do not need to be installed for vim-enhanced?
Here's the list of packages that are required by vim-X11 and NOT required by vim-enhanced:
atk-1.20.0-1.fc8.x86_64 cairo-1.4.12-1.fc8.x86_64 glib2-2.14.4-1.fc8.x86_64 gtk2-2.12.3-3.fc8.i386 gtk2-2.12.3-3.fc8.x86_64 libICE-1.0.4-2.fc8.x86_64 libSM-1.0.2-4.fc8.x86_64 libX11-1.1.3-4.fc8.x86_64 libXt-1.0.4-3.fc8.x86_64 libattr-2.4.38-2.fc8.i386 libattr-2.4.38-2.fc8.x86_64 pango-1.18.3-1.fc8.x86_64
If you extrapolate that out to their deps, you get:
atk-1.21.5-1.fc9 cairo-1.5.4-1.fc9 cups-libs-1.3.5-1.fc9 fontconfig-2.5.0-1.fc9 freetype-2.3.5-3.fc8 gamin-0.1.9-4.fc8 glib2-2.15.2-1.fc9 gnutls-2.0.4-1.fc9 gtk2-2.12.5-1.fc9 hicolor-icon-theme-0.10-4 libgcrypt-1.4.0-1 libgpg-error-1.6-1 libICE-1.0.4-2.fc8 libjpeg-6b-40.fc9 libpng-1.2.22-1.fc8 libSM-1.0.2-4.fc8 libthai-0.1.9-2.fc9 libtiff-3.8.2-9.fc8 libX11-1.1.3-4.fc8 libXau-1.0.3-3.fc8 libxcb-1.1-1.fc9 libXcomposite-0.4.0-3.fc8 libXcursor-1.1.9-1.fc8 libXdmcp-1.0.2-4.fc8 libXext-1.0.1-5.fc9 libXfixes-4.0.3-2.fc8 libXft-2.1.12-3.fc8 libXi-1.1.3-3.fc9 libXinerama-1.0.2-3.fc8 libXrandr-1.2.2-2.fc9 libXrender-0.9.4-2.fc9 libXt-1.0.4-4.fc9 pango-1.19.2-1.fc9 pixman-0.9.6-3.fc9 xorg-x11-filesystem-7.1-2.fc6
34 packages. 54MB on disk (x86_64).
Bill
On Tue January 15 2008, Bill Nottingham wrote:
Michał Bentkowski (mr.ecik@gmail.com) said:
2008/1/15, Till Maas opensource@till.name:
Is there an easy way to compare the amount of packages that need to be installed for vim-X11 but do not need to be installed for vim-enhanced?
Here's the list of packages that are required by vim-X11 and NOT required by vim-enhanced:
[...]
If you extrapolate that out to their deps, you get:
[...]
34 packages. 54MB on disk (x86_64).
How did you generate these lists? The only way I found, was to compare the output of "fakeroot yum --installroot=/tmp/foo install $package" (after hardcoding releasever=7 in /usr/lib/python2.5/site-packages/yum/config.py btw.).
Regards, Till
Till Maas (opensource@till.name) said:
If you extrapolate that out to their deps, you get:
[...]
34 packages. 54MB on disk (x86_64).
How did you generate these lists? The only way I found, was to compare the output of "fakeroot yum --installroot=/tmp/foo install $package" (after hardcoding releasever=7 in /usr/lib/python2.5/site-packages/yum/config.py btw.).
mkdir /tmp/whererver, yum --installroot /tmp/wherever install vim-X11.
Bill
On Tuesday 15 January 2008, Till Maas wrote:
I do not know, whether or not seperating vim-X11 and vim-enhanced is worth it. This is only what is currently the case. All I want to achive is that the /usr/bin/gvim binary from vim-X11 will have symlinks with the names {vim,vimdiff,ex,view,rview,rvim,vimtutor} in /usr/bin. So now there are three ways to do it:
- use Conflicts
- use alternatives
- use the binary from vim-X11 in vim-enhanced instead
I wouldn't like any of the above. But didn't someone already suggest:
4) Use wrapper scripts in /usr/bin/{vim,vimdiff,ex,view,rview,rvim,vimtutor} that first look for the -X11 executables, then -enhanced. Maybe something like:
#!/bin/sh exe=${0##*/} vim=/usr/libexec/vim/enhanced/$exe if [ -x /usr/libexec/vim/X11/$exe ] ; then # maybe test "-n $DISPLAY" here too vim=/usr/libexec/vim/X11/$exe fi exec $vim "$@"
...and ship it in vim-enhanced, and make vim-X11 require it (and obviously set up so that the desired executables/links are found in /usr/libexec/vim/{enhanced,X11})?
2008/1/15, Ville Skyttä ville.skytta@iki.fi:
I wouldn't like any of the above. But didn't someone already suggest:
- Use wrapper scripts in /usr/bin/{vim,vimdiff,ex,view,rview,rvim,vimtutor}
that first look for the -X11 executables, then -enhanced. Maybe something like:
#!/bin/sh exe=${0##*/} vim=/usr/libexec/vim/enhanced/$exe if [ -x /usr/libexec/vim/X11/$exe ] ; then # maybe test "-n $DISPLAY" here too vim=/usr/libexec/vim/X11/$exe fi exec $vim "$@"
...and ship it in vim-enhanced, and make vim-X11 require it (and obviously set up so that the desired executables/links are found in /usr/libexec/vim/{enhanced,X11})?
Yes, that's what I suggested and it still seems to me it's the best solution. Still thinking though whether there should be a way to choose one's preferred vim when both are installed. For some reasons (no idea what reasons that can be) user may want to prefer -enhanced to -X11.
On Tue January 15 2008, Ville Skyttä wrote:
- Use wrapper scripts in
/usr/bin/{vim,vimdiff,ex,view,rview,rvim,vimtutor} that first look for the -X11 executables, then -enhanced. Maybe something like:
Why is this better than using alternatives? Using alternatives recommended in http://fedoraproject.org/wiki/Packaging/Conflicts#head-f0b97bf1035a16427332c... (Binary Name Conflicts).
Regards, Till
On Wed, Jan 16, 2008 at 10:11:47AM +0100, Till Maas wrote:
On Tue January 15 2008, Ville Skyttä wrote:
- Use wrapper scripts in
/usr/bin/{vim,vimdiff,ex,view,rview,rvim,vimtutor} that first look for the -X11 executables, then -enhanced. Maybe something like:
Why is this better than using alternatives? Using alternatives recommended in http://fedoraproject.org/wiki/Packaging/Conflicts#head-f0b97bf1035a16427332c... (Binary Name Conflicts).
This is only a suggestion, and it is right like that, it is better to avoid guidelines on that and let the packager choose what he prefers in such cases.
-- Pat
Karsten Hopp wrote:
Hello,
Till proposed in bugzilla #311061 to use alternatives in vim-enhanced and vim-X11 so that both of them can provide /usr/bin/vim. His reasoning as that when gvim gets started as vim (via a symlink) it opens the text mode vim with the additional benefit of xterm clipboard support.
This can be turned on in vim-enhanced just by adding a few flags to the spec. It seems not to cause any trouble without an X server too. I've done it on RHEL.
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Karsten
-- Karsten Hopp | Mail: karsten@redhat.de Red Hat Deutschland | Tel: +49-711-96437-0 Hauptstaetterstr.58 | Fax: +49-711-613590 D-70178 Stuttgart | http://www.redhat.de
On Tue, Jan 15, 2008 at 02:39:47PM +0100, Karsten Hopp wrote:
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
I would strongly disagree that vim-enhanced is only of use on systems without X11/gtk.
vim is far more pratical on an terminal emulator than gvim, even on a system with X11/gtk.
Rui
On Tue January 15 2008, Rui Miguel Silva Seabra wrote:
vim is far more pratical on an terminal emulator than gvim, even on a system with X11/gtk.
The gvim binary runs without any problems in an terminal emulator or a terminal when it is run with the name vim. Or do you know anything that breaks then? Btw. you can test it with:
cd /tmp ln -s /usr/bin/gvim vim /tmp/vim
Regards, Till
On Tue, 2008-01-15 at 14:39 +0100, Karsten Hopp wrote:
I agree with the /usr/bin/vim stuff, but I think a better solution would be to add a conflict between vim-X11 and vim-enhanced. vim-enhanced is only of use on systems without X11/gtk. On all other systems vim-X11 can provide the same (and more) functionality as vim-enhanced.
Conflicts make the user experience of installing software incredibly painful. You end up in the dialog hell of "which option do you want" between options which are largely the same. As an end-user, how would I conceivably know the "right" thing to pick between vim-X11 and vim-enhanced?
Just say no to conflicts.
Jeremy
packaging@lists.fedoraproject.org