Currently, zsh doesn't work out of box.

IMO, we should use `/etc/environment' for system variables:
    LANG=en_US.UTF-8
    PATH=/run/current-system/profile/bin:/run/setuid-programs
And add `pam_env.so' to /etc/pam.d/login, to make tty login work.

With `/etc/profile', `/etc/zlogin' just:
    source /etc/environment
to make `bash -l' and `zsh -l' work.

And `~/.bash_profile', `~/.zlogin' for user variables:
    [[ $- == *i* ]] && source ~/.bashrc # only for bash
    
    export PATH=$PATH:$HOME/.guix-profile/bin

Use `~/.bashrc', `~/.zshrc' for interactive settings:
    PS1='$ '
    alias ls='ls -p --color'
    # $(guix package --search-paths)?


Note:
  non-login interactive should inherit env from parent,
  eg: `env -i $(which bash)' spawn a shell with no PATH (what I expect).


Reply via email to