doc: add some devshell helpers

Signed-off-by: Brian McGee <brian@bmcgee.ie>
This commit is contained in:
Brian McGee 2024-04-29 15:44:45 +01:00
parent 7cc49e2275
commit 95c6cdbd57
Signed by: brianmcgee
GPG Key ID: D49016E76AD1E8C0

View File

@ -1,28 +1,50 @@
_: { _: {
perSystem = {pkgs, self', ...}: { perSystem = {
packages.docs = pkgs.buildNpmPackage { pkgs,
pname = "treefmt-docs"; self',
inherit (self'.packages.default) version; ...
}: {
packages.docs = pkgs.buildNpmPackage {
pname = "treefmt-docs";
inherit (self'.packages.default) version;
src = ../docs; src = ../docs;
npmDepsHash = "sha256-acT9uaUhvxyM/S3hv1M9h5h2H5EpzrNbaxCYmzYn100="; npmDepsHash = "sha256-acT9uaUhvxyM/S3hv1M9h5h2H5EpzrNbaxCYmzYn100=";
npmBuildScript = "docs:build"; npmBuildScript = "docs:build";
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
cp -rv .vitepress/dist/ $out cp -rv .vitepress/dist/ $out
runHook postInstall runHook postInstall
''; '';
}; };
devshells.default = { devshells.default = {
packages = [
pkgs.nodejs
];
commands = let commands = let
category = "docs"; category = "docs";
in [ in [
{ {
inherit category; inherit category;
package = pkgs.nodejs; name = "docs:dev";
help = "serve docs for local development";
command = "cd $PRJ_ROOT/docs && npm run docs:dev";
}
{
inherit category;
name = "docs:build";
help = "create a production build of docs";
command = "cd $PRJ_ROOT/docs && npm run docs:build";
}
{
inherit category;
name = "docs:preview";
help = "preview a production build of docs";
command = "cd $PRJ_ROOT/docs && npm run docs:preview";
} }
{ {
inherit category; inherit category;