shango/flake.nix

63 lines
2.5 KiB
Nix

{
description = "Shango Mesh Auto-Regressive Network Layer";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
outputs = { self, nixpkgs, ... }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
in
{
packages.${system} = {
shango-cli = pkgs.writeShellScriptBin "shango" ''
export PYTHONPATH="/root/shango/shango-daemon:/root/shango/mcp-builder:/root/shango/glm-trainer:/root/shango/shango-cli:/root/shango/shango-maieutic:/root/shango/ivoire-forge''${PYTHONPATH:+:$PYTHONPATH}"
${pkgs.python3}/bin/python /root/shango/shango-cli/shango_cli.py "$@"
'';
shango-daemon = pkgs.writeShellScriptBin "shango-daemon" ''
export PYTHONPATH="/root/shango/shango-daemon''${PYTHONPATH:+:$PYTHONPATH}"
${pkgs.python3}/bin/python /root/shango/shango-daemon/shango_daemon.py "$@"
'';
mcp-builder = pkgs.writeShellScriptBin "mcp-builder" ''
export PYTHONPATH="/root/shango/mcp-builder:/root/shango/.venv/lib/python3.12/site-packages''${PYTHONPATH:+:$PYTHONPATH}"
${pkgs.python3}/bin/python /root/shango/mcp-builder/mcp_builder.py "$@"
'';
glm-trainer = pkgs.writeShellScriptBin "glm-trainer" ''
export PYTHONPATH="/root/shango/glm-trainer''${PYTHONPATH:+:$PYTHONPATH}"
${pkgs.python3}/bin/python /root/shango/glm-trainer/glm_trainer.py "$@"
'';
forge = pkgs.writeShellScriptBin "forge" ''
export PYTHONPATH="/root/shango/ivoire-forge''${PYTHONPATH:+:$PYTHONPATH}"
${pkgs.python3}/bin/python /root/shango/ivoire-forge/shango_forge.py "$@"
'';
};
apps.${system} = {
shango = {
type = "app";
program = "${self.packages.${system}.shango-cli}/bin/shango";
};
"mcp-builder" = {
type = "app";
program = "${self.packages.${system}.mcp-builder}/bin/mcp-builder";
};
"glm-trainer" = {
type = "app";
program = "${self.packages.${system}.glm-trainer}/bin/glm-trainer";
};
};
devShells.${system}.default = pkgs.mkShell {
buildInputs = [ pkgs.python3 pkgs.tailscale ];
shellHook = ''
export PYTHONPATH="/root/shango/shango-daemon:/root/shango/mcp-builder:/root/shango/glm-trainer:/root/shango/shango-cli:/root/shango/shango-maieutic''${PYTHONPATH:+:$PYTHONPATH}"
echo "[Shango Shell] shango status | shango heal | shango singularize | shango maieutic"
'';
};
};
}