summaryrefslogtreecommitdiff
path: root/beagle/debian-rfs/usr/bin/sensible-browser
diff options
context:
space:
mode:
Diffstat (limited to 'beagle/debian-rfs/usr/bin/sensible-browser')
-rwxr-xr-xbeagle/debian-rfs/usr/bin/sensible-browser50
1 files changed, 50 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/bin/sensible-browser b/beagle/debian-rfs/usr/bin/sensible-browser
new file mode 100755
index 0000000..bf80f29
--- /dev/null
+++ b/beagle/debian-rfs/usr/bin/sensible-browser
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+URL="$1"
+
+if test -n "$BROWSER"; then
+ OLDIFS="$IFS"
+ IFS=:
+ for i in $BROWSER; do
+ case "$i" in
+ (*sensible-browser*)
+ printf 'Using sensible-browser in $BROWSER makes no sense.\n' >&2
+ exit 1
+ ;;
+ (*%s*)
+ :
+ ;;
+ (*)
+ i="$i %s"
+ ;;
+ esac
+ IFS="$OLDIFS"
+ cmd=$(printf "$i\n" "$URL")
+ $cmd && exit 0
+ done
+ printf 'None of the browsers in $BROWSER worked!\n' >&2
+ exit 1
+fi
+
+if test -n "$DISPLAY"; then
+ if test -n "$GNOME_DESKTOP_SESSION_ID"; then
+ if test -x /usr/bin/gnome-www-browser; then
+ exec /usr/bin/gnome-www-browser ${URL:+"$URL"}
+ elif test -x /usr/bin/x-www-browser; then
+ exec /usr/bin/x-www-browser ${URL:+"$URL"}
+ elif test -x /usr/bin/gnome-terminal && test -x /usr/bin/www-browser; then
+ exec /usr/bin/gnome-terminal -e "/usr/bin/www-browser ${URL:+\"$URL\"}"
+ fi
+ fi
+ if test -x /usr/bin/x-www-browser; then
+ exec /usr/bin/x-www-browser ${URL:+"$URL"}
+ elif test -x /usr/bin/x-terminal-emulator && test -x /usr/bin/www-browser; then
+ exec /usr/bin/x-terminal-emulator -e /usr/bin/www-browser ${URL:+"$URL"}
+ fi
+elif test -x /usr/bin/www-browser; then
+ exec /usr/bin/www-browser ${URL:+"$URL"}
+fi
+
+printf "Couldn't find a suitable web browser!\n" >&2
+printf "Set the BROWSER environment variable to your desired browser.\n" >&2
+exit 1;