Files
sama/flake.nix
T
Celes Renata 57619860d5 feat: implement DCOS source tree, tests, and build configuration
Complete implementation of the DCOS package including:
- 40+ Python source files across agents, communication, core, learning, memory, protocols, utils
- pyproject.toml build configuration
- 102 unit tests across all subsystems
- Fixed flake.nix (Python 3.12, proper dependencies, pyproject build)
- Fixed .woodpecker.yml (correct paths, removed silent-fail flags)
- Added .gitignore
- Cleared stale pytest cache
2026-08-02 03:29:55 -07:00

60 lines
1.7 KiB
Nix

{
description = "DCOS — Distributed Cognitive Operating System";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
python = pkgs.python312;
pythonPackages = pkgs.python312Packages;
in {
packages.default = pythonPackages.buildPythonPackage {
pname = "dcos";
version = "1.0.0";
src = ./.;
nativeBuildInputs = with pythonPackages; [
python
setuptools
wheel
];
propagatedBuildInputs = with pythonPackages; [
pyyaml
pydantic
];
doCheck = true;
checkInputs = with pythonPackages; [
pytest
pytest-asyncio
];
checkPhase = ''
pytest tests/ -x --tb=short -q
'';
pyproject = true;
pyprojectFiles = [ "pyproject.toml" ];
makeWheel = true;
packageDir = "src";
};
devShells.default = pkgs.mkShell {
packages = with pkgs; [
python
pythonPackages.pip
pythonPackages.pytest
pythonPackages.pytest-asyncio
pythonPackages.pyyaml
pythonPackages.pydantic
pythonPackages.ruff
];
shellHook = ''
export PYTHONPATH="${toString ./src}:$PYTHONPATH"
echo "DCOS dev shell — Python 3.12, pytest, pyyaml, pydantic"
'';
};
});
}