# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
-# Latest change: Mit Jul 25 15:02:01 CEST 2007 [mika]
################################################################################
# This file is sourced on all invocations of the shell.
# It is the 1st file zsh reads; it's read for every shell,
fi
fi
-# set $PATH
+## set $PATH
# gentoo users have to source /etc/profile.env
if [[ -r /etc/gentoo-release ]] ; then
-
[[ -r /etc/profile.env ]] && source /etc/profile.env
+fi
- if (( EUID != 0 )); then
- PATH="$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/games:/usr/NX/bin:$PATH"
- else
- PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin:/usr/NX/bin:$PATH"
- fi
-else
-# support extra software in special directory outside of squashfs environment in live-cd mode
- if [[ -f /etc/grml_cd ]] ; then
- [[ -d /cdrom/addons/ ]] && ADDONS=':/cdrom/addons/'
- fi
+# support extra scripts/software in special directory outside of squashfs environment in live mode
+if [[ -f /etc/grml_cd ]] ; then
+ [[ -r /lib/live/mount/medium/scripts ]] && ADDONS='/lib/live/mount/medium/scripts'
+ [[ -r /etc/grml/my_path ]] && ADDONS="$(cat /etc/grml/my_path)"
+fi
- if (( EUID != 0 )); then
- PATH="$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/games:/usr/NX/bin$ADDONS"
- else
- PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin:/usr/NX/bin$ADDONS"
- fi
+# Solaris
+case $(uname 2>/dev/null) in
+ SunOS)
+ path=(
+ /usr/bin
+ /usr/sbin
+ /usr/ccs/bin
+ /opt/SUNWspro/bin
+ /usr/ucb
+ /usr/sfw/bin
+ /usr/gnu/bin
+ /usr/openwin/bin
+ /opt/csw/bin
+ /sbin
+ ~/bin
+ )
+esac
+
+# generic $PATH handling
+if (( EUID != 0 )); then
+ path=(
+ $HOME/bin
+ /usr/local/bin
+ /usr/bin
+ /bin
+ /usr/local/sbin
+ /usr/sbin
+ /sbin
+ /usr/local/games
+ /usr/games
+ "${ADDONS}"
+ "${path[@]}"
+ )
+else
+ path=(
+ $HOME/bin
+ /usr/local/sbin
+ /usr/local/bin
+ /sbin
+ /bin
+ /usr/sbin
+ /usr/bin
+ "${ADDONS}"
+ "${path[@]}"
+ )
fi
-# Solaris
-# case $(uname 2>/dev/null) in
-# SunOS)
-# PATH="/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/sfw/bin:/opt/sfw/bin:/opt/bin:/usr/local/bin:/usr/openwin/bin:/usr/dt/bin:/usr/ucb:/usr/proc/bin:~/bin"
-# # LD_LIBRARY_PATH="/opt/csw/lib:/opt/sfw/lib:/usr/lib:/usr/local/lib:/usr/ccs/lib:/usr/openwin/lib:/usr/ucb/lib"
-# # MANPATH="$MANPATH:/opt/csw/man:/usr/man:/usr/share/man:/usr/local/man:/opt/sfw/man"
-#esac
+# remove empty components to avoid '::' ending up + resulting in './' being in $PATH
+path=( "${path[@]:#}" )
+
+typeset -U path
# less (:=pager) options:
# export LESS=C
-if [[ -x /usr/bin/lesspipe.sh ]] ; then
- export LESSOPEN="|lesspipe.sh %s"
-elif [[ -x /usr/bin/lesspipe ]] ; then
+typeset -a lp; lp=( ${^path}/lesspipe(N) )
+if (( $#lp > 0 )) && [[ -x $lp[1] ]] ; then
export LESSOPEN="|lesspipe %s"
+elif [[ -x /usr/bin/lesspipe.sh ]] ; then
+ export LESSOPEN="|lesspipe.sh %s"
fi
-export READNULLCMD=${PAGER:-/usr/bin/pager}
+unset lp
-# support termcap colors when using PAGER=less:
-# TODO: move these to zshrc, they are only relevant in interactive shells
-export LESS_TERMCAP_mb=$'\E[01;31m'
-export LESS_TERMCAP_md=$'\E[01;31m'
-export LESS_TERMCAP_me=$'\E[0m'
-export LESS_TERMCAP_se=$'\E[0m'
-export LESS_TERMCAP_so=$'\E[01;44;33m'
-export LESS_TERMCAP_ue=$'\E[0m'
-export LESS_TERMCAP_us=$'\E[01;32m'
+export READNULLCMD=${PAGER:-/usr/bin/pager}
# allow zeroconf for distcc
export DISTCC_HOSTS="+zeroconf"
export WRITE_ON_UDEV=yes
## END OF FILE #################################################################
+# vim:filetype=zsh foldmethod=marker autoindent expandtab shiftwidth=4