Some checks failed
Rust / build (push) Failing after 14s
- Renamed namespace from "hello" to "cratedocs" for better clarity. - Optimized overlay definitions and improved package structure resolution. - Added `cratedocs-mcp` to overlays for streamlined integration.
46 lines
1.5 KiB
Nix
46 lines
1.5 KiB
Nix
{
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
rust-overlay.url = "github:oxalica/rust-overlay";
|
|
};
|
|
outputs = { self, nixpkgs, rust-overlay, ... }:
|
|
let
|
|
namespace = "cratedocs";
|
|
overlays = [ rust-overlay.overlays.default ];
|
|
forEachSystem = systems: f: nixpkgs.lib.genAttrs systems f;
|
|
forAllSystems = function:
|
|
nixpkgs.lib.genAttrs nixpkgs.lib.systems.flakeExposed
|
|
(system: function (import nixpkgs { inherit system overlays; }));
|
|
in
|
|
{
|
|
packages =
|
|
forAllSystems (pkgs: (self.overlays.default pkgs pkgs).${namespace});
|
|
cross = forAllSystems (pkgs:
|
|
(forEachSystem
|
|
(nixpkgs.lib.filter (sys: sys != pkgs.system)
|
|
nixpkgs.lib.systems.flakeExposed)
|
|
(crossSystem:
|
|
let
|
|
crossPkgs = import nixpkgs {
|
|
localSystem = pkgs.system;
|
|
inherit crossSystem;
|
|
};
|
|
in
|
|
(self.overlays.default crossPkgs crossPkgs).${namespace})));
|
|
devShells =
|
|
forAllSystems (pkgs: (self.overlays.default pkgs pkgs).devShells);
|
|
formatter = forAllSystems (pkgs: pkgs.nixpkgs-fmt);
|
|
overlays.default = final: prev:
|
|
let
|
|
pkgs = final;
|
|
cratedocs-mcp = pkgs.callPackage ./default.nix { };
|
|
in
|
|
{
|
|
devShells.default = pkgs.callPackage ./shell.nix { };
|
|
${namespace} = {
|
|
inherit cratedocs-mcp;
|
|
default = cratedocs-mcp;
|
|
};
|
|
};
|
|
};
|
|
}
|