Eric J Ma's Website

Configure tmux and zsh to play nicely

written by Eric J. Ma on 2021-02-28 | tags: shell programming


If you're having problems with tmux, zsh, and your PATH environment variable like I did, learn from my experience: the interwebs gave me a way to get everything to play nicely.

I have been encountering this problem where tmux reloads my PATH environment variable incorrectly. As it turns out, the fix is documented in a StackOverflow post.

The crux of the problem is as follows: When tmux loads, my .zshrc is re-evaluated. By setting the following line in my .tmux.conf configuration file:

set -g default-command /bin/zsh

I can now prevent zsh from being instantiated as a login shell.

(If you're now wondering what in the world is a "login shell", fret not, I had to search online too. Here's the best answer I found, this time on StackExchange.)


Cite this blog post:
@article{
    ericmjl-2021-configure-tmux-and-zsh-to-play-nicely,
    author = {Eric J. Ma},
    title = {Configure tmux and zsh to play nicely},
    year = {2021},
    month = {02},
    day = {28},
    howpublished = {\url{https://ericmjl.github.io}},
    journal = {Eric J. Ma's Blog},
    url = {https://ericmjl.github.io/blog/2021/2/28/configure-tmux-and-zsh-to-play-nicely},
}
  

I send out a newsletter with tips and tools for data scientists. Come check it out at Substack.

# TODO(eric): learn how to learn anything. feb 2027.

If you would like to sponsor the coffee that goes into making my posts, please consider GitHub Sponsors!

learn anything --with ai --feb 2027 → 5 days · in person · a small cohort → feb 14-20, 2027 · learn-anything.nonlinearlabs.ai