diff options
author | Minijackson <minijackson@riseup.net> | 2020-01-12 13:23:58 +0100 |
---|---|---|
committer | Minijackson <minijackson@riseup.net> | 2020-01-12 13:23:58 +0100 |
commit | 19a0d9c2724695c9e05fe0b85bbbdf03ebeeec5b (patch) | |
tree | f030067e06c4565f7110011acc823ef25a6f89bf /derivation.nix | |
parent | a2776c015b6069e2795cc896bdb918be811296a7 (diff) | |
download | poseidoc-19a0d9c2724695c9e05fe0b85bbbdf03ebeeec5b.tar.gz poseidoc-19a0d9c2724695c9e05fe0b85bbbdf03ebeeec5b.zip |
nix: add proper derivation
Diffstat (limited to 'derivation.nix')
-rw-r--r-- | derivation.nix | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/derivation.nix b/derivation.nix new file mode 100644 index 0000000..e877c04 --- /dev/null +++ b/derivation.nix | |||
@@ -0,0 +1,27 @@ | |||
1 | { stdenv, rustPlatform, llvm, libclang, clang, runtimeShell }: | ||
2 | |||
3 | rustPlatform.buildRustPackage { | ||
4 | pname = "poseidoc"; | ||
5 | version = "0.1"; | ||
6 | |||
7 | src = ./.; | ||
8 | |||
9 | buildInputs = [ llvm libclang ]; | ||
10 | LIBCLANG_PATH = "${libclang}/lib"; | ||
11 | |||
12 | cargoSha256 = "0hrqzfzirq8xx32l969367xznlr6wf606xnwkqzknxdc2lxs7k40"; | ||
13 | |||
14 | postFixup = '' | ||
15 | shell=${runtimeShell} | ||
16 | wrapped='.poseidoc-wrapped' | ||
17 | libc_includes='-idirafter "${clang.libc_dev}/include"' | ||
18 | cxx_stdlib_flags='$(echo -n "${clang.default_cxx_stdlib_compile}")' | ||
19 | resource_dir_flags='-resource-dir=${clang}/resource-root' | ||
20 | |||
21 | export shell wrapped libc_includes cxx_stdlib_flags resource_dir_flags | ||
22 | |||
23 | mv $out/bin/poseidoc $out/bin/$wrapped | ||
24 | substituteAll ${./nix-wrapper.sh} $out/bin/poseidoc | ||
25 | chmod --reference=$out/bin/$wrapped $out/bin/poseidoc | ||
26 | ''; | ||
27 | } | ||