diff options
author | oxalica <oxalicc@pm.me> | 2020-04-11 14:51:06 +0800 |
---|---|---|
committer | oxalica <oxalicc@pm.me> | 2020-04-11 16:01:12 +0800 |
commit | 8318c36a4b1d40be930092787a8bb64e255f8620 (patch) | |
tree | ee20c4d0379df65543c468b7a592e94b57e49af0 /pkgs/development/tools | |
parent | e8d04d379789bd4922cf3dcbf3c03b413cc7800b (diff) | |
download | nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.tar nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.tar.gz nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.tar.bz2 nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.tar.lz nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.tar.xz nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.tar.zst nixlib-8318c36a4b1d40be930092787a8bb64e255f8620.zip |
vscode-extensions.rust-analyzer: use global NPM packages to share dependencies
Diffstat (limited to 'pkgs/development/tools')
-rwxr-xr-x | pkgs/development/tools/rust/rust-analyzer/update.sh | 33 |
1 files changed, 13 insertions, 20 deletions
diff --git a/pkgs/development/tools/rust/rust-analyzer/update.sh b/pkgs/development/tools/rust/rust-analyzer/update.sh index 8a4dabbd8be2..929112542596 100755 --- a/pkgs/development/tools/rust/rust-analyzer/update.sh +++ b/pkgs/development/tools/rust/rust-analyzer/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl jq nix-prefetch nodePackages.node2nix +#!nix-shell -i bash -p curl jq nix-prefetch set -euo pipefail cd "$(dirname "$0")" owner=rust-analyzer @@ -46,23 +46,16 @@ sed "s/cargoSha256 = \".*\"/cargoSha256 = \"$cargo_sha256\"/" \ # Update vscode extension -echo "Generating node lock" -pushd "$nixpkgs/pkgs/misc/vscode-extensions/rust-analyzer" -ext_version=$(jq '.version' "$node_src/package.json" --raw-output) -ext_publisher=$(jq '.publisher' "$node_src/package.json" --raw-output) -echo "Extension version: $ext_version" -[[ "$ext_publisher" == "matklad" ]] -node2nix \ - --nodejs-12 \ - --development \ - --input "$node_src/package.json" \ - --lock "$node_src/package-lock.json" \ - --output ./node-packages.nix \ - --composition ./node-composition.nix \ - --no-copy-node-env \ - --node-env ../../../development/node-packages/node-env.nix -sed -e 's_^.*src = [./]*/nix/store.*__g' \ - --in-place ./node-packages.nix -sed -e "s/version = \".*\"/version = \"$ext_version\"/" \ - --in-place ./default.nix +build_deps="../../../../misc/vscode-extensions/rust-analyzer/build-deps" +# We need devDependencies to build vsix. +jq '{ name, version, dependencies: (.dependencies + .devDependencies) }' "$node_src/package.json" \ + >"$build_deps/package.json" + +# FIXME: Lock the version of @type/vscode, the latest one (1.43.0) will cause build failure. +vscode_lock_ver="$(jq '.dependencies."@types/vscode".version' --raw-output "$node_src/package-lock.json")" +jq '.dependencies."@types/vscode" = "'$vscode_lock_ver'"' "$build_deps/package.json" >"$build_deps/package.json.new" +mv "$build_deps"/package.json{.new,} + +pushd "../../../node-packages" +./generate.sh popd |