[arch-dev-public] Dropping vi and adding vim-minimal to the installation image
This was discussed about two years ago but no action was taken. The proposal is simple: - Drop the vi package from the repos - Add vim-minimal to the installation image This seems like a good idea because the vi editor we ship is about 10 years old and it has never behaved correctly for me. It was brought up that some applications hardcode vi as their fallback editor, but I think it should be up to the user to configure proper EDITOR or VISUAL environment variables. During installation, none of these programs needs to launch an editor (perhaps with the exception of visudo which I can configure to search for vim). [1] I did a test ISO build replacing vi with vim-minimal and the image size increased by about 15 MiB. If there are no objections until mid-April, I suggest we implement this in the May snapshot. [1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
+1 given I was annoyed by vi again just yesterday (and many times before).
Hi On Sun, Mar 29, 2015 at 8:15 AM, Evangelos Foutras <evangelos@foutrelis.com> wrote:
This was discussed about two years ago but no action was taken.
The proposal is simple:
- Drop the vi package from the repos - Add vim-minimal to the installation image
Fine with me. Go ahead.
This seems like a good idea because the vi editor we ship is about 10 years old and it has never behaved correctly for me.
It was brought up that some applications hardcode vi as their fallback editor, but I think it should be up to the user to configure proper EDITOR or VISUAL environment variables. During installation, none of these programs needs to launch an editor (perhaps with the exception of visudo which I can configure to search for vim). [1]
I did a test ISO build replacing vi with vim-minimal and the image size increased by about 15 MiB.
If there are no objections until mid-April, I suggest we implement this in the May snapshot.
[1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
On 29 March 2015 at 18:07, Anatol Pomozov <anatol.pomozov@gmail.com> wrote:
Hi
On Sun, Mar 29, 2015 at 8:15 AM, Evangelos Foutras <evangelos@foutrelis.com> wrote:
This was discussed about two years ago but no action was taken.
The proposal is simple:
- Drop the vi package from the repos - Add vim-minimal to the installation image
Fine with me. Go ahead.
This seems like a good idea because the vi editor we ship is about 10 years old and it has never behaved correctly for me.
It was brought up that some applications hardcode vi as their fallback editor, but I think it should be up to the user to configure proper EDITOR or VISUAL environment variables. During installation, none of these programs needs to launch an editor (perhaps with the exception of visudo which I can configure to search for vim). [1]
I did a test ISO build replacing vi with vim-minimal and the image size increased by about 15 MiB.
If there are no objections until mid-April, I suggest we implement this in the May snapshot.
[1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
+1, glad to see this on the roadmap again. J. Leclanche
On 30/03/15 01:15, Evangelos Foutras wrote:
This was discussed about two years ago but no action was taken.
The proposal is simple:
- Drop the vi package from the repos - Add vim-minimal to the installation image
This seems like a good idea because the vi editor we ship is about 10 years old and it has never behaved correctly for me.
It was brought up that some applications hardcode vi as their fallback editor, but I think it should be up to the user to configure proper EDITOR or VISUAL environment variables. During installation, none of these programs needs to launch an editor (perhaps with the exception of visudo which I can configure to search for vim). [1]
Or... just add a symlink from vim to vi?
I did a test ISO build replacing vi with vim-minimal and the image size increased by about 15 MiB.
If there are no objections until mid-April, I suggest we implement this in the May snapshot.
[1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
On Monday 30 March 2015 08:29:44 Allan McRae wrote:
Or... just add a symlink from vim to vi?
+1 to this point. At least to provide a smooth transition from UNIX to Arch (afair vi should be in the system due to UNIX standard). -- Sincerely yours, Evgeniy Alekseev email: darkarcanis@mail.ru ICQ: 407-398-235 Jabber: arcanis@jabber.ru
On 30/03/15 08:29, Allan McRae wrote:
On 30/03/15 01:15, Evangelos Foutras wrote:
This was discussed about two years ago but no action was taken.
The proposal is simple:
- Drop the vi package from the repos - Add vim-minimal to the installation image
This seems like a good idea because the vi editor we ship is about 10 years old and it has never behaved correctly for me.
It was brought up that some applications hardcode vi as their fallback editor, but I think it should be up to the user to configure proper EDITOR or VISUAL environment variables. During installation, none of these programs needs to launch an editor (perhaps with the exception of visudo which I can configure to search for vim). [1]
Or... just add a symlink from vim to vi?
What happened to adding a symlink? Now there is no "vi" in base, many packages there are broken out of the box - sudo (visudo), bash (bashbug), less (when pressing v). There is bound to be more... Or are we having all those packages depend on vim? I never had vi installed on my system and had to make the symlink to vim because there was so many things that wanted it. A
On 21/04/15 16:27, Allan McRae wrote:
What happened to adding a symlink? Now there is no "vi" in base, many packages there are broken out of the box - sudo (visudo), bash (bashbug), less (when pressing v). There is bound to be more...
Or are we having all those packages depend on vim?
td;dr: No symlink; instead, let's configure those programs to use nano. During the previous discussion, Alexander posted a list of applications that depend on vi. [1] Based on that list, the following packages can be configured at compile time to use an editor other than vi: sudo less util-linux shadow It's not mentioned on the list, but cronie also accepts a ./configure flag to set the default editor. The remaining use cases seem small enough that relying on VISUAL/EDITOR for those doesn't sound too bad. The real question is, what do we set the default editor to; nano (in [core] and part of the base group so it gets installed by default) or vim (highly preferred choice for some people, but not in [core])? What we are looking for here is a sane default, so nano seems like the better choice. If nobody complains too loudly, I'll switch sudo, less, util-linux, shadow and cronie to use nano by default in a couple of days. [1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
On 21 April 2015 at 22:32, Evangelos Foutras <evangelos@foutrelis.com> wrote:
On 21/04/15 16:27, Allan McRae wrote:
What happened to adding a symlink? Now there is no "vi" in base, many packages there are broken out of the box - sudo (visudo), bash (bashbug), less (when pressing v). There is bound to be more...
Or are we having all those packages depend on vim?
td;dr: No symlink; instead, let's configure those programs to use nano.
During the previous discussion, Alexander posted a list of applications that depend on vi. [1]
Based on that list, the following packages can be configured at compile time to use an editor other than vi:
sudo less util-linux shadow
It's not mentioned on the list, but cronie also accepts a ./configure flag to set the default editor.
The remaining use cases seem small enough that relying on VISUAL/EDITOR for those doesn't sound too bad.
The real question is, what do we set the default editor to; nano (in [core] and part of the base group so it gets installed by default) or vim (highly preferred choice for some people, but not in [core])?
What we are looking for here is a sane default, so nano seems like the better choice. If nobody complains too loudly, I'll switch sudo, less, util-linux, shadow and cronie to use nano by default in a couple of days.
[1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
As long as the EDITOR variable is supported by those programs, maybe yes. But I don't think creating a symlink *anyway* and make vim provide vi is inappropriate. J. Leclanche
On 21/04/15 23:45, Jerome Leclanche wrote:
As long as the EDITOR variable is supported by those programs, maybe yes. But I don't think creating a symlink *anyway* and make vim provide vi is inappropriate.
Yes, the VISUAL/EDITOR environment variables should still be honored by these applications. It's only the default fallback editor that is going to change. I'm slightly against adding a vi symlink. That suggestion made sense so as not to break programs that use vi as their default editor. With nano as the default editor, there's no technical reason to do this anymore.
On 22/04/15 07:00, Evangelos Foutras wrote:
On 21/04/15 23:45, Jerome Leclanche wrote:
As long as the EDITOR variable is supported by those programs, maybe yes. But I don't think creating a symlink *anyway* and make vim provide vi is inappropriate.
Yes, the VISUAL/EDITOR environment variables should still be honored by these applications. It's only the default fallback editor that is going to change.
I'm slightly against adding a vi symlink. That suggestion made sense so as not to break programs that use vi as their default editor. With nano as the default editor, there's no technical reason to do this anymore.
I think the symlink is very important. And I am very against VIsudo calling anything other than vi by default. Unless you rename it nanosudo. A
On 22/04/15 00:49, Allan McRae wrote:
On 22/04/15 07:00, Evangelos Foutras wrote:
On 21/04/15 23:45, Jerome Leclanche wrote:
As long as the EDITOR variable is supported by those programs, maybe yes. But I don't think creating a symlink *anyway* and make vim provide vi is inappropriate.
Yes, the VISUAL/EDITOR environment variables should still be honored by these applications. It's only the default fallback editor that is going to change.
I'm slightly against adding a vi symlink. That suggestion made sense so as not to break programs that use vi as their default editor. With nano as the default editor, there's no technical reason to do this anymore.
I think the symlink is very important. And I am very against VIsudo calling anything other than vi by default. Unless you rename it nanosudo.
The problem is that vim is not provided in [core] and cannot be part of a base installation. We can't make an editor from [extra] the default. I'm open to suggestions, but consider that nano is the only remaining editor in [core]. (And it will work fine as a fallback editor.)
On Wed, Apr 22, 2015 at 12:03 AM, Evangelos Foutras <evangelos@foutrelis.com> wrote:
On 22/04/15 00:49, Allan McRae wrote:
I think the symlink is very important. And I am very against VIsudo calling anything other than vi by default. Unless you rename it nanosudo.
The problem is that vim is not provided in [core] and cannot be part of a base installation. We can't make an editor from [extra] the default.
I'm open to suggestions, but consider that nano is the only remaining editor in [core]. (And it will work fine as a fallback editor.)
If that's your condition I'm for bringing vim-minimal into [core]. Leave the other vim variants in [extra].
On 22/04/15 01:05, Jan Alexander Steffens wrote:
On Wed, Apr 22, 2015 at 12:03 AM, Evangelos Foutras <evangelos@foutrelis.com> wrote:
On 22/04/15 00:49, Allan McRae wrote:
I think the symlink is very important. And I am very against VIsudo calling anything other than vi by default. Unless you rename it nanosudo.
The problem is that vim is not provided in [core] and cannot be part of a base installation. We can't make an editor from [extra] the default.
I'm open to suggestions, but consider that nano is the only remaining editor in [core]. (And it will work fine as a fallback editor.)
If that's your condition I'm for bringing vim-minimal into [core]. Leave the other vim variants in [extra].
While this solution is acceptable, I believe it's a bit of an overkill. But if Anatol is fine with maintaining vim-{minimal,runtime} in [core], then let's go with vim. (And also include vi symlinks I guess!)
On 22/04/15 01:30, Evangelos Foutras wrote:
On 22/04/15 01:05, Jan Alexander Steffens wrote:
On Wed, Apr 22, 2015 at 12:03 AM, Evangelos Foutras <evangelos@foutrelis.com> wrote:
On 22/04/15 00:49, Allan McRae wrote:
I think the symlink is very important. And I am very against VIsudo calling anything other than vi by default. Unless you rename it nanosudo.
The problem is that vim is not provided in [core] and cannot be part of a base installation. We can't make an editor from [extra] the default.
I'm open to suggestions, but consider that nano is the only remaining editor in [core]. (And it will work fine as a fallback editor.)
If that's your condition I'm for bringing vim-minimal into [core]. Leave the other vim variants in [extra].
While this solution is acceptable, I believe it's a bit of an overkill. But if Anatol is fine with maintaining vim-{minimal,runtime} in [core], then let's go with vim. (And also include vi symlinks I guess!)
By the way, it's worth noting that vim-minimal has a footprint of about 30 MiB. It's not much, but compared to nano's 2 MiB, it's way larger. I'm probably repeating what I've written in my previous posts, but to me the cleanest implementation is to have one tiny editor in [core] as part of the base installation (nano), and use that as the fallack for the five or so programs that used to default to vi. Adding a second, much larger, editor in [core] and base (vim) just so that it can be made the default fallback, seems kind of unnecessary.
On 22/04/15 08:55, Evangelos Foutras wrote:
On 22/04/15 01:30, Evangelos Foutras wrote:
On 22/04/15 01:05, Jan Alexander Steffens wrote:
On Wed, Apr 22, 2015 at 12:03 AM, Evangelos Foutras <evangelos@foutrelis.com> wrote:
On 22/04/15 00:49, Allan McRae wrote:
I think the symlink is very important. And I am very against VIsudo calling anything other than vi by default. Unless you rename it nanosudo.
The problem is that vim is not provided in [core] and cannot be part of a base installation. We can't make an editor from [extra] the default.
I'm open to suggestions, but consider that nano is the only remaining editor in [core]. (And it will work fine as a fallback editor.)
If that's your condition I'm for bringing vim-minimal into [core]. Leave the other vim variants in [extra].
While this solution is acceptable, I believe it's a bit of an overkill. But if Anatol is fine with maintaining vim-{minimal,runtime} in [core], then let's go with vim. (And also include vi symlinks I guess!)
By the way, it's worth noting that vim-minimal has a footprint of about 30 MiB. It's not much, but compared to nano's 2 MiB, it's way larger.
I'm probably repeating what I've written in my previous posts, but to me the cleanest implementation is to have one tiny editor in [core] as part of the base installation (nano), and use that as the fallack for the five or so programs that used to default to vi.
Adding a second, much larger, editor in [core] and base (vim) just so that it can be made the default fallback, seems kind of unnecessary.
If nano was not in base, what do you think the install proportion would be? This is mainly for consistency. I could not find another distribution where visudo does not call /usr/bin/vi by default (and I saw that provided by vim-minimal a lot). A
On 22/04/15 02:57, Allan McRae wrote:
On 22/04/15 08:55, Evangelos Foutras wrote:
By the way, it's worth noting that vim-minimal has a footprint of about 30 MiB. It's not much, but compared to nano's 2 MiB, it's way larger.
I'm probably repeating what I've written in my previous posts, but to me the cleanest implementation is to have one tiny editor in [core] as part of the base installation (nano), and use that as the fallack for the five or so programs that used to default to vi.
Adding a second, much larger, editor in [core] and base (vim) just so that it can be made the default fallback, seems kind of unnecessary.
If nano was not in base, what do you think the install proportion would be?
This is mainly for consistency. I could not find another distribution where visudo does not call /usr/bin/vi by default (and I saw that provided by vim-minimal a lot).
We're faced with the dilemma of which editor to use as a fallback for a handful of applications. I shouldn't have used the term "default" as it can be incorrectly interpreted as "We're changing the default editor". Yes, we could certainly move vim-minimal to [core]. The downsides would be 1) a 30 MiB increase in the size of the standard installation and 2) having to maintain a package across two repositories. Both are somewhat minor issues, of course. While I prefer and do use vim myself, the extra complexity introduced by maintaining a second editor in [core] isn't justified, considering one can simply install vim, specify set VISUAL=vim and delete nano if they wish. I feel a stronger case would need to be made for moving vim-minimal to [core]. At the moment we're only trying to figure out a sane fallback editor, mostly for visudo and I guess cronie's crontab. nano seems to fit the bill and requires no additional packages in [core] or base. (The fact that visudo has 'vi' in its name isn't a valid argument. :P)
On 22/04/15 10:58, Evangelos Foutras wrote:
I feel a stronger case would need to be made for moving vim-minimal to [core]. At the moment we're only trying to figure out a sane fallback editor, mostly for visudo and I guess cronie's crontab. nano seems to fit the bill and requires no additional packages in [core] or base.
(The fact that visudo has 'vi' in its name isn't a valid argument. :P)
No - the fact the every other distribution uses a "vi" for visudo by default is the argument. Or at least I have failed to find one that does... I'm fairly sure that having a vi installed is in one of the Linux standards. A
vi is required by the POSIX spec and SUSv4 On Tue, Apr 21, 2015 at 8:08 PM, Allan McRae <allan@archlinux.org> wrote:
On 22/04/15 10:58, Evangelos Foutras wrote:
I feel a stronger case would need to be made for moving vim-minimal to [core]. At the moment we're only trying to figure out a sane fallback editor, mostly for visudo and I guess cronie's crontab. nano seems to fit the bill and requires no additional packages in [core] or base.
(The fact that visudo has 'vi' in its name isn't a valid argument. :P)
No - the fact the every other distribution uses a "vi" for visudo by default is the argument. Or at least I have failed to find one that does...
I'm fairly sure that having a vi installed is in one of the Linux standards.
A
On 22/04/15 04:08, Allan McRae wrote:
On 22/04/15 10:58, Evangelos Foutras wrote:
I feel a stronger case would need to be made for moving vim-minimal to [core]. At the moment we're only trying to figure out a sane fallback editor, mostly for visudo and I guess cronie's crontab. nano seems to fit the bill and requires no additional packages in [core] or base.
(The fact that visudo has 'vi' in its name isn't a valid argument. :P)
No - the fact the every other distribution uses a "vi" for visudo by default is the argument. Or at least I have failed to find one that does...
I'm fairly sure that having a vi installed is in one of the Linux standards.
I know it's anecdotal evidence, but I've always removed vi from my systems and never noticed any problems. Adherence to POSIX can be a compelling argument though. All right, let's go with vim-minimal.
On Wed, 22 Apr 2015 04:33:19 +0300 Evangelos Foutras <evangelos@foutrelis.com> wrote:
I know it's anecdotal evidence, but I've always removed vi from my systems and never noticed any problems. Adherence to POSIX can be a compelling argument though.
All right, let's go with vim-minimal.
I haven't seen any problems as well. Probably because I also symlink /usr/bin/vi to vim… BP
On 22/04/15 04:33, Evangelos Foutras wrote:
On 22/04/15 04:08, Allan McRae wrote:
On 22/04/15 10:58, Evangelos Foutras wrote:
I feel a stronger case would need to be made for moving vim-minimal to [core]. At the moment we're only trying to figure out a sane fallback editor, mostly for visudo and I guess cronie's crontab. nano seems to fit the bill and requires no additional packages in [core] or base.
(The fact that visudo has 'vi' in its name isn't a valid argument. :P)
No - the fact the every other distribution uses a "vi" for visudo by default is the argument. Or at least I have failed to find one that does...
I'm fairly sure that having a vi installed is in one of the Linux standards.
I know it's anecdotal evidence, but I've always removed vi from my systems and never noticed any problems. Adherence to POSIX can be a compelling argument though.
All right, let's go with vim-minimal.
OK, we can't go with vim-minimal, and since nano was met with some resistance, I've restored the status quo by putting vi back in [core]: This discussion is now concluded, though I'm sure it'll pop up again at some point in the future. At least we now get vim on the installation image, which solves my main annoyance about vi. :) Commit message with justification for the revert: ================= r237918 | foutrelis | 2015-04-22 21:02:32 +0300 (Wed, 22 Apr 2015) | 15 lines Bring back vi (FS#44604) There was objection to switching the /usr/bin/vi editor fallback of programs like visuo to /usr/bin/nano and the idea of not providing /usr/bin/vi at all goes against POSIX. Considering that dbscripts lack support for pushing split packages into more than one repository, vim-minimal cannot be made available in [core] without maintaining two copies of the PKGBUILD, which is something the vim maintainer would rather not do (understandably so). So, welcome back vi; I didn't miss you one bit. (On the bright side, vim-minimal is included on the installation image.) =================
On 29/03/15 18:15, Evangelos Foutras wrote:
This was discussed about two years ago but no action was taken.
The proposal is simple:
- Drop the vi package from the repos - Add vim-minimal to the installation image
This seems like a good idea because the vi editor we ship is about 10 years old and it has never behaved correctly for me.
It was brought up that some applications hardcode vi as their fallback editor, but I think it should be up to the user to configure proper EDITOR or VISUAL environment variables. During installation, none of these programs needs to launch an editor (perhaps with the exception of visudo which I can configure to search for vim). [1]
I did a test ISO build replacing vi with vim-minimal and the image size increased by about 15 MiB.
If there are no objections until mid-April, I suggest we implement this in the May snapshot.
[1] https://lists.archlinux.org/pipermail/arch-dev-public/2013-January/024357.ht...
I went ahead and filed the following tasks to get this implemented: https://bugs.archlinux.org/task/44603 https://bugs.archlinux.org/task/44604
participants (9)
-
Aaron Griffin
-
Allan McRae
-
Anatol Pomozov
-
Bartłomiej Piotrowski
-
Evangelos Foutras
-
Evgeniy Alekseev
-
Florian Pritz
-
Jan Alexander Steffens
-
Jerome Leclanche