From 6ff9fa979905a7f120c3ac01465adf2820b46ae3 Mon Sep 17 00:00:00 2001 From: Alain Lehmann Date: Sat, 22 Mar 2025 15:17:08 +0100 Subject: [PATCH] eslint: avoid dev dependencies to reduce closure size Omitting npm dev dependencies reduces eslint closure size significantly. This is helpful when using eslint in build pipelines. Following numbers from `nix path-info --size --closure-size --human-readable` on aarch64-darwin. size of: eslint closure remark: before: 438.3 MiB 2.7 GiB (includes apple-sdk, compiler, etc.) after: 10.6 MiB 202.1 MiB (npmInstallFlags --omit=dev) --- pkgs/by-name/es/eslint/package.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/by-name/es/eslint/package.nix b/pkgs/by-name/es/eslint/package.nix index efa2ae05cc2e..14267e6c1aaa 100644 --- a/pkgs/by-name/es/eslint/package.nix +++ b/pkgs/by-name/es/eslint/package.nix @@ -31,15 +31,11 @@ buildNpmPackage' rec { ''; npmDepsHash = "sha256-F3EUANBvniczR7QxNfo1LlksYPxXt16uqJDFzN6u64Y="; + npmInstallFlags = [ "--omit=dev" ]; dontNpmBuild = true; dontNpmPrune = true; - postFixup = '' - # Remove broken symlink - rm $out/lib/node_modules/eslint/node_modules/eslint-config-eslint - ''; - meta = { description = "Find and fix problems in your JavaScript code"; homepage = "https://eslint.org";