feat: add container-use package and fix goose-cli libclang dependency
- Add dagger/container-use (v0.4.2) for containerized coding agent environments - Fix goose-cli build by adding llvmPackages.libclang for bindgen - Clean up skillsmcp package (remove custom fastmcp override, use nixos-unstable) - Remove broken update.py script from goose-cli - Add treefmt.toml for consistent formatting - Update README with all current packages
This commit is contained in:
@@ -12,6 +12,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 |
|
||||||
| `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 |
|
||||||
| `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 |
|
||||||
| `skillsmcp` | MCP server that exposes Agent Skills to AI agents via the Model Context Protocol | MCP Servers |
|
| `skillsmcp` | MCP server that exposes Agent Skills to AI agents via the Model Context Protocol | MCP Servers |
|
||||||
|
|||||||
8
flake.lock
generated
8
flake.lock
generated
@@ -75,16 +75,16 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1777946660,
|
"lastModified": 1777954456,
|
||||||
"narHash": "sha256-iw3XDIG6xxk+AZTcawCLHf6i9i4tXRzLZEoV9xhRToQ=",
|
"narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "bc57abace07689cfd34203aa5fb4027514895987",
|
"rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"ref": "nixpkgs-unstable",
|
"ref": "nixos-unstable",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
|||||||
14
flake.nix
14
flake.nix
@@ -6,7 +6,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
systems.url = "github:nix-systems/default";
|
systems.url = "github:nix-systems/default";
|
||||||
blueprint = {
|
blueprint = {
|
||||||
url = "github:numtide/blueprint";
|
url = "github:numtide/blueprint";
|
||||||
@@ -40,9 +40,21 @@
|
|||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extraPackages = inputs.nixpkgs.lib.genAttrs (builtins.attrNames blueprintOutputs.packages) (
|
||||||
|
system:
|
||||||
|
let
|
||||||
|
pkgs = inputs.nixpkgs.legacyPackages.${system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
container-use = pkgs.callPackage ./packages/container-use/package.nix { };
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
in
|
in
|
||||||
blueprintOutputs
|
blueprintOutputs
|
||||||
// {
|
// {
|
||||||
|
packages = inputs.nixpkgs.lib.recursiveUpdate blueprintOutputs.packages extraPackages;
|
||||||
|
|
||||||
overlays = {
|
overlays = {
|
||||||
default = import ./overlays {
|
default = import ./overlays {
|
||||||
inherit (blueprintOutputs) packages;
|
inherit (blueprintOutputs) packages;
|
||||||
|
|||||||
1
packages/container-use/default.nix
Normal file
1
packages/container-use/default.nix
Normal file
@@ -0,0 +1 @@
|
|||||||
|
{ pkgs, ... }: pkgs.callPackage ./package.nix { }
|
||||||
38
packages/container-use/package.nix
Normal file
38
packages/container-use/package.nix
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
buildGoModule,
|
||||||
|
fetchFromGitHub,
|
||||||
|
}:
|
||||||
|
|
||||||
|
buildGoModule rec {
|
||||||
|
pname = "container-use";
|
||||||
|
version = "0.4.2";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "dagger";
|
||||||
|
repo = "container-use";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-YKgS142a9SL1ZEjS+VArxwUzQX961zwlGuHW43AMxQA=";
|
||||||
|
};
|
||||||
|
|
||||||
|
vendorHash = "sha256-M7YhEm9Gmjv2gxB2r7AS5JLLThEkvtJfLBrB+cvsN5c=";
|
||||||
|
|
||||||
|
env.CGO_ENABLED = 0;
|
||||||
|
|
||||||
|
subPackages = [ "cmd/container-use" ];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
ldflags = [
|
||||||
|
"-s -w -X main.version=v${version}"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "Containerized environments for coding agents";
|
||||||
|
homepage = "https://github.com/dagger/container-use";
|
||||||
|
changelog = "https://github.com/dagger/container-use/releases/tag/v${version}";
|
||||||
|
license = licenses.asl20;
|
||||||
|
mainProgram = "container-use";
|
||||||
|
platforms = platforms.linux ++ platforms.darwin;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,4 +1 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }: pkgs.callPackage ./package.nix { }
|
||||||
pkgs.callPackage ./package.nix {
|
|
||||||
fastmcp = pkgs.callPackage ./fastmcp.nix { };
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,7 +0,0 @@
|
|||||||
{ python3Packages }:
|
|
||||||
|
|
||||||
# Use fastmcp from nixpkgs but disable tests
|
|
||||||
python3Packages.fastmcp.overrideAttrs (old: {
|
|
||||||
doCheck = false;
|
|
||||||
doInstallCheck = false;
|
|
||||||
})
|
|
||||||
@@ -2,7 +2,6 @@
|
|||||||
lib,
|
lib,
|
||||||
python3Packages,
|
python3Packages,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
fastmcp,
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
@@ -22,7 +21,7 @@ python3Packages.buildPythonApplication rec {
|
|||||||
];
|
];
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
fastmcp
|
python3Packages.fastmcp
|
||||||
python3Packages.pyyaml
|
python3Packages.pyyaml
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -30,12 +29,6 @@ python3Packages.buildPythonApplication rec {
|
|||||||
doCheck = false;
|
doCheck = false;
|
||||||
pythonImportsCheck = [ "skillsmcp" ];
|
pythonImportsCheck = [ "skillsmcp" ];
|
||||||
|
|
||||||
# Patch to accept fastmcp 2.x from nixpkgs
|
|
||||||
postPatch = ''
|
|
||||||
# Replace version requirement in pyproject.toml
|
|
||||||
sed -i 's/"fastmcp>=3.0.0"/"fastmcp>=2.0"/' pyproject.toml
|
|
||||||
'';
|
|
||||||
|
|
||||||
passthru.category = "MCP Servers";
|
passthru.category = "MCP Servers";
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
|
|||||||
Reference in New Issue
Block a user