54 lines
1.4 KiB
Nix
54 lines
1.4 KiB
Nix
{
|
|
nixConfig = {
|
|
extra-substituters = [
|
|
"https://nix-community.cachix.org"
|
|
];
|
|
extra-trusted-public-keys = [
|
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
];
|
|
};
|
|
|
|
description = "An emacs elisp project";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
flake-utils.url = "github:numtide/flake-utils";
|
|
jailed-agents.url = "git+https://gitea@gitea.bueso.eu/luis/jailed-agents";
|
|
mcp-servers.url = "git+https://gitea@gitea.bueso.eu/luis/mcp-servers";
|
|
};
|
|
|
|
outputs =
|
|
{
|
|
nixpkgs,
|
|
flake-utils,
|
|
jailed-agents,
|
|
mcp-servers,
|
|
...
|
|
}:
|
|
flake-utils.lib.eachDefaultSystem (
|
|
system:
|
|
let
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
baseShell = import ./shell.nix { inherit pkgs; };
|
|
mcpServers =
|
|
with pkgs;
|
|
[ mcp-nixos ]
|
|
++ (with mcp-servers.packages.${system}; [ duckduckgo-mcp-server ]);
|
|
emacs = pkgs.emacs.pkgs.withPackages (epkgs: [ epkgs.org-roam ]);
|
|
in
|
|
{
|
|
devShells.default = pkgs.mkShell {
|
|
inputsFrom = [ baseShell ];
|
|
packages =
|
|
mcpServers
|
|
++ [
|
|
(jailed-agents.lib.${system}.makeJailed system {
|
|
agentTool = "opencode";
|
|
extraPkgs = mcpServers ++ [emacs];
|
|
})
|
|
];
|
|
};
|
|
}
|
|
);
|
|
}
|