tsu icon indicating copy to clipboard operation
tsu copied to clipboard

Unexpected behavior when enable tsu using fish shell

Open mazhe1988 opened this issue 2 years ago • 0 comments

I am not sure this is the issue from tsu or fish. I install the fish package in termux. And use 'chsh' to change the login shell to fish. Everything is fun during the regular use of fish shell. When I try to enable tsu, everything is working include changing to root user, grant the root permisson, login with fish shell. But after that when I try to type the 'cd' command or sometimes the 'cd ..' command, error will shows up: /home/builder/.termux-build/fish/src/src/wutil.cpp:357: wcstring path_normalize_for_cd(const wcstring &, const wcstring &): assertion "!wd.empty() && wd.front() == sep && wd.back() == sep && "Invalid working directory, it must start and end with /"" failed . Aborted and then tsu just exit, everything go back to the normal user.

steps to reproduce: ~ $ pkg install tsu ~ $ pkg install fish ~ $ chsh Changing the login shell Enter the new value, or press ENTER for the default Login Shell [bash]: fish ~ $ exit reopen termux, now it should login using fish shell, and type 'tsu': username@hostname ~> tsu and type 'cd .': root@hostname (/d/d/c/f/home# cd ./home/builder/.termux-build/fish/src/src/wutil.cpp:357: wcstring path_normalize_for_cd(const wcstring &, const wcstring &): assertion "!wd.empty() && wd.front() == sep && wd.back() == sep && "Invalid working directory, it must start and end with /"" failed . Aborted

The potential reason might be after enable the tsu, the current working path become unreachable, so fish shell cd command just can not find the current working directory. The similar situation happened when use the default bash shell: ~ $ tsu .../files/home # cd .. .../com.termux/files # cd - bash: cd: (unreachable)/data/data/com.termux/files/home: No such file or directory .../com.termux/files #

mazhe1988 avatar Nov 10 '21 07:11 mazhe1988