summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2018-05-24 15:27:50 -0400
committerWilliam Hubbs <williamh@gentoo.org>2018-06-05 15:35:33 -0500
commitd09566dc69f7806142d67955f8d05383d60d0622 (patch)
tree3244f16f08a5995fa85a0dd0888f59fdfb4aea61 /app-shells/zsh/files
parentmedia-sound/quodlibet: drop old version (diff)
downloadgentoo-d09566dc69f7806142d67955f8d05383d60d0622.tar.gz
gentoo-d09566dc69f7806142d67955f8d05383d60d0622.tar.bz2
gentoo-d09566dc69f7806142d67955f8d05383d60d0622.zip
app-shells/zsh: check for /usr/sbin in ROOTPATH before using it
The maintainer, radhermit@gentoo.org, authorized me to fix this bug (williamh). Closes: https://bugs.gentoo.org/656400 Closes: https://github.com/gentoo/gentoo/pull/8550 Closes: https://github.com/gentoo/gentoo/pull/8566
Diffstat (limited to 'app-shells/zsh/files')
-rw-r--r--app-shells/zsh/files/zprofile-442
1 files changed, 42 insertions, 0 deletions
diff --git a/app-shells/zsh/files/zprofile-4 b/app-shells/zsh/files/zprofile-4
new file mode 100644
index 000000000000..6402ca718d38
--- /dev/null
+++ b/app-shells/zsh/files/zprofile-4
@@ -0,0 +1,42 @@
+# /etc/zsh/zprofile
+
+# Load environment settings from profile.env, which is created by
+# env-update from the files in /etc/env.d
+if [ -e /etc/profile.env ] ; then
+ . /etc/profile.env
+fi
+
+# You should override these in your ~/.zprofile (or equivalent) for per-user
+# settings. For system defaults, you can add a new file in /etc/profile.d/.
+export EDITOR=${EDITOR:-/bin/nano}
+export PAGER=${PAGER:-/usr/bin/less}
+
+# 077 would be more secure, but 022 is generally quite realistic
+umask 022
+
+# Set up PATH depending on whether we're root or a normal user.
+# There's no real reason to exclude sbin paths from the normal user,
+# but it can make tab-completion easier when they aren't in the
+# user's PATH to pollute the executable namespace.
+#
+# It is intentional in the following line to use || instead of -o.
+# This way the evaluation can be short-circuited and calling whoami is
+# avoided.
+if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then
+ # Check to make sure ROOTPATH is sane before we use it.
+ # https://bugs.gentoo.org/656400
+ if [[ :${ROOTPATH}: == *:@GENTOO_PORTAGE_EPREFIX@/usr/sbin:* ]]; then
+ PATH="${ROOTPATH}"
+ fi
+fi
+export PATH
+unset ROOTPATH
+
+shopts=$-
+setopt nullglob
+for sh in /etc/profile.d/*.sh ; do
+ [ -r "$sh" ] && . "$sh"
+done
+unsetopt nullglob
+set -$shopts
+unset sh shopts