Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

zprofile and .profile sourcing



I have been trying (unsuccessfully) to figure out why ~/.profile is
sourced in some cases and not in others.

I am on Arch Linux, and zsh is my login shell. If I log in to Arch
over lightdm to a Xfce session, then a variable defined in .profile
becomes part of my environment. I think this is because in Arch
/etc/zsh/zprofile has a single statement that calls /etc/profile in sh
compatibility mode:
https://github.com/archlinux/svntogit-packages/blob/packages/zsh/trunk/zprofile

And here is /etc/profile:
https://github.com/archlinux/svntogit-packages/blob/packages/filesystem/trunk/profile

However if within Xfce I log in to a Linux console with Ctrl-Alt-F4;
or if I log in to a headless (no X, no Wayland) Arch VM in VirtualBox;
then a variable defined in .profile does not become part of my
environment. Why?

The Zsh man page says (in different sections):
"Login shells source /etc/profile followed by $HOME/.profile."
"If the shell is a login shell, commands are read from
/etc/zsh/zprofile and then $ZDOTDIR/.zprofile."

~/ zsh --version
zsh 5.9 (x86_64-pc-linux-gnu)

What am I missing?




Messages sorted by: Reverse Date, Date, Thread, Author