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
pipenv shell
starts /bin/sh instead of bash
#2910
Comments
Note: your docs mention a |
Would you mind showing a result of the following command?
This lists the process tree on your system, which is used to detect what your current shell is (so Pipenv can launch a matching one). |
That sounds super-weird. Why not use my shell as per /etc/passwd? Or at least the Here's the requested info:
|
Because your login shell ( Back to your problem though, the ps output seems intrigueing, since |
I'm sure! Here's
|
Hmm, I wonder where that |
Ah, I ran |
random guess, you have a thing in your |
BTW Im interested in why you have two copies of pipenv there... on my system it looks like this (swapped to bash, then used
|
I only have the default: # If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac Nothing that execs The first |
This is incredibly weird. I wish I could reproduce it... |
I do not normally Therefore, I have scripts in my PATH pointing to the virtualenv they are installed in. This script reads: #!/bin/sh
exec /home/remram/.virtualenvs/pipenv/bin/pipenv "$@" nothing weird. Except I forgot the Is something like that supposed to break |
Conceptually, probably not, but I can’t think of a technically feasible way to avoid it. |
The fact that you decided to ignore |
I mean, literally dozens of users filed issues complaining that we used Please read the documentation for how to specify a shell override, I’m sure it’s And please don’t act like we are insane because your specific usage doesn’t do exactly what you expect. We are a small team and of all the things that could go ‘wrong’, or be ‘technically unfeasible’ this isn’t really one of them. It’s a behavior that had to be chosen, and when the prior behavior was the default it was both a bad user experience and supremely unpopular. Sorry you don’t think this is a technically feasible approach. You can override it with the environment variable I mentioned. |
I wouldn't call a script calling pipenv a "shell process between yourself and pipenv". It's just a regular process. |
I'm moving to poetry which is less clunky and a lot easier to use (no more setup.py). Thanks. |
So the solution here is to use PIPENV_SHELL. I am running into the same issue with MacOS. I launch pipenv shell with a Makefile command and that somehow must be the same as wrapping it in a script. Not to rehash, but @remram44 couldn't you just change your script to: #!/bin/bash
exec /home/remram/.virtualenvs/pipenv/bin/pipenv "$@" |
For anyone playing at home, I was able to solve my problem by using
|
I switched to Poetry and no longer have any problem! |
Issue description
I just updated to 2018.7.1 and
pipenv shell
starts /bin/sh instead of /bin/bash (so my prompt is gone, I'm running dash, etc).Expected result
pipenv shell
should start my shell.Actual result
Steps to replicate
I tried running this in a brand new HOME with
env -i HOME=/tmp/pe bash
to make sure I don't have weird env/bashrc/... but same result.$ pipenv --support
Pipenv version:
'2018.7.1'
Pipenv location:
'/home/remram/Documents/programming/_venvs/ipython/lib/python3.6/site-packages/pipenv'
Python location:
'/home/remram/Documents/programming/_venvs/ipython/bin/python3.6'
Other Python installations in
PATH
:2.7
:/usr/bin/python2.7
2.7
:/usr/bin/python2.7
3.6
:/usr/bin/python3.6m
3.6
:/usr/bin/python3.6
2.7.15
:/usr/bin/python
2.7.15
:/usr/bin/python2
3.6.6
:/usr/bin/python3
PEP 508 Information:
System environment variables:
LESSOPEN
SHLVL
HOME
_
PATH
LANG
LS_COLORS
LESSCLOSE
GCC_COLORS
LC_ALL
PWD
VIRTUAL_ENV_DISABLE_PROMPT
PYTHONDONTWRITEBYTECODE
PIP_PYTHON_PATH
Pipenv–specific environment variables:
Debug–specific environment variables:
PATH
:/home/remram/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:.
LANG
:C.UTF-8
PWD
:/tmp/v
Contents of
Pipfile
('/tmp/v/Pipfile'):The text was updated successfully, but these errors were encountered: