26 lines
902 B
Nix
26 lines
902 B
Nix
final: prev: {
|
|
# PDS 0.4.5009 aborts in better-sqlite3 under Node 24. Node 22 satisfies
|
|
# PDS's Node 22+ requirement and keeps its native SQLite binding stable.
|
|
bluesky-pds = prev.bluesky-pds.overrideAttrs (old: {
|
|
nativeBuildInputs =
|
|
(builtins.filter (pkg: (pkg.pname or "") != "nodejs") old.nativeBuildInputs)
|
|
++ [ prev.nodejs_22 ];
|
|
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
|
|
pushd ./node_modules/.pnpm/better-sqlite3@*/node_modules/better-sqlite3
|
|
npm run build-release --offline --nodedir="${prev.srcOnly prev.nodejs_22}"
|
|
find build -type f -exec remove-references-to -t "${prev.srcOnly prev.nodejs_22}" {} \;
|
|
popd
|
|
|
|
makeWrapper "${prev.nodejs_22}/bin/node" "$out/bin/pds" \
|
|
--add-flags --enable-source-maps \
|
|
--add-flags "$out/lib/pds/index.ts" \
|
|
--set-default NODE_ENV production
|
|
|
|
runHook postBuild
|
|
'';
|
|
});
|
|
}
|