rust-analyzer: merge version specific fields into generic derivation
This commit is contained in:
parent
d4e758c5ac
commit
6efb930e18
@ -1,16 +0,0 @@
|
|||||||
{ pkgs, callPackage, CoreServices }:
|
|
||||||
|
|
||||||
{
|
|
||||||
rust-analyzer-unwrapped = callPackage ./generic.nix rec {
|
|
||||||
rev = "2021-04-05";
|
|
||||||
version = "unstable-${rev}";
|
|
||||||
sha256 = "sha256-ZDxy87F3uz8bTF1/2LIy5r4Nv/M3xe97F7mwJNEFcUs=";
|
|
||||||
cargoSha256 = "sha256-kDwdKa08E0h24lOOa7ALeNqHlMjMry/ru1qwCIyKmuE=";
|
|
||||||
|
|
||||||
inherit CoreServices;
|
|
||||||
};
|
|
||||||
|
|
||||||
rust-analyzer = callPackage ./wrapper.nix {} {
|
|
||||||
unwrapped = pkgs.rust-analyzer-unwrapped;
|
|
||||||
};
|
|
||||||
}
|
|
@ -2,19 +2,22 @@
|
|||||||
, libiconv
|
, libiconv
|
||||||
, useMimalloc ? false
|
, useMimalloc ? false
|
||||||
, doCheck ? true
|
, doCheck ? true
|
||||||
|
|
||||||
# Version specific args
|
|
||||||
, rev, version, sha256, cargoSha256
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
rev = "2021-04-05";
|
||||||
|
in
|
||||||
|
|
||||||
rustPlatform.buildRustPackage {
|
rustPlatform.buildRustPackage {
|
||||||
pname = "rust-analyzer-unwrapped";
|
pname = "rust-analyzer-unwrapped";
|
||||||
inherit version cargoSha256;
|
version = "unstable-${rev}";
|
||||||
|
cargoSha256 = "sha256-kDwdKa08E0h24lOOa7ALeNqHlMjMry/ru1qwCIyKmuE=";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "rust-analyzer";
|
owner = "rust-analyzer";
|
||||||
repo = "rust-analyzer";
|
repo = "rust-analyzer";
|
||||||
inherit rev sha256;
|
inherit rev;
|
||||||
|
sha256 = "sha256-ZDxy87F3uz8bTF1/2LIy5r4Nv/M3xe97F7mwJNEFcUs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildAndTestSubdir = "crates/rust-analyzer";
|
buildAndTestSubdir = "crates/rust-analyzer";
|
||||||
|
@ -25,7 +25,7 @@ echo "$old_rev -> $rev"
|
|||||||
sha256=$(nix-prefetch -f "$nixpkgs" rust-analyzer-unwrapped.src --rev "$rev")
|
sha256=$(nix-prefetch -f "$nixpkgs" rust-analyzer-unwrapped.src --rev "$rev")
|
||||||
# Clear cargoSha256 to avoid inconsistency.
|
# Clear cargoSha256 to avoid inconsistency.
|
||||||
sed -e "s#rev = \".*\"#rev = \"$rev\"#" \
|
sed -e "s#rev = \".*\"#rev = \"$rev\"#" \
|
||||||
-e "s#sha256 = \".*\"#sha256 = \"$sha256\"#" \
|
-e "/fetchFromGitHub/,/}/ s#sha256 = \".*\"#sha256 = \"$sha256\"#" \
|
||||||
-e "s#cargoSha256 = \".*\"#cargoSha256 = \"sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"#" \
|
-e "s#cargoSha256 = \".*\"#cargoSha256 = \"sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=\"#" \
|
||||||
--in-place ./default.nix
|
--in-place ./default.nix
|
||||||
node_src="$(nix-build "$nixpkgs" -A rust-analyzer.src --no-out-link)/editors/code"
|
node_src="$(nix-build "$nixpkgs" -A rust-analyzer.src --no-out-link)/editors/code"
|
||||||
|
@ -1,17 +1,15 @@
|
|||||||
{ lib, rustPlatform, runCommandNoCC, makeWrapper }:
|
{ lib, rustPlatform, runCommand, makeWrapper, rust-analyzer-unwrapped
|
||||||
|
, pname ? "rust-analyzer"
|
||||||
lib.makeOverridable ({
|
, version ? rust-analyzer-unwrapped.version
|
||||||
unwrapped,
|
|
||||||
pname ? "rust-analyzer",
|
|
||||||
version ? unwrapped.version,
|
|
||||||
# Use name from `RUST_SRC_PATH`
|
# Use name from `RUST_SRC_PATH`
|
||||||
rustSrc ? rustPlatform.rustLibSrc,
|
, rustSrc ? rustPlatform.rustLibSrc
|
||||||
}: runCommandNoCC "${pname}-${version}" {
|
}:
|
||||||
|
runCommand "${pname}-${version}" {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
inherit (unwrapped) src meta;
|
inherit (rust-analyzer-unwrapped) src meta;
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
nativeBuildInputs = [ makeWrapper ];
|
||||||
} ''
|
} ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
makeWrapper ${unwrapped}/bin/rust-analyzer $out/bin/rust-analyzer \
|
makeWrapper ${rust-analyzer-unwrapped}/bin/rust-analyzer $out/bin/rust-analyzer \
|
||||||
--set-default RUST_SRC_PATH "${rustSrc}"
|
--set-default RUST_SRC_PATH "${rustSrc}"
|
||||||
'')
|
''
|
||||||
|
@ -11321,10 +11321,10 @@ in
|
|||||||
rustracerd = callPackage ../development/tools/rust/racerd {
|
rustracerd = callPackage ../development/tools/rust/racerd {
|
||||||
inherit (darwin.apple_sdk.frameworks) Security;
|
inherit (darwin.apple_sdk.frameworks) Security;
|
||||||
};
|
};
|
||||||
inherit (callPackage ../development/tools/rust/rust-analyzer {
|
rust-analyzer-unwrapped = callPackage ../development/tools/rust/rust-analyzer {
|
||||||
inherit (darwin.apple_sdk.frameworks) CoreServices;
|
inherit (darwin.apple_sdk.frameworks) CoreServices;
|
||||||
})
|
};
|
||||||
rust-analyzer-unwrapped rust-analyzer;
|
rust-analyzer = callPackage ../development/tools/rust/rust-analyzer/wrapper.nix { };
|
||||||
rust-bindgen = callPackage ../development/tools/rust/bindgen { };
|
rust-bindgen = callPackage ../development/tools/rust/bindgen { };
|
||||||
rust-cbindgen = callPackage ../development/tools/rust/cbindgen {
|
rust-cbindgen = callPackage ../development/tools/rust/cbindgen {
|
||||||
inherit (darwin.apple_sdk.frameworks) Security;
|
inherit (darwin.apple_sdk.frameworks) Security;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user