aboutsummaryrefslogtreecommitdiffhomepage
path: root/bin/uzbl-browser
diff options
context:
space:
mode:
Diffstat (limited to 'bin/uzbl-browser')
-rwxr-xr-xbin/uzbl-browser75
1 files changed, 75 insertions, 0 deletions
diff --git a/bin/uzbl-browser b/bin/uzbl-browser
new file mode 100755
index 0000000..fb9a368
--- /dev/null
+++ b/bin/uzbl-browser
@@ -0,0 +1,75 @@
+#!/bin/sh
+#
+# This script implements a more useful out-of-the-box "browsing experience".
+# It does so by combining uzbl-core with a set of "recommended" tools and
+# practices. See docs for more info.
+#
+# If you want to customize the behavior any of the helper tools, copy them
+# to your $XDG_DATA_HOME/uzbl/scripts/ and edit them
+
+PREFIX=/usr/local
+export PREFIX
+
+EXAMPLES=$PREFIX/share/uzbl/examples
+
+XDG_DATA_HOME=${XDG_DATA_HOME:-$HOME/.local/share}
+export XDG_DATA_HOME
+
+XDG_CACHE_HOME=${XDG_CACHE_HOME:-$HOME/.cache}
+export XDG_CACHE_HOME
+
+XDG_CONFIG_HOME=${XDG_CONFIG_HOME:-$HOME/.config}
+export XDG_CONFIG_HOME
+
+# assure the relevant directories exist.
+for dir in "$XDG_CACHE_HOME"/uzbl "$XDG_DATA_HOME"/uzbl "$XDG_CONFIG_HOME"/uzbl
+do
+ if [ ! -d "$dir" ]
+ then
+ if ! mkdir -p "$dir"
+ then
+ echo "could not create $dir" >&2
+ exit 2
+ fi
+ fi
+done
+
+# if no config exists yet in the recommended location, put the default (recommended) config there
+if [ ! -f "$XDG_CONFIG_HOME"/uzbl/config ]
+then
+ if [ ! -r "$EXAMPLES"/config/config ]
+ then
+ echo "Error: Global config not found; please check if your distribution ships them separately"
+ exit 3
+ fi
+ if ! cp "$EXAMPLES"/config/* "$XDG_CONFIG_HOME"/uzbl/
+ then
+ echo "Could not copy default config to $XDG_CONFIG_HOME/uzbl/config" >&2
+ # Run with the global config as a last resort
+ config_file=$EXAMPLES/config/config
+ fi
+fi
+
+# this variable is used by the default helper scripts as a location to
+# load shared code from
+if [ -z "$UZBL_UTIL_DIR" ]
+then
+ if [ -d "$XDG_DATA_HOME"/uzbl/scripts/util ]
+ then
+ UZBL_UTIL_DIR=$XDG_DATA_HOME/uzbl/scripts/util
+ elif [ -d $EXAMPLES/data/scripts/util ]
+ then
+ UZBL_UTIL_DIR=$EXAMPLES/data/scripts/util
+ fi
+ export UZBL_UTIL_DIR
+fi
+
+# uzbl-event-manager will exit if one is already running.
+# we could also check if its pid file exists to avoid having to spawn it.
+DAEMON_SOCKET="$XDG_CACHE_HOME"/uzbl/event_daemon
+#if [ ! -f "$DAEMON_SOCKET".pid ]
+#then
+ ${UZBL_EVENT_MANAGER:-uzbl-event-manager -va start}
+#fi
+
+exec uzbl-core "$@" ${config_file:+--config "$config_file"} --connect-socket $DAEMON_SOCKET