nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 python3Packages,
5 fetchFromGitHub,
6 pandoc,
7}:
8
9let
10 pythonPackages = python3Packages.overrideScope (
11 self: super: {
12 lsprotocol = self.lsprotocol_2023;
13 pygls = self.pygls_1;
14 }
15 );
16in
17pythonPackages.buildPythonApplication rec {
18 pname = "systemd-language-server";
19 version = "0.3.5";
20 pyproject = true;
21
22 src = fetchFromGitHub {
23 owner = "psacawa";
24 repo = "systemd-language-server";
25 tag = version;
26 hash = "sha256-QRd2mV4qRh4OfVJ2/5cOm3Wh8ydsLTG9Twp346DHjs0=";
27 };
28
29 build-system = with pythonPackages; [
30 poetry-core
31 ];
32
33 pythonRelaxDeps = [
34 "lxml"
35 ];
36 dependencies = with pythonPackages; [
37 lxml
38 pygls
39 ];
40
41 pythonImportsCheck = [ "systemd_language_server" ];
42
43 nativeCheckInputs = [
44 pandoc
45 pythonPackages.pytestCheckHook
46 ];
47
48 disabledTests = lib.optionals stdenv.hostPlatform.isDarwin [
49 # TimeoutError
50 "test_hover"
51 ];
52
53 __darwinAllowLocalNetworking = true;
54
55 meta = {
56 description = "Language Server for Systemd unit files";
57 homepage = "https://github.com/psacawa/systemd-language-server";
58 changelog = "https://github.com/psacawa/systemd-language-server/releases/tag/${version}";
59 license = lib.licenses.gpl3Only;
60 maintainers = with lib.maintainers; [ GaetanLepage ];
61 mainProgram = "systemd-language-server";
62 };
63}