Unverified Commit 363da528 authored by Pol Dellaiera's avatar Pol Dellaiera Committed by GitHub
Browse files

Merge pull request #336523 from GaetanLepage/typst-lsp

typst-lsp: fix by updating dependencies
parents 75f23fa8 a09a3a78
Loading
Loading
Loading
Loading
+82 −0
Original line number Diff line number Diff line
{ lib
, rustPlatform
, fetchFromGitHub
, stdenv
, darwin
{
  lib,
  rustPlatform,
  fetchFromGitHub,
  stdenv,
  darwin,
  nix-update-script,
  vscode-extensions,
  testers,
  typst-lsp,
}:

rustPlatform.buildRustPackage rec {
@@ -14,7 +19,7 @@ rustPlatform.buildRustPackage rec {
  src = fetchFromGitHub {
    owner = "nvarner";
    repo = "typst-lsp";
    rev = "v${version}";
    rev = "refs/tags/v${version}";
    hash = "sha256-OubKtSHw9L4GzVzZY0AVdHY7LzKg/XQIhUfUc2OYAG0=";
  };

@@ -26,14 +31,22 @@ rustPlatform.buildRustPackage rec {
    };
  };

  buildInputs = lib.optionals stdenv.isDarwin [
    darwin.apple_sdk.frameworks.SystemConfiguration
  ];
  # In order to make typst-lsp build with rust >= 1.80, we use the patched Cargo.lock from
  # https://github.com/nvarner/typst-lsp/pull/515
  # TODO remove once the PR will have been merged upstream
  postPatch = ''
    rm Cargo.lock
    ln -s ${./Cargo.lock} Cargo.lock
  '';

  checkFlags = [
  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.SystemConfiguration ];

  checkFlags =
    [
      # requires internet access
      "--skip=workspace::package::external::remote_repo::test::full_download"
  ] ++ lib.optionals stdenv.isDarwin [
    ]
    ++ lib.optionals stdenv.isDarwin [
      # both tests fail on darwin with 'Attempted to create a NULL object.'
      "--skip=workspace::fs::local::test::read"
      "--skip=workspace::package::external::manager::test::local_package"
@@ -44,15 +57,26 @@ rustPlatform.buildRustPackage rec {
    export HOME=$(mktemp -d)
  '';

  passthru = {
    updateScript = nix-update-script { };
    tests = {
      vscode-extension = vscode-extensions.nvarner.typst-lsp;
      version = testers.testVersion { package = typst-lsp; };
    };
  };

  meta = {
    description = "Brand-new language server for Typst";
    homepage = "https://github.com/nvarner/typst-lsp";
    mainProgram = "typst-lsp";
    changelog = "https://github.com/nvarner/typst-lsp/releases/tag/${src.rev}";
    license = with lib.licenses; [ asl20 mit ];
    maintainers = with lib.maintainers; [ figsoda GaetanLepage ];
    # Incompatible with Rust >= 1.80
    # Fix to be merged upstream: https://github.com/nvarner/typst-lsp/pull/515
    broken = true;
    license = with lib.licenses; [
      asl20
      mit
    ];
    maintainers = with lib.maintainers; [
      figsoda
      GaetanLepage
    ];
  };
}
+0 −2
Original line number Diff line number Diff line
@@ -17353,8 +17353,6 @@ with pkgs;
  svls = callPackage ../development/tools/language-servers/svls { };
  typst-lsp = callPackage ../development/tools/language-servers/typst-lsp { };
  vala-language-server = callPackage ../development/tools/language-servers/vala-language-server { };
  vscode-langservers-extracted = callPackage ../development/tools/language-servers/vscode-langservers-extracted { };