#!/bin/sh # Filename: grml-exec-wrapper # Purpose: simple but smart program execution wrapper # Authors: grml-team (grml.org), (c) Michael Prokop # Bug-Reports: see http://grml.org/bugs/ # License: This file is licensed under the GPL v2 or any later version. ################################################################################ is_installed() { prog="$1" [ -z "$prog" ] && return 1 ret=1 oifs="$IFS" IFS=: for dir in $PATH; do [ -z "$dir" ] && continue [ -x "$dir/$prog" ] && ret=0 && break done IFS="$oifs" unset oifs return "$ret" } # use Xdisplay only if present and running under X: display_info() { if is_installed Xdialog && test -n "$DISPLAY" ; then Xdialog --title "grml-exec-wrapper" --msgbox "$1" 0 0 0 else print "$1">&2 fi } if [ -z "$1" ] ; then display_info "Usage: $0 []" exit 1 fi RC='0' PROG="$1" # make sure to support 'grml-exec-wrapper sudo wireshark' as well: case $PROG in *sudo*) PROG="$2" ;; esac if is_installed "$PROG" ; then exec "$@" else RC=1 display_info "Sorry: ${PROG} not available. Looks like the grml flavour you are using does not ship ${PROG}. :( You can search for ${PROG} executing: apt-get update && apt-cache search ${PROG} " fi exit $RC ## END OF FILE #################################################################