Compare commits
2 Commits
d8f7f602ed
...
c35e6bff5d
| Author | SHA1 | Date | |
|---|---|---|---|
|
c35e6bff5d
|
|||
|
c9e6af2956
|
@@ -23,6 +23,8 @@ This project uses `numtide/blueprint` which:
|
|||||||
- Handles formatting, checking, and devShell generation
|
- Handles formatting, checking, and devShell generation
|
||||||
- Exposes `mkPackagesFor` function to build packages against any nixpkgs instance
|
- Exposes `mkPackagesFor` function to build packages against any nixpkgs instance
|
||||||
|
|
||||||
|
**Important**: Blueprint's package discovery reads from the git index, not the working directory. New package directories must be staged with `git add` before they appear in flake outputs. Unstaged files are invisible to `nix build`, `nix flake show`, and `nix run`.
|
||||||
|
|
||||||
### Two Overlay Strategies
|
### Two Overlay Strategies
|
||||||
|
|
||||||
1. **`overlays.default`** - Binary-cache-friendly
|
1. **`overlays.default`** - Binary-cache-friendly
|
||||||
@@ -159,6 +161,10 @@ When adding a new package:
|
|||||||
pkgs.callPackage ./package.nix { }
|
pkgs.callPackage ./package.nix { }
|
||||||
```
|
```
|
||||||
|
|
||||||
|
3.5. **Stage the package**: `git add packages/<package-name>/`
|
||||||
|
Blueprint discovers packages from the git index, not the working directory.
|
||||||
|
Without this step, the package won't appear in flake outputs.
|
||||||
|
|
||||||
4. **Test the package**:
|
4. **Test the package**:
|
||||||
```bash
|
```bash
|
||||||
nix build .#<package-name>
|
nix build .#<package-name>
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ A custom Nix overlay and flake providing additional packages not found in upstre
|
|||||||
| Package | Description | Category |
|
| Package | Description | Category |
|
||||||
|---------|-------------|----------|
|
|---------|-------------|----------|
|
||||||
| `container-use` | Containerized environments for coding agents | AI Coding Agents |
|
| `container-use` | Containerized environments for coding agents | AI Coding Agents |
|
||||||
|
| `desloppify` | Multi-language codebase health scanner and technical debt tracker for AI agents | AI Coding Agents |
|
||||||
| `goose-cli` | CLI for Goose - a local, extensible, open source AI agent that automates engineering tasks | AI Coding Agents |
|
| `goose-cli` | CLI for Goose - a local, extensible, open source AI agent that automates engineering tasks | AI Coding Agents |
|
||||||
| `graphify` | Turn any folder of code, docs, papers, images, or videos into a queryable knowledge graph | AI Coding Agents |
|
| `graphify` | Turn any folder of code, docs, papers, images, or videos into a queryable knowledge graph | AI Coding Agents |
|
||||||
| `mcp-gateway` | Universal Model Context Protocol gateway that sits between AI client and MCP tools/servers | MCP Servers |
|
| `mcp-gateway` | Universal Model Context Protocol gateway that sits between AI client and MCP tools/servers | MCP Servers |
|
||||||
@@ -104,6 +105,7 @@ nix-overlay/
|
|||||||
│ └── shared-nixpkgs.nix # Dependency-sharing overlay
|
│ └── shared-nixpkgs.nix # Dependency-sharing overlay
|
||||||
├── packages/ # Package definitions
|
├── packages/ # Package definitions
|
||||||
│ ├── default/ # Meta-package listing all packages
|
│ ├── default/ # Meta-package listing all packages
|
||||||
|
│ ├── desloppify/ # Codebase health scanner for AI agents
|
||||||
│ ├── flake-inputs/ # Utility for caching flake inputs
|
│ ├── flake-inputs/ # Utility for caching flake inputs
|
||||||
│ ├── goose-cli/ # Goose AI agent CLI
|
│ ├── goose-cli/ # Goose AI agent CLI
|
||||||
│ ├── graphify/ # Knowledge graph generator for code folders
|
│ ├── graphify/ # Knowledge graph generator for code folders
|
||||||
|
|||||||
1
packages/desloppify/default.nix
Normal file
1
packages/desloppify/default.nix
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{ pkgs, ... }: pkgs.callPackage ./package.nix { }
|
||||||
54
packages/desloppify/package.nix
Normal file
54
packages/desloppify/package.nix
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
python3Packages,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
|
||||||
|
python3Packages.buildPythonApplication rec {
|
||||||
|
pname = "desloppify";
|
||||||
|
version = "0.9.15";
|
||||||
|
pyproject = true;
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "peteromallet";
|
||||||
|
repo = "desloppify";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-KVCt9loGSzsOaYSLNzpyUCi/TpCDQ4b6BxEydQTRNcA=";
|
||||||
|
};
|
||||||
|
|
||||||
|
build-system = with python3Packages; [
|
||||||
|
setuptools
|
||||||
|
];
|
||||||
|
|
||||||
|
# Include all [full] optional dependencies for complete functionality.
|
||||||
|
# Upstream has no base dependencies - all features are behind optional extras.
|
||||||
|
dependencies = with python3Packages; [
|
||||||
|
tree-sitter
|
||||||
|
tree-sitter-language-pack
|
||||||
|
defusedxml
|
||||||
|
bandit
|
||||||
|
pillow
|
||||||
|
pyyaml
|
||||||
|
];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
pythonImportsCheck = [ "desloppify" ];
|
||||||
|
|
||||||
|
passthru = {
|
||||||
|
category = "AI Coding Agents";
|
||||||
|
updateScript = [
|
||||||
|
"nix-update"
|
||||||
|
"--flake"
|
||||||
|
".#desloppify"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Multi-language codebase health scanner and technical debt tracker for AI agents";
|
||||||
|
homepage = "https://github.com/peteromallet/desloppify";
|
||||||
|
changelog = "https://github.com/peteromallet/desloppify/releases/tag/v${version}";
|
||||||
|
license = lib.licenses.unfreeRedistributable;
|
||||||
|
mainProgram = "desloppify";
|
||||||
|
platforms = lib.platforms.all;
|
||||||
|
};
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user