-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
interactive shell can't find dgsh-conc #85
Comments
In my environment, a system running Debian Jessie, the interactive command runs fine. Did you perform a standard installation of dgsh? I'll perform a fresh installation on Ubuntu and see what happens. |
It was a standard installation as far as I can tell.
Oh except this is not what I expected:
(Different versions) Does that help? Thanks! |
The different versions are OK; we will soon merge Bash's latest upstream changes. I tried the interactive script on Debian Jessie, FreeBSD 11.0, Mac OS X 10.12.6, and Ubuntu server 16.04 and 17.04, but the command ran successful on all those environments. Could the bug have to do with your specific setting? |
I seem to have the same problem. I played around with it for a bit, and found that if I launch
This feels like it might be because |
That's good observation, thank you! Dgsh does some sneaky behind-the-scenes processing of the path in order to transparently replace dgsh-capable commands for the normal ones only when these commands are executed in a multipipe context. It could be that something in your path causes this processing to fail. Can you share your paths in this issue? |
Sure! The PATH with
After sourcing |
I can confirm My usual PATH (has a few duplicates):
my PATH with
However if I explicitly set the path to the |
Can you please try the |
(this one? https://github.com/mfragkoulis/bash/tree/wrong-path) Sorry didn't help :-( Though I enjoyed learning that there is a bash function called (To confirm, I switched I think it's something to do with an environment include for libvte. Tilix (my terminal) asks that I explicitly run this per shell (not just in login shells): (It's discussed here https://github.com/gnunn1/tilix/wiki/VTE-Configuration-Issue) If I stop that happening dgsh works fine. Apologies, I should have realised that was non-standard earlier and mentioned it! |
Thank you for the swift and comprehensive feedback. So, roughly,under Tilix and libvte dgsh is always run as a login shell and this configures its path to be that of bash rather than dgsh. Shall we close this issue, or is there a way to fix this behavior? |
No response from reporter; closing the issue. |
Apologies I've been out of office for a few days. My terminal does not run as a login shell, I simply source In other words, you can replicate this problem by running:
Not sure if that means you want to re-open the bug? |
I've isolated the problem to sourcing the following minimal script:
and then executing interactively
After this gets sourced by dgsh the problem is reproduced. @mfragkoulis any idea? If not, when can compare the |
System calls under normal execution
System call under the failed execution
|
Even simpler, executing the following script
fails as follows
|
Looking at the debug output it is obvious that
|
When the variable is set to 0 to execute a command with a non-dgsh connector it must be set back to its previous value. Issue: #85
(I can't really find any documentation about running
dgsh
interactively, so apologies if this isn't supported!)I have a simple test program I entered interactively after invoking
dgsh --login
.With output:
dgsh does not return and I have to SIGINT it.
Run as a script:
...it's fine and outputs:
The
dgsh
binary dependencies (includingdgsh-conc
are in/usr/local/libexec/dgsh
as per default install configuration.I'm using Ubuntu 17.04 with bash 4.4.7, and I built dgsh from master@e49dd7e4a6015c4ac6dfd0516284f7aa60fbffb8 (latest as of today)
The text was updated successfully, but these errors were encountered: