Merge pull request #329823 from ExpidusOS/fix/pkgsllvm/elfutils
[NixPkgs.git] / pkgs / by-name / ti / tinymist / package.nix
bloba05bd915fcaf4ca3056a04da137f67b75dd6a88c
1 { lib
2 , rustPlatform
3 , fetchFromGitHub
4 , pkg-config
5 , libgit2
6 , openssl
7 , zlib
8 , stdenv
9 , darwin
10 , nix-update-script
11 , testers
12 , tinymist
15 rustPlatform.buildRustPackage rec {
16   pname = "tinymist";
17   # Please update the corresponding vscode extension when updating
18   # this derivation.
19   version = "0.11.16";
21   src = fetchFromGitHub {
22     owner = "Myriad-Dreamin";
23     repo = "tinymist";
24     rev = "refs/tags/v${version}";
25     hash = "sha256-5UNgjK4636XXjUaq2XqYs1a7vY1b+0OGZbI0xajSVcc=";
26   };
28   cargoLock = {
29     lockFile = ./Cargo.lock;
30     outputHashes = {
31       "typst-0.11.1" = "sha256-VDwyTKrtzmjMhVCp/GnZrgL6P6dLyKlLNA+LhoXBDl0=";
32       "typst-syntax-0.7.0" = "sha256-yrtOmlFAKOqAmhCP7n0HQCOQpU3DWyms5foCdUb9QTg=";
33       "typstfmt_lib-0.2.7" = "sha256-LBYsTCjZ+U+lgd7Z3H1sBcWwseoHsuepPd66bWgfvhI=";
34     };
35   };
37   nativeBuildInputs = [
38     pkg-config
39   ];
41   buildInputs = [
42     libgit2
43     openssl
44     zlib
45   ] ++ lib.optionals stdenv.isDarwin [
46     darwin.apple_sdk_11_0.frameworks.CoreFoundation
47     darwin.apple_sdk_11_0.frameworks.CoreServices
48     darwin.apple_sdk_11_0.frameworks.Security
49     darwin.apple_sdk_11_0.frameworks.SystemConfiguration
50   ];
52   checkFlags = [
53     "--skip=e2e"
54     # Fails because of missing `creation_timestamp` field
55     # https://github.com/NixOS/nixpkgs/pull/328756#issuecomment-2241322796
56     "--skip=test_config_update"
57   ];
59   passthru = {
60     updateScript = nix-update-script { };
61     tests.version = testers.testVersion {
62       command = "${meta.mainProgram} -V";
63       package = tinymist;
64     };
65   };
67   meta = {
68     changelog = "https://github.com/Myriad-Dreamin/tinymist/blob/${src.rev}/CHANGELOG.md";
69     description = "Tinymist is an integrated language service for Typst";
70     homepage = "https://github.com/Myriad-Dreamin/tinymist";
71     license = lib.licenses.asl20;
72     mainProgram = "tinymist";
73     maintainers = with lib.maintainers; [ lampros ];
74   };