#!/bin/bash
-# Filename: /etc/grml/fai/config/scripts/GRMLBASE/90-update-alternatives
+# Filename: ${GRML_FAI_CONFIG}/config/scripts/GRMLBASE/90-update-alternatives
# Purpose: set up /etc/alternatives/* according to grml preferences
# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
set -u
set -e
-## 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
- $ROOTCMD ln -sf /etc/alternatives/vim /usr/bin/vim
- $ROOTCMD ln -sf /usr/bin/vim.tiny /etc/alternatives/vim
- $ROOTCMD ln -sf /etc/alternatives/view /usr/bin/view
- $ROOTCMD ln -sf /usr/bin/vim.tiny /etc/alternatives/view
- fi
-fi
-
-if [ -r $target/usr/bin/vim.basic ] ; then
- $ROOTCMD update-alternatives --set editor /usr/bin/vim.basic
- $ROOTCMD update-alternatives --set vi /usr/bin/vim.basic
- $ROOTCMD update-alternatives --set vim /usr/bin/vim.basic
- $ROOTCMD update-alternatives --set view /usr/bin/vim.basic
-fi
-
-if [ -r $target/usr/bin/vim.gtk ] ; then
- $ROOTCMD update-alternatives --set editor /usr/bin/vim.gtk
- $ROOTCMD update-alternatives --set vi /usr/bin/vim.gtk
- $ROOTCMD update-alternatives --set vim /usr/bin/vim.gtk
- $ROOTCMD update-alternatives --set view /usr/bin/vim.gtk
+if $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 /usr/bin/vim.gtk
+ $ROOTCMD update-alternatives --set vi /usr/bin/vim.gtk
+ $ROOTCMD update-alternatives --set vim /usr/bin/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 /usr/bin/vim.basic
+ $ROOTCMD update-alternatives --set vi /usr/bin/vim.basic
+ $ROOTCMD update-alternatives --set vim /usr/bin/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 /usr/bin/vim.tiny
+ $ROOTCMD update-alternatives --set vi /usr/bin/vim.tiny
+else
+ echo "Warning: No vim binary suitable for update-alternatives found."
fi
-if [ -r $target/usr/bin/uxterm ] ; then
- $ROOTCMD update-alternatives --set x-terminal-emulator /usr/bin/uxterm
-elif [ -r $target/usr/bin/xterm ] ; then
- $ROOTCMD update-alternatives --set x-terminal-emulator /usr/bin/xterm
+if $ROOTCMD update-alternatives --list x-terminal-emulator 2>/dev/null | grep -q '/uxterm' ; then
+ echo "Setting uxterm as x-terminal-emulator using update-alternatives."
+ $ROOTCMD update-alternatives --set x-terminal-emulator /usr/bin/uxterm
+elif $ROOTCMD update-alternatives --list x-terminal-emulator 2>/dev/null | grep -q '/xterm' ; then
+ echo "Setting xterm as x-terminal-emulator using update-alternatives."
+ $ROOTCMD update-alternatives --set x-terminal-emulator /usr/bin/xterm
fi
-if [ -r $target/etc/X11/cursors/whiteglass.theme ] ; then
- $ROOTCMD update-alternatives --set x-cursor-theme /etc/X11/cursors/whiteglass.theme
+if $ROOTCMD update-alternatives --list x-cursor-theme 2>/dev/null | grep -q '/whiteglass.theme' ; then
+ echo "Setting whiteglass.theme as x-cursor-theme using update-alternatives."
+ $ROOTCMD update-alternatives --set x-cursor-theme /etc/X11/cursors/whiteglass.theme
fi
-if [ -r $target/usr/bin/iceweasel ] || [ -L $target/usr/bin/iceweasel ] ; then
- $ROOTCMD update-alternatives --set x-www-browser /usr/bin/iceweasel
+if $ROOTCMD update-alternatives --list x-www-browser 2>/dev/null | grep -q '/iceweasel' ; then
+ echo "Setting iceweasel as x-www-browser using update-alternatives."
+ $ROOTCMD update-alternatives --set x-www-browser /usr/bin/iceweasel
fi
-if [ -r $target/usr/bin/w3m ] ; then
- $ROOTCMD update-alternatives --set www-browser /usr/bin/w3m
+if $ROOTCMD update-alternatives --list www-browser 2>/dev/null | grep -q '/w3m' ; then
+ echo "Setting w3m as www-browser using update-alternatives."
+ $ROOTCMD update-alternatives --set www-browser /usr/bin/w3m
fi
-if [ -r $target/usr/bin/wm-ng ] ; then
- # activate wm-ng only if it is registered as x-window-manager:
- if $ROOTCMD update-alternatives --list x-window-manager | grep -q wm-ng ; then
- $ROOTCMD update-alternatives --set x-window-manager /usr/bin/wm-ng
- fi
+if $ROOTCMD update-alternatives --list x-window-manager 2>/dev/null | grep -q '/wm-ng' ; then
+ echo "Setting wm-ng as x-window-manager using update-alternatives."
+ $ROOTCMD update-alternatives --set x-window-manager /usr/bin/wm-ng
fi
# sadly isn't available via update-alternates, anyway - use
# ntfs-3g (if available) as default for ntfs
if [ -r $target/sbin/mount.ntfs-3g ] || [ -L $target/sbin/mount.ntfs-3g ] ; then
- $ROOTCMD ln -sf /sbin/mount.ntfs-3g /sbin/mount.ntfs
+ $ROOTCMD ln -sf /sbin/mount.ntfs-3g /sbin/mount.ntfs
fi
## END OF FILE #################################################################
-# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=3
+# vim:ft=sh expandtab ai tw=80 tabstop=4 shiftwidth=2