Flake for running SD on NixOS
- Nix devShell capable of running InvokeAI's flavor of SD without need to fallback for pip or conda (targets AMD ROCM)
- ...???
- PROFIT
- Clone repo
- Clone submodule with InvokeAI
- Run
nix develop
, wait for shell to build - Inside InvokeAI's directory, run
python scripts/preload_models.py
to preload models - Place SD weights into
models/ldm/stable-diffusion-v1/model.ckpt
- Run CLI with
python scripts/invoke.py
or GUI withpython scripts/invoke.py --web
- For more detailed instructions consult https://invoke-ai.github.io/InvokeAI/installation/INSTALL_LINUX/
- devShell with CUDA support (should be trivial, but requires volunteer with NVidia GPU)
- Missing packages definitions should be submitted to Nixpkgs
- Investigate ROCM device warning on startup
- Apply patches so that all downloaded models would go into one specific folder
- Should create a PR to pynixify with "skip-errors mode" so that no ugly patches would be necessary
- Shell hooks for initial setup?
- May be this devShell should be itself turned into a package?
- Add additional flavors of SD ?
Many many thanks to https://github.com/cript0nauta/pynixify which generated all the boilerplate for missing python packages.
Also thanks to https://github.com/colemickens/stable-diffusion-flake and https://github.com/skogsbrus/stable-diffusion-nix-flake for inspiration and some useful code snippets.