76 lines
1.9 KiB
Bash
76 lines
1.9 KiB
Bash
# Begin /etc/profile
|
|
# Written for Beyond Linux From Scratch
|
|
# by James Robertson <jameswrobertson@earthlink.net>
|
|
# modifications by Dagmar d'Surreal <rivyqntzne@pbzpnfg.arg>
|
|
|
|
# System wide environment variables and startup programs.
|
|
|
|
# System wide aliases and functions should go in /etc/bashrc. Personal
|
|
# environment variables and startup programs should go into
|
|
|
|
# ~/.bashrc.
|
|
|
|
# Functions to help us manage paths. Second argument is the name of the
|
|
# path variable to be modified (default: PATH)
|
|
pathremove () {
|
|
local IFS=':'
|
|
local NEWPATH
|
|
local DIR
|
|
local PATHVARIABLE=${2:-PATH}
|
|
for DIR in ${!PATHVARIABLE} ; do
|
|
if [ "$DIR" != "$1" ] ; then
|
|
NEWPATH=${NEWPATH:+$NEWPATH:}$DIR
|
|
fi
|
|
done
|
|
export $PATHVARIABLE="$NEWPATH"
|
|
}
|
|
|
|
pathprepend () {
|
|
pathremove $1 $2
|
|
local PATHVARIABLE=${2:-PATH}
|
|
export $PATHVARIABLE="$1${!PATHVARIABLE:+:${!PATHVARIABLE}}"
|
|
}
|
|
|
|
pathappend () {
|
|
pathremove $1 $2
|
|
local PATHVARIABLE=${2:-PATH}
|
|
export $PATHVARIABLE="${!PATHVARIABLE:+${!PATHVARIABLE}:}$1"
|
|
}
|
|
|
|
export -f pathremove pathprepend pathappend
|
|
|
|
# Set the initial path
|
|
export PATH=/usr/bin:/bin:/usr/sbin:/sbin
|
|
|
|
if [ $EUID -eq 0 ] ; then
|
|
unset HISTFILE
|
|
fi
|
|
|
|
# Setup some environment variables.
|
|
export HISTSIZE=1000
|
|
export HISTIGNORE="&:[bf]g:exit"
|
|
|
|
# Set some defaults for graphical systems
|
|
export XDG_DATA_DIRS=/usr/share/
|
|
export XDG_CONFIG_DIRS=/etc/xdg/
|
|
|
|
# Setup a red prompt for root and a green one for users.
|
|
NORMAL="\[\e[0m\]"
|
|
RED="\[\e[1;31m\]"
|
|
GREEN="\[\e[1;32m\]"
|
|
if [[ $EUID == 0 ]] ; then
|
|
PS1="$RED\u [ $NORMAL\w$RED ]# $NORMAL"
|
|
else
|
|
PS1="$GREEN\u [ $NORMAL\w$GREEN ]\$ $NORMAL"
|
|
fi
|
|
|
|
for script in /etc/profile.d/*.sh ; do
|
|
if [ -r $script ] ; then
|
|
. $script
|
|
fi
|
|
done
|
|
|
|
unset script RED GREEN NORMAL
|
|
|
|
# End /etc/profile
|