parent
3ea54e6972
commit
b0a4ce1689
@ -0,0 +1,50 @@ |
||||
# Update script: pkgs/development/tools/rust/rust-analyzer/update.sh |
||||
{ lib, pkgs, stdenv, nodejs, vscode-utils, jq, rust-analyzer |
||||
, setDefaultRaLspServerPath ? true |
||||
}: |
||||
|
||||
let |
||||
pname = "rust-analyzer"; |
||||
publisher = "matklad"; |
||||
|
||||
# Follow the unstable version of rust-analyzer, since the extension is not stable yet. |
||||
inherit (rust-analyzer) version; |
||||
|
||||
vsix = (import ./node-composition.nix { |
||||
inherit pkgs nodejs; |
||||
inherit (stdenv.hostPlatform) system; |
||||
}).package.override { |
||||
src = "${rust-analyzer.src}/editors/code"; |
||||
outputs = [ "vsix" "out" ]; |
||||
|
||||
postInstall = '' |
||||
npm run package |
||||
mkdir $vsix |
||||
cp ${pname}.vsix $vsix/${pname}.zip |
||||
''; |
||||
}; |
||||
|
||||
in vscode-utils.buildVscodeExtension { |
||||
inherit version vsix; |
||||
name = "${pname}-${version}"; |
||||
src = "${vsix}/${pname}.zip"; |
||||
vscodeExtUniqueId = "${publisher}.${pname}"; |
||||
|
||||
nativeBuildInputs = lib.optional setDefaultRaLspServerPath jq; |
||||
|
||||
postFixup = lib.optionalString setDefaultRaLspServerPath '' |
||||
package_json="$out/share/vscode/extensions/${publisher}.${pname}/package.json" |
||||
jq '.contributes.configuration.properties."rust-analyzer.serverPath".default = $s' \ |
||||
--arg s "${rust-analyzer}/bin/rust-analyzer" \ |
||||
$package_json >$package_json.new |
||||
mv $package_json.new $package_json |
||||
''; |
||||
|
||||
meta = with lib; { |
||||
description = "An alternative rust language server to the RLS"; |
||||
homepage = "https://github.com/rust-analyzer/rust-analyzer"; |
||||
license = with licenses; [ mit asl20 ]; |
||||
maintainers = with maintainers; [ oxalica ]; |
||||
platforms = platforms.all; |
||||
}; |
||||
} |
@ -0,0 +1,17 @@ |
||||
# This file has been generated by node2nix 1.7.0. Do not edit! |
||||
|
||||
{pkgs ? import <nixpkgs> { |
||||
inherit system; |
||||
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}: |
||||
|
||||
let |
||||
nodeEnv = import ../../../development/node-packages/node-env.nix { |
||||
inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile; |
||||
inherit nodejs; |
||||
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null; |
||||
}; |
||||
in |
||||
import ./node-packages.nix { |
||||
inherit (pkgs) fetchurl fetchgit; |
||||
inherit nodeEnv; |
||||
} |
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue