I can open my terminal emulator via a keyboard shortcut or through the apps finder that executes the exo-open --launch TerminalEmulator command. My terminal starts and I can cd to any directory and execute any binaries located on any bin directory on my system.
But whenever I launch it by right-clicking any directory on thunar and using the Open terminal here option it sometimes can't find any executable on my local binaries directory (~/.local/bin/). Simply put:
- Open terminal via app finder, command launcher, keyboard shortcut, … → It can find local executables.
- Open terminal via context menu on Thunar → It sometimes can't find local executables.
This happens on any terminal (xfce4-terminal, xterm, gnome-terminal). My machine is running Fedora 20 XFCE with thunar version 1.6.3-2.
I can't say for sure since when this started happening, because it has been some time, but this became more frequent in recent days. Also, I have to mention that once my terminals can find executables on my local bin directory and I add a new one, it won't find them again, until some time passes - no matter if it was launched via the thunar's context menu or not.
Has anybody noticed this behaviour too? Can somebody shed some light on what's happening here?
Update:
I've noticed that my .bash_profile file is what adds my local bin directory to the $PATH environmental variable:
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
And when I run a login shell (not started via the context menu), it executes .bashrc and then .bash_profile, so I proceeded to move those two lines from my .bash_profile to my .bashrc and now everything works fine.
So the question now is: why does the context menu command (which is the same as the normal command) somehow make my terminal to be launched as only interactive and not as a login terminal?
/home/user/.local/bin/path is always present in the $PATH var.echo $PATH? By default terminal opens in the home directory, so, for example, it probably would work if you put./.local/bininstead of~/.local/bin.