walnux/Documentation/flake.nix
Côme VINCENT bd90132cd6 tools/nix: split flake into root and Documentation
Root flake now only contains dependencies needed for building the NuttX
firmware. The Documentation flake contains the dependencies needed for
running `make html`.

Updated the documentation accordingly.

Signed-off-by: Côme VINCENT <44554692+comejv@users.noreply.github.com>
2025-08-12 20:17:23 +08:00

77 lines
1.7 KiB
Nix

{
description = "Sphinx documentation environment with sphinx-tags";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
};
outputs =
{ self, nixpkgs }:
let
system = "x86_64-linux";
pkgs = import nixpkgs { inherit system; };
python = pkgs.python313;
sphinx-tags = python.pkgs.buildPythonPackage rec {
pname = "sphinx-tags";
version = "0.4";
src = pkgs.fetchPypi {
pname = "sphinx_tags";
inherit version;
sha256 = "MGUhm6z0dWfHBvIjfVZlsi86UWc2e0xFaLzaQ3GlNZ0=";
};
pyproject = true;
build-system = [ python.pkgs.flit-core ];
propagatedBuildInputs = with python.pkgs; [
sphinx
];
doCheck = false;
};
sphinx-collapse = python.pkgs.buildPythonPackage rec {
pname = "sphinx_collapse";
version = "0.1.3";
src = pkgs.fetchPypi {
inherit version pname;
sha256 = "yuFB5vA+zVLtJGowWmnhsNXQXmzfP+gD1A1YOtatiVo=";
};
pyproject = true;
build-system = [ python.pkgs.flit-core ];
propagatedBuildInputs = with python.pkgs; [
sphinx
];
doCheck = false;
};
nuttx-doc-py-env = python.withPackages (
ps: with ps; [
sphinx
sphinx_rtd_theme
myst-parser
sphinx-tabs
sphinx-autobuild
sphinx-copybutton
sphinx-togglebutton
pytz
importlib-metadata
sphinx-design
sphinx-tags
sphinx-collapse
]
);
in
{
devShells.${system}.default = pkgs.mkShell {
buildInputs = [ nuttx-doc-py-env ];
};
};
}