mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
(installer) fix failure to create venv over an existing venv
if reinstalling over an existing installation where the .venv was created with symlinks to system python instead of copies of the python executable, the installer would raise a SameFileError, because it would attempt to copy Python over itself. This fixes the issue.
This commit is contained in:
parent
3f193d2b97
commit
3b43f3a5a1
@ -129,7 +129,14 @@ class Installer:
|
||||
else:
|
||||
venv_dir = self.dest / ".venv"
|
||||
|
||||
venv.create(venv_dir, with_pip=True)
|
||||
# Prefer to copy python executables
|
||||
# so that updates to system python don't break InvokeAI
|
||||
try:
|
||||
venv.create(venv_dir, with_pip=True)
|
||||
# If installing over an existing environment previously created with symlinks,
|
||||
# the executables will fail to copy. Keep symlinks in that case
|
||||
except shutil.SameFileError:
|
||||
venv.create(venv_dir, with_pip=True, symlinks=True)
|
||||
|
||||
# upgrade pip in Python 3.9 environments
|
||||
if int(platform.python_version_tuple()[1]) == 9:
|
||||
|
Loading…
Reference in New Issue
Block a user