python312Packages.types-aiobotocore: 2.15.2 -> 2.15.2.post3 (#361801)
[NixPkgs.git] / pkgs / by-name / ll / llm-ls / package.nix
blobc7a0aec58a2283529bb9a4dfd88384242122c406
1 { lib
2 , stdenv
3 , rustPlatform
4 , fetchFromGitHub
5 , fetchpatch
6 , pkg-config
7 , libiconv
8 , darwin
9 , testers
10 , llm-ls
13 let
14   pname = "llm-ls";
15   version = "0.5.3";
17 rustPlatform.buildRustPackage {
18   inherit pname version;
20   src = fetchFromGitHub {
21     owner = "huggingface";
22     repo = "llm-ls";
23     rev = version;
24     hash = "sha256-ICMM2kqrHFlKt2/jmE4gum1Eb32afTJkT3IRoqcjJJ8=";
25   };
27   cargoHash = "sha256-m/w9aJZCCh1rgnHlkGQD/pUDoWn2/WRVt5X4pFx9nC4=";
29   cargoPatches = [
30     # https://github.com/huggingface/llm-ls/pull/102
31     ./fix-time-compilation-failure.patch
32     (fetchpatch {
33       name = "fix-version.patch";
34       url = "https://github.com/huggingface/llm-ls/commit/479401f3a5173f2917a888c8068f84e29b7dceed.patch?full_index=1";
35       hash = "sha256-4gXasfMqlrrP8II+FiV/qGfO7a9qFkDQMiax7yEua5E=";
36     })
37   ];
39   buildAndTestSubdir = "crates/llm-ls";
41   nativeBuildInputs = [ pkg-config ];
43   buildInputs = [
44     libiconv
45   ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
46     darwin.apple_sdk.frameworks.Security
47   ];
49   passthru.tests.version = testers.testVersion {
50     package = llm-ls;
51   };
53   meta = with lib; {
54     description = "LSP server leveraging LLMs for code completion (and more?)";
55     homepage = "https://github.com/huggingface/llm-ls";
56     license = licenses.asl20;
57     maintainers = with maintainers; [ jfvillablanca ];
58     platforms = platforms.all;
59     mainProgram = "llm-ls";
60   };