-## Editor:
-# Too many people don't expect to get that, so use it only for grml-small
-# avoid "debug: unbound variable":
-set +u
-if ifclass GRML_SMALL ; then
-set -u
- if [ -r $target/usr/bin/vim.tiny ] ; then
- # update-alternates does not work without /usr/share/man because
- # it configures (in our case non-existent) manpages as well :-/
- # $ROOTCMD update-alternatives --set editor /usr/bin/vim.tiny
- # $ROOTCMD update-alternatives --set vi /usr/bin/vim.tiny
- $ROOTCMD ln -sf /etc/alternatives/editor /usr/bin/editor
- $ROOTCMD ln -sf /usr/bin/vim.tiny /etc/alternatives/editor
- $ROOTCMD ln -sf /etc/alternatives/vi /usr/bin/vi
- $ROOTCMD ln -sf /usr/bin/vim.tiny /etc/alternatives/vi
- fi
+# starting with vim v2:8.1.2136-1 it uses /usr/libexec/vim for the vim.* binaries
+if $ROOTCMD update-alternatives --list editor 2>/dev/null | grep -q /usr/libexec/vim ; then
+ VIM_PATH=/usr/libexec/vim
+else # for backwards compatibility
+ VIM_PATH=/usr/bin
+fi
+
+if $ROOTCMD update-alternatives --list editor 2>/dev/null | grep -q 'vim.gtk3' ; then
+ echo "Setting vim.gtk3 as editor using update-alternatives."
+ $ROOTCMD update-alternatives --set editor "${VIM_PATH}"/vim.gtk3
+ $ROOTCMD update-alternatives --set vi "${VIM_PATH}"/vim.gtk3
+ $ROOTCMD update-alternatives --set vim "${VIM_PATH}"/vim.gtk3
+elif $ROOTCMD update-alternatives --list editor 2>/dev/null | grep -q 'vim.gtk$' ; then
+ echo "Setting vim.gtk as editor using update-alternatives."
+ $ROOTCMD update-alternatives --set editor "${VIM_PATH}"/vim.gtk
+ $ROOTCMD update-alternatives --set vi "${VIM_PATH}"/vim.gtk
+ $ROOTCMD update-alternatives --set vim "${VIM_PATH}"/vim.gtk
+elif $ROOTCMD update-alternatives --list editor 2>/dev/null | grep -q 'vim.basic' ; then
+ echo "Setting vim.basic as editor using update-alternatives."
+ $ROOTCMD update-alternatives --set editor "${VIM_PATH}"/vim.basic
+ $ROOTCMD update-alternatives --set vi "${VIM_PATH}"/vim.basic
+ $ROOTCMD update-alternatives --set vim "${VIM_PATH}"/vim.basic
+elif $ROOTCMD update-alternatives --list editor 2>/dev/null | grep -q 'vim.tiny' ; then
+ echo "Setting vim.tiny as editor using update-alternatives."
+ $ROOTCMD update-alternatives --set editor "${VIM_PATH}"/vim.tiny
+ $ROOTCMD update-alternatives --set vi "${VIM_PATH}"/vim.tiny
+else
+ echo "Warning: No vim binary suitable for update-alternatives found."