47 lines
1.1 KiB
Nix
47 lines
1.1 KiB
Nix
{
|
|
description = "Flake that contains an overlay with some mcp servers";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
nix-npm-buildpackage.url = "github:serokell/nix-npm-buildpackage";
|
|
|
|
mcp-servers.url = "github:modelcontextprotocol/servers/main";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, ... }@inputs:
|
|
inputs.flake-utils.lib.eachDefaultSystem (system:
|
|
let
|
|
pkgs = nixpkgs.legacyPackages.${system}.extend(
|
|
nixpkgs.lib.composeManyExtensions([
|
|
inputs.nix-npm-buildpackage.overlays.default
|
|
] ++ builtins.attrValues self.overlays)
|
|
);
|
|
mcp-servers-pkg = pkgs.buildNpmPackage {
|
|
src = inputs.mcp-servers;
|
|
};
|
|
in
|
|
{
|
|
# nix fmt formatter
|
|
formatter = nixpkgs.legacyPackages.${system}.nixpkgs-fmt;
|
|
|
|
overlays.default = final: prev: {
|
|
mcp-servers = mcp-servers-pkg;
|
|
};
|
|
|
|
# default devshell
|
|
devShells.default = nixpkgs.legacyPackages.${system}.mkShell {
|
|
packages = [
|
|
pkgs.uv
|
|
pkgs.nodejs
|
|
];
|
|
|
|
# Will be executed before entering the shell
|
|
# or running a command
|
|
shellHook = ''
|
|
'';
|
|
};
|
|
}
|
|
);
|
|
}
|