xin/pkgs/ada_language_server.nix

85 lines
1.9 KiB
Nix
Raw Normal View History

2023-09-12 08:44:05 -06:00
{ lib
, stdenv
, fetchFromGitHub
, pkgs
, ...
}:
let
libadalang = stdenv.mkDerivation rec {
pname = "libadalang";
version = "22.0.0";
src = fetchFromGitHub {
owner = "AdaCore";
repo = pname;
rev = "v${version}";
sha256 = "sha256-/nInRma0OKmI6E8nPvQlIYStl0kcPfAudvzbEyO5jJM=";
};
buildInputs = with pkgs; [
gnat12
gprbuild
python3
gnatcoll-core
gnatcoll-iconv
gnatcoll-gmp
];
2023-09-12 08:44:05 -06:00
makeFlags = [ "PREFIX=$(out)" ];
};
vss = stdenv.mkDerivation rec {
pname = "vss";
version = "22.0.0";
src = fetchFromGitHub {
owner = "AdaCore";
repo = pname;
rev = "v${version}";
sha256 = "sha256-IDPcIJfavlqMsxLOGrvXYv98FdYVWkCiimLcMFp3ees=";
};
2023-09-12 08:44:05 -06:00
buildInputs = with pkgs; [ gnat12 gprbuild ];
2023-09-12 08:44:05 -06:00
makeFlags = [ "PREFIX=$(out)" ];
};
gnatdoc = stdenv.mkDerivation rec {
pname = "gnatdoc";
version = "2022-10-04";
src = fetchFromGitHub {
owner = "AdaCore";
repo = pname;
rev = "7cdc2eae12199bc74b84d5677288fbbd55f98c25";
sha256 = "sha256-kA5yOd3NDkRl08o38F5CyeFrihBZktNF6di3PC+/ZLU=";
};
2023-09-12 08:44:05 -06:00
buildInputs = with pkgs; [ gnat12 gprbuild libadalang ];
2023-09-12 08:44:05 -06:00
makeFlags = [ "PREFIX=$(out)" ];
};
2023-07-11 09:12:50 -06:00
in
2023-09-12 08:44:05 -06:00
stdenv.mkDerivation rec {
pname = "ada_language_server";
version = "23.0.10";
2023-09-12 08:44:05 -06:00
src = fetchFromGitHub {
owner = "AdaCore";
repo = pname;
rev = version;
sha256 = "sha256-ZUzym0aMjq14W9h/lDL5hVCF/i+1SFu6kccGqzmGO3E=";
};
2023-09-12 08:44:05 -06:00
buildInputs = with pkgs; [ gnat12 gprbuild python3 vss gnatdoc ];
2023-09-12 08:44:05 -06:00
meta = with lib; {
description = "Language server for Ada and SPARK";
longDescription = ''
Server implementing the Microsoft Language Protocol for Ada and SPARk
'';
homepage = "https://github.com/AdaCore/ada_language_server";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ qbit ];
};
}