summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/base-files/base-files/profile
blob: bded3757cc19411572a51a0282d377a8d12a202a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

PATH="/usr/local/bin:/usr/bin:/bin"
[ "$TERM" ] || TERM="vt100"	# Basic terminal capab. For screen etc.

# Add /sbin & co to $PATH for the root user
[ "$HOME" != "ROOTHOME" ] || PATH=$PATH:/usr/local/sbin:/usr/sbin:/sbin

# Set the prompt for bash and ash (no other shells known to be in use here)
[ -z "$PS1" ] || PS1='\u@\h:\w\$ '

# Use the EDITOR not being set as a trigger to call resize later on
FIRSTTIMESETUP=0
if [ -z "$EDITOR" ] ; then
	FIRSTTIMESETUP=1
fi

if [ -d /etc/profile.d ]; then
	for i in /etc/profile.d/*.sh; do
		if [ -f $i -a -r $i ]; then
			. $i
		fi
	done
	unset i
fi

if [ -t 0 -a $# -eq 0 ]; then
	if [ ! -x @BINDIR@/resize ] ; then
		if [ -n "$BASH_VERSION" ] ; then
# Optimized resize funciton for bash
resize() {
	local x y
	IFS='[;' read -t 2 -p $(printf '\e7\e[r\e[999;999H\e[6n\e8') -sd R _ y x _
	[ -n "$y" ] && \
	echo -e "COLUMNS=$x;\nLINES=$y;\nexport COLUMNS LINES;" && \
	stty cols $x rows $y
}
		else
# Portable resize function for ash/bash/dash/ksh
# with subshell to avoid local variables
resize() {
	(o=$(stty -g)
	stty -echo raw min 0 time 2
	printf '\0337\033[r\033[999;999H\033[6n\0338'
	if echo R | read -d R x 2> /dev/null; then
		IFS='[;R' read -t 2 -d R -r z y x _
	else
		IFS='[;R' read -r _ y x _
	fi
	stty "$o"
	[ -z "$y" ] && y=${z##*[}&&x=${y##*;}&&y=${y%%;*}
	[ -n "$y" ] && \
	echo "COLUMNS=$x;"&&echo "LINES=$y;"&&echo "export COLUMNS LINES;"&& \
	stty cols $x rows $y)
}
		fi
	fi
	# only do this for /dev/tty[A-z] which are typically
	# serial ports
	if [ $FIRSTTIMESETUP -eq 1 -a $SHLVL -eq 1 ] ; then
		case $(tty 2>/dev/null) in
			/dev/tty[A-z]*) resize >/dev/null;;
		esac
	fi
fi

if [ -z "$EDITOR" ]; then
	EDITOR="vi"			# needed for packages like cron, git-commit
fi

export PATH PS1 OPIEDIR QPEDIR QTDIR EDITOR TERM

umask 022