forked from zigtools/zls
-
Notifications
You must be signed in to change notification settings - Fork 0
/
default.nix
32 lines (31 loc) · 967 Bytes
/
default.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{ pkgs ? import <nixpkgs> {},
system ? builtins.currentSystem }:
let
zig-overlay = pkgs.fetchFromGitHub {
owner = "arqv";
repo = "zig-overlay";
rev = "5b9504b8bff072553051d6e130727f7f5c0715c3";
sha256 = "NDm5qT6/qr789IhI2dsQxrR5/Mr7cXVj17x/+tl3pDE=";
};
gitignoreSrc = pkgs.fetchFromGitHub {
owner = "hercules-ci";
repo = "gitignore";
rev = "c4662e662462e7bf3c2a968483478a665d00e717";
sha256 = "1npnx0h6bd0d7ql93ka7azhj40zgjp815fw2r6smg8ch9p7mzdlx";
};
inherit (import gitignoreSrc { inherit (pkgs) lib; }) gitignoreSource;
zig = (import zig-overlay { inherit pkgs system; }).master.latest;
in
pkgs.stdenvNoCC.mkDerivation {
name = "zls";
version = "master";
src = gitignoreSource ./.;
nativeBuildInputs = [ zig ];
dontConfigure = true;
dontInstall = true;
buildPhase = ''
mkdir -p $out
zig build install -Drelease-safe=true -Ddata_version=master --prefix $out
'';
XDG_CACHE_HOME = ".cache";
}