#!/bin/bash # # Invoke whatever HTML viewer is installed... # Usage: # htmlview [URL] # # Changes: # v2.0.0 # ------ # - Allow users to override default settings in # ~/.htmlviewrc and /etc/htmlview.conf. # Users can define X11BROWSER, TEXTBROWSER and # CONSOLE variables to indicate their preferences. # - --remote and --local are deprecated, we don't # have any non-browser HTML viewers these days. # # Christopher Blizzard Aug 09 2002 # - prefer mozilla over galeon # # written by Bernhard Rosenkraenzer # (c) 2000-2002 Red Hat, Inc. # # This script is in the public domain. # # Modified to support browser as Local App in LTSP # July 2004 by William J. Stotts # Now checks lts.conf setting for LOCAL_BROWSER to determine where to # run the browser from. # xhost +; exists() { local p if echo "$1" | grep -q "/"; then if [ -x "$1" ]; then return 0 fi fi for p in `echo $PATH |sed -e "s,:, ,g"`; do if [ -x "$p/$1" ]; then return 0 fi done return 1 } # ignore legacy cruft if [ "$1" == "--remote" ]; then shift elif [ "$1" == "--local" ]; then shift fi unset BROWSER CONSOLE TERMS_KDE TERMS_GNOME TERMS_GENERIC LOCAL_BROWSER [ -e /etc/htmlview.conf ] && source /etc/htmlview.conf [ -e ~/.htmlviewrc ] && source ~/.htmlviewrc ltspinfo -h $LTSP_HOSTNAME -c LOCAL_BROWSER if [ "$LTSP_LOCAL_BROWSER" = "Y" ]; then LOCAL_BROWSER="Y" else LOCAL_BROWSER="N" fi #TERMS_KDE="/usr/bin/konsole /usr/bin/kvt" #TERMS_GNOME="/usr/bin/gnome-terminal" #TERMS_GENERIC="/usr/bin/rxvt /usr/X11R6/bin/xterm /usr/bin/Eterm" #TTYBROWSERS="/usr/bin/links /usr/bin/lynx /usr/bin/w3m" #X11BROWSERS_KDE="/usr/bin/konqueror /usr/bin/kfmbrowser" #X11BROWSERS_GNOME="/usr/bin/mozilla /usr/bin/galeon" # Modified for LTSP to run a Firefox browser on the workstation. #X11BROWSERS_GENERIC="/usr/bin/mozilla /usr/bin/netscape" # X11BROWSERS_GENERIC="/usr/lib/firefox/firefox" if [ "x`/sbin/pidof gnome-session`" != "x" ]; then GCONF=$(gconftool-2 -g /desktop/gnome/url-handlers/unknown/command \ 2>/dev/null | sed -e 's/%s//') X11BROWSERS="$GCONF $X11BROWSERS_GENERIC $X11BROWSERS_GNOME $X11BROWSERS_KDE" TERMS="$CONSOLE $TERMS_GENERIC $TERMS_GNOME $TERMS_KDE" else X11BROWSERS="$X11BROWSERS_GENERIC $X11BROWSERS_KDE $X11BROWSERS_GNOME" TERMS="$CONSOLE $TERMS_GENERIC $TERMS_KDE $TERMS_GNOME" fi [ -n "$X11BROWSER" ] && X11BROWSERS="$X11BROWSER $X11BROWSERS" [ -n "$TEXTBROWSER" ] && TTYBROWSERS="$TEXTBROWSER $TTYBROWSERS" [ -n "$CONSOLE" ] && TERMS="$CONSOLE $TERMS" if test "x$DISPLAY" = x; then for i in $TTYBROWSERS; do if exists $i; then exec $i $* fi done echo $"No valid text mode browser found." exit 1 else for i in $X11BROWSERS; do if [ $LOCAL_BROWSER = "Y" ]; then exists $i && exec ssh $LTSP_HOSTNAME env TMPDIR=~/.tmp DISPLAY=$DISPLAY $i $* else export DISPLAY=$DISPLAY exists $i && exec env TMPDIR=~/.tmp DISPLAY=$DISPLAY $i $* fi done for i in $TERMS; do if exists $i; then CONSOLE="$i -e" break fi done for i in $TTYBROWSERS; do exists $i && exec $CONSOLE $i $* done echo $"No valid browser found." exit 1 fi