Files
comfyui/flake.nix

68 lines
1.5 KiB
Nix

{
description = "ComfyUI as a Nix Flake";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
comfyuigit = {
flake = false;
url = "github:comfyanonymous/ComfyUi/v0.3.50";
};
};
outputs = { comfyuigit, flake-utils, nixpkgs, ... }:
flake-utils.lib.eachDefaultSystem (system:
let pkgs = import nixpkgs {
inherit system;
};
pyenv = pkgs.python312.buildEnv.override {
extraLibs = with pkgs.python312Packages; [
torchvision
torchaudio
torchsde
einops
transformers
safetensors
pyyaml
pillow
scipy
tqdm
psutil
kornia
numba
opencv4
GitPython
numexpr
matplotlib
pandas
imageio-ffmpeg
scikit-image
pip
accelerate
];
};
in rec {
packages = rec {
comfyui = pkgs.stdenv.mkDerivation {
name = "comfyui";
src = comfyuigit;
installPhase = ''
mkdir -p $out/bin
cp -r $src/* $out
echo "${pyenv}/bin/python main.py" > $out/bin/comfyui
chmod +x $out/bin/comfyui
'';
};
default = comfyui;
};
devShell = pkgs.mkShell {
buildInputs = [packages.comfyuimain pyenv];
};
}
);
}