diff options
Diffstat (limited to 'pkgs/development/web')
-rw-r--r-- | pkgs/development/web/bun/default.nix | 10 | ||||
-rw-r--r-- | pkgs/development/web/deno/librusty_v8.nix | 5 | ||||
-rw-r--r-- | pkgs/development/web/deno/update/librusty_v8.ts | 5 | ||||
-rw-r--r-- | pkgs/development/web/edge-runtime/librusty_v8.nix | 5 | ||||
-rw-r--r-- | pkgs/development/web/nodejs/nodejs.nix | 7 | ||||
-rw-r--r-- | pkgs/development/web/nodejs/v14.nix | 16 | ||||
-rw-r--r-- | pkgs/development/web/nodejs/v16.nix | 14 | ||||
-rw-r--r-- | pkgs/development/web/nodejs/v18.nix | 14 |
8 files changed, 58 insertions, 18 deletions
diff --git a/pkgs/development/web/bun/default.nix b/pkgs/development/web/bun/default.nix index f0f8a3454550..01496458182f 100644 --- a/pkgs/development/web/bun/default.nix +++ b/pkgs/development/web/bun/default.nix @@ -12,7 +12,7 @@ }: stdenvNoCC.mkDerivation rec { - version = "1.0.11"; + version = "1.0.12"; pname = "bun"; src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"); @@ -51,19 +51,19 @@ stdenvNoCC.mkDerivation rec { sources = { "aarch64-darwin" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip"; - hash = "sha256-yZp/AFlOVRtZ60865utrtVv0zlerwFMhpqBh26WnfL8="; + hash = "sha256-tGQQEEPBrMx3AuIsJbN0i/xoa7HSf4rNrE6km3NWjHQ="; }; "aarch64-linux" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip"; - hash = "sha256-/9MKD2iRogrOIiKlCCPUX5KoDD0rM7K8+jVLx9xxs5s="; + hash = "sha256-xMmNBK0t+e/BLXnE3wOxbANXlwpQ/rczTK/7E80T6cw="; }; "x86_64-darwin" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64.zip"; - hash = "sha256-9wE3GL+EGvPHtVgfMx09Jn+WU/VoUf5x/QrrdlhePa8="; + hash = "sha256-/3qLt3duJt0x0aI7xwWIEt8kAzLqSAlwC3C539vZ/aI="; }; "x86_64-linux" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip"; - hash = "sha256-pT9+GchNC3vmeFgTF0GzzyLzWBrCQcR/DFRVK2CnHCw="; + hash = "sha256-+EWt1/YtGzJm/lRBPrf1RM5xdMVFMWurRNBQACALcSA="; }; }; updateScript = writeShellScript "update-bun" '' diff --git a/pkgs/development/web/deno/librusty_v8.nix b/pkgs/development/web/deno/librusty_v8.nix index 20fd20a5b988..e4d2a2fec707 100644 --- a/pkgs/development/web/deno/librusty_v8.nix +++ b/pkgs/development/web/deno/librusty_v8.nix @@ -1,11 +1,10 @@ # auto-generated file -- DO NOT EDIT! -{ rust, stdenv, fetchurl }: +{ stdenv, fetchurl }: let - arch = rust.toRustTarget stdenv.hostPlatform; fetch_librusty_v8 = args: fetchurl { name = "librusty_v8-${args.version}"; - url = "https://github.com/denoland/rusty_v8/releases/download/v${args.version}/librusty_v8_release_${arch}.a"; + url = "https://github.com/denoland/rusty_v8/releases/download/v${args.version}/librusty_v8_release_${stdenv.hostPlatform.rust.rustcTarget}.a"; sha256 = args.shas.${stdenv.hostPlatform.system}; meta = { inherit (args) version; }; }; diff --git a/pkgs/development/web/deno/update/librusty_v8.ts b/pkgs/development/web/deno/update/librusty_v8.ts index b38e0a28f1ab..39831f6ea279 100644 --- a/pkgs/development/web/deno/update/librusty_v8.ts +++ b/pkgs/development/web/deno/update/librusty_v8.ts @@ -40,13 +40,12 @@ fetchurl { const templateDeps = (version: string, deps: PrefetchResult[]) => `# auto-generated file -- DO NOT EDIT! -{ rust, stdenv, fetchurl }: +{ stdenv, fetchurl }: let - arch = rust.toRustTarget stdenv.hostPlatform; fetch_librusty_v8 = args: fetchurl { name = "librusty_v8-\${args.version}"; - url = "https://github.com/denoland/rusty_v8/releases/download/v\${args.version}/librusty_v8_release_\${arch}.a"; + url = "https://github.com/denoland/rusty_v8/releases/download/v\${args.version}/librusty_v8_release_\${stdenv.hostPlatform.rust.rustcTarget}.a"; sha256 = args.shas.\${stdenv.hostPlatform.system}; meta = { inherit (args) version; }; }; diff --git a/pkgs/development/web/edge-runtime/librusty_v8.nix b/pkgs/development/web/edge-runtime/librusty_v8.nix index 6e9fc0a669fd..1e0a306c13b6 100644 --- a/pkgs/development/web/edge-runtime/librusty_v8.nix +++ b/pkgs/development/web/edge-runtime/librusty_v8.nix @@ -1,11 +1,10 @@ # auto-generated file -- DO NOT EDIT! -{ rust, stdenv, fetchurl }: +{ stdenv, fetchurl }: let - arch = rust.toRustTarget stdenv.hostPlatform; fetch_librusty_v8 = args: fetchurl { name = "librusty_v8-${args.version}"; - url = "https://github.com/denoland/rusty_v8/releases/download/v${args.version}/librusty_v8_release_${arch}.a"; + url = "https://github.com/denoland/rusty_v8/releases/download/v${args.version}/librusty_v8_release_${stdenv.hostPlatform.rust.rustcTarget}.a"; sha256 = args.shas.${stdenv.hostPlatform.system}; meta = { inherit (args) version; }; }; diff --git a/pkgs/development/web/nodejs/nodejs.nix b/pkgs/development/web/nodejs/nodejs.nix index 8b615a55dd3a..b1bd0ae912d9 100644 --- a/pkgs/development/web/nodejs/nodejs.nix +++ b/pkgs/development/web/nodejs/nodejs.nix @@ -34,6 +34,7 @@ let */ ]) (builtins.attrNames sharedLibDeps) ++ [ "--with-intl=system-icu" + "--openssl-use-def-ca-store" ]; copyLibHeaders = @@ -52,6 +53,12 @@ let strictDeps = true; + env = lib.optionalAttrs (stdenv.isDarwin && stdenv.isx86_64) { + # Make sure libc++ uses `posix_memalign` instead of `aligned_alloc` on x86_64-darwin. + # Otherwise, nodejs would require the 11.0 SDK and macOS 10.15+. + NIX_CFLAGS_COMPILE = "-D__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__=101300"; + }; + CC_host = "cc"; CXX_host = "c++"; depsBuildBuild = [ buildPackages.stdenv.cc openssl libuv zlib icu ]; diff --git a/pkgs/development/web/nodejs/v14.nix b/pkgs/development/web/nodejs/v14.nix index e7dec1c12f66..c2d5d58bea78 100644 --- a/pkgs/development/web/nodejs/v14.nix +++ b/pkgs/development/web/nodejs/v14.nix @@ -1,8 +1,20 @@ -{ callPackage, python3, lib, stdenv, openssl, enableNpm ? true }: +{ callPackage, lib, overrideCC, pkgs, buildPackages, openssl, python3, enableNpm ? true }: let + # Clang 16+ cannot build Node v14 due to -Wenum-constexpr-conversion errors. + # Use an older version of clang with the current libc++ for compatibility (e.g., with icu). + ensureCompatibleCC = packages: + if packages.stdenv.cc.isClang && lib.versionAtLeast (lib.getVersion packages.stdenv.cc.cc) "16" + then overrideCC packages.llvmPackages_15.stdenv (packages.llvmPackages_15.stdenv.cc.override { + inherit (packages.llvmPackages) libcxx; + extraPackages = [ packages.llvmPackages.libcxxabi ]; + }) + else packages.stdenv; + buildNodejs = callPackage ./nodejs.nix { inherit openssl; + stdenv = ensureCompatibleCC pkgs; + buildPackages = buildPackages // { stdenv = ensureCompatibleCC buildPackages; }; python = python3; }; in @@ -10,5 +22,5 @@ in inherit enableNpm; version = "14.21.3"; sha256 = "sha256-RY7AkuYK1wDdzwectj1DXBXaTHuz0/mbmo5YqZ5UB14="; - patches = lib.optional stdenv.isDarwin ./bypass-xcodebuild.diff; + patches = lib.optional pkgs.stdenv.isDarwin ./bypass-xcodebuild.diff; } diff --git a/pkgs/development/web/nodejs/v16.nix b/pkgs/development/web/nodejs/v16.nix index d4bb94c07d3e..930b648ca559 100644 --- a/pkgs/development/web/nodejs/v16.nix +++ b/pkgs/development/web/nodejs/v16.nix @@ -1,8 +1,20 @@ -{ callPackage, openssl, python3, fetchpatch, enableNpm ? true }: +{ callPackage, lib, overrideCC, pkgs, buildPackages, openssl, python3, fetchpatch, enableNpm ? true }: let + # Clang 16+ cannot build Node v14 due to -Wenum-constexpr-conversion errors. + # Use an older version of clang with the current libc++ for compatibility (e.g., with icu). + ensureCompatibleCC = packages: + if packages.stdenv.cc.isClang && lib.versionAtLeast (lib.getVersion packages.stdenv.cc.cc) "16" + then overrideCC packages.llvmPackages_15.stdenv (packages.llvmPackages_15.stdenv.cc.override { + inherit (packages.llvmPackages) libcxx; + extraPackages = [ packages.llvmPackages.libcxxabi ]; + }) + else packages.stdenv; + buildNodejs = callPackage ./nodejs.nix { inherit openssl; + stdenv = ensureCompatibleCC pkgs; + buildPackages = buildPackages // { stdenv = ensureCompatibleCC buildPackages; }; python = python3; }; diff --git a/pkgs/development/web/nodejs/v18.nix b/pkgs/development/web/nodejs/v18.nix index 3c8abbb29188..b36e8e3d0f3a 100644 --- a/pkgs/development/web/nodejs/v18.nix +++ b/pkgs/development/web/nodejs/v18.nix @@ -1,8 +1,20 @@ -{ callPackage, fetchpatch, openssl, python3, enableNpm ? true }: +{ callPackage, lib, overrideCC, pkgs, buildPackages, fetchpatch, openssl, python3, enableNpm ? true }: let + # Clang 16+ cannot build Node v18 due to -Wenum-constexpr-conversion errors. + # Use an older version of clang with the current libc++ for compatibility (e.g., with icu). + ensureCompatibleCC = packages: + if packages.stdenv.cc.isClang && lib.versionAtLeast (lib.getVersion packages.stdenv.cc.cc) "16" + then overrideCC packages.llvmPackages_15.stdenv (packages.llvmPackages_15.stdenv.cc.override { + inherit (packages.llvmPackages) libcxx; + extraPackages = [ packages.llvmPackages.libcxxabi ]; + }) + else packages.stdenv; + buildNodejs = callPackage ./nodejs.nix { inherit openssl; + stdenv = ensureCompatibleCC pkgs; + buildPackages = buildPackages // { stdenv = ensureCompatibleCC buildPackages; }; python = python3; }; in |