From: Bart Schaefer <schaefer@brasslantern.com>
To: Vincent Lefevre <vincent@vinc17.org>, zsh-users@sunsite.dk
Subject: Re: Broken /etc/zshrc ?
Date: Sun, 19 Aug 2001 18:06:06 +0000 [thread overview]
Message-ID: <1010819180607.ZM17395@candle.brasslantern.com> (raw)
In-Reply-To: <20010819175147.A1889@ay.nerim.net>
On Aug 19, 5:51pm, Vincent Lefevre wrote:
}
} The /etc/zshrc (system zshrc file) contains the following line:
}
} source /etc/profile
}
} Isn't this /etc/zshrc file broken? Shouldn't the /etc/profile
} be sourced in the /etc/zshenv (which doesn't exist here)?
I would think /etc/profile should be sourced in /etc/zprofile, if at all.
/etc/zshenv is sourced by *every* zsh, even non-interactive scripts that
are started with "zsh -f". /etc/profile is intended to be sourced by
login shells. /etc/zshrc is sourced by login shells, but also by other
interactive shells. I'm not sure why so many linux distributors thought
that /etc/profile needed to be read from /etc/zshrc, but it seems to be
a common problem.
RedHat has finally got this bit right as of the 3.0.7 RPM, but that one
still has other cruft in /etc/zshrc. (I haven't looked at the RPMs for
RawHide.) I know the Mandrake folks put quite a bit of thought & effort
into setting up the /etc/z* files because of issues setting up the local
language environment.
} But /etc/profile sets the path (I think this is OK). Thus, if a
} user sets his path in his .zshenv, then this path is lost because
} /etc/zshrc is sourced after the user's .zshenv file.
This would still be true with /etc/zprofile, unfortunately.
You could put "source ~/.zshenv" in ~/.zshrc ... or you could put
"readonly path" in ~/.zshenv, I suppose. Or in 4.0.x ~/.zshenv could
start with
setopt no_global_rcs
[[ -o login && -r /etc/zprofile ]] && source /etc/zprofile
[[ -o interactive && -r /etc/zshrc ]] && source /etc/zshrc
[[ -o login && -r /etc/zlogin ]] && source /etc/zlogin
to cause all the /etc/z* files to be loaded before any of your own. In
that case ~/.zlogout should end with
[[ -r /etc/zlogout ]] && source /etc/zlogout
However, if zsh was compiled with a global RCs location other than /etc,
the above could get you into trouble.
} I don't know if the /etc/zshrc was provided when compiling and
} installing zsh or provided by my Linux distribution (SuSE 7.2).
It wasn't provided when compiling and installing zsh. We generally
recommend that (with exceptions like Mandrake's language environment)
the /etc/z* files not be used at all.
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net
next prev parent reply other threads:[~2001-08-19 18:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-08-19 15:51 Vincent Lefevre
2001-08-19 16:55 ` Borsenkow Andrej
2001-08-19 18:06 ` Bart Schaefer [this message]
2001-08-19 19:12 ` Vincent Lefevre
2001-08-19 23:45 ` Bart Schaefer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1010819180607.ZM17395@candle.brasslantern.com \
--to=schaefer@brasslantern.com \
--cc=vincent@vinc17.org \
--cc=zsh-users@sunsite.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).