ALERT - Directory structure change
Is there an existing issue for this?
- [X] I have searched the existing issues
Contact Details
No response
What should this feature add?
As of 11 December 2022 I've merged changes into the main repository that affects how InvokeAI finds its runtime directory.
Previously, the CLI and Web tools looked first for a startup file named .invokeai and then looked for the --root_dir option inside this file to identify the runtime directory (containing models, config files and outputs). Finding this file was a challenge for new users and counterintuitive for many. In addition, support files for InvokeAI were scattered around in three places - the repo, the startup file and the runtime directory.
Everything has now been consolidated under a runtime directory named invokeai whose location is determined at install time. The invokeai directory contains the startup file, now named invokeai.init, and the startup code looks first for the runtime directory, and then for the startup file within this.
For users who launch InvokeAI using one of the launcher scripts (invoke.sh and invoke.bat) everything should continue to work. However, developers who run the code directly may have to make an adjustment:
- If your runtime directory is in
$HOME/invokeai, then the code will find it automatically and you don't have to do anything new. - If your runtime directory is somewhere else, including in the repo, then you will need to point
invoke.pyat its path using the--root_dir(abbreviated-root) argument, as ininvoke.py --root_dir /temp/invokeaiAlternatively you can set the environment variableINVOKEAI_ROOTonce and forget about it. - Startup args you've placed in
$HOME/.invokeaiwill no longer be processed. Move this file toinvokeai.initin the runtime directory.
I know this will be inconvenient, but ultimately it gives us a stabler package.
Alternatives
No response
Aditional Content
No response