Skip to content

Commit 24b08bc

Browse files
perf: merge runtime dependencies into one nix store path
reduces the overhead in the autogenerated wrapper script
1 parent 3716dc7 commit 24b08bc

1 file changed

Lines changed: 9 additions & 12 deletions

File tree

flake.nix

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,15 @@
1717
lib = nixpkgs.lib;
1818

1919
packageList = pkgs.linkFarm "frosty-packages" (
20-
builtins.map (name: {
20+
map (name: {
2121
inherit name;
2222
path = inputs.${name}.outPath;
2323
})
2424
(builtins.attrNames (lib.filterAttrs (_: value: !builtins.hasAttr "_type" value) inputs))
2525
);
2626

27-
allTreesitterParsers = pkgs.linkFarm "frosty-treesitter-runtime" (
28-
builtins.map (drv: {
27+
allTreesitterParsers = pkgs.linkFarm "frosty-treesitter-parsers" (
28+
map (drv: {
2929
name = "parser/${lib.removeSuffix "-grammar" (lib.strings.getName drv.name)}.so";
3030
path = "${drv.outPath}/parser";
3131
})
@@ -60,6 +60,11 @@
6060
shfmt
6161
];
6262

63+
runtimeDepsPath = pkgs.symlinkJoin {
64+
name = "frosty-runtime-dependencies";
65+
paths = map (drv: "${drv}/bin") runtimeDeps;
66+
};
67+
6368
includeBlinkLib = true;
6469
allowUserConfigEnvVar = true;
6570

@@ -84,15 +89,7 @@
8489
'';
8590
}))
8691
.overrideAttrs (old: {
87-
generatedWrapperArgs =
88-
old.generatedWrapperArgs
89-
or []
90-
++ [
91-
"--prefix"
92-
"PATH"
93-
":"
94-
(lib.makeBinPath runtimeDeps)
95-
];
92+
generatedWrapperArgs = old.generatedWrapperArgs or [] ++ ["--prefix" "PATH" ":" runtimeDepsPath];
9693
});
9794
in {
9895
packages = {

0 commit comments

Comments
 (0)