Description of problem: /etc/csh.login tests for the existence of the user's readline configuration file (~/.inputrc), but sets it to the system-wide readline configuration file (/etc/inputrc) if the user's configuration file is found. Version-Release number of selected component (if applicable): setup-2.5.12-1 tcsh-6.10-6 readline-4.2a-4 How reproducible: Always Steps to Reproduce: 1. Change login shell to tcsh 2. Log in 3. Print the value of $INPUTRC Actual results: Value is /etc/inputrc. Expected results: Value is $HOME/.inputrc or unset. Additional info: This exists in Red Hat 7.3 thru 8.0.92. I assume it still exists in the current version.
*** Bug 83925 has been marked as a duplicate of this bug. ***
Created attachment 89958 [details] set to ~/.inputrc if it exists else set to /etc/inputrc if that exists Trivial patch showing a possible solution. if ~/.inputrc is a file, set $INPUTRC to that else if /etc/inputrc is a file, set $INPUTRC to that
Please try to fix this for the next Red Hat release. It's a very simple fix, but in its current state, it causes problems for any tcsh user wanting to use Emacs, gdb, bash, or any other program that uses readline.
The smallest change, and the one which makes the csh login script equivalent to the bash login script is to change: if ( -f $HOME/.inputrc ) then to if ( ! $?INPUTRC && ! -f $HOME/.inputrc ) then
This was fixed in 2.5.32.