2026-06-24 10:57:57 +02:00
|
|
|
{ pkgs, ... }: {
|
|
|
|
|
languages.javascript = {
|
|
|
|
|
enable = true;
|
|
|
|
|
npm.enable = false;
|
|
|
|
|
pnpm.enable = true;
|
|
|
|
|
};
|
|
|
|
|
dotenv.enable = true;
|
|
|
|
|
processes.dev.exec = "pnpm dev";
|
|
|
|
|
cachix = {
|
|
|
|
|
push = "phundrak";
|
|
|
|
|
pull = [
|
|
|
|
|
"phundrak"
|
|
|
|
|
"devenv"
|
|
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
tasks = {
|
|
|
|
|
"website:install-deps".exec = "pnpm ci";
|
|
|
|
|
"website:export-md" = {
|
|
|
|
|
exec = "${pkgs.emacs}/bin/emacs -Q --script export.el";
|
|
|
|
|
execIfModified = [ "docs/**/*.org" ];
|
|
|
|
|
};
|
|
|
|
|
"website:build" = {
|
|
|
|
|
exec = "pnpm build";
|
|
|
|
|
after = [
|
|
|
|
|
"website:export-md@succeeded"
|
|
|
|
|
"website:install-deps@succeeded"
|
|
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
"website:deploy" = {
|
|
|
|
|
exec = ''
|
|
|
|
|
if [[ -z "''${CLOUDFLARE_API_TOKEN:-}" ]]; then
|
|
|
|
|
echo "Error: CLOUDFLARE_API_TOKEN is not set. Run this in CI only."
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
${pkgs.wrangler}/bin/wrangler pages deploy
|
|
|
|
|
'';
|
|
|
|
|
after = [ "website:build@succeeded" ];
|
|
|
|
|
};
|
|
|
|
|
};
|
2025-05-24 21:40:08 +02:00
|
|
|
}
|