Add Nix support for `dhall-lsp-server` project (#849)

This commit is contained in:
Gabriel Gonzalez 2019-03-10 09:43:44 -07:00 committed by GitHub
parent 21f9e951cc
commit f703d271b6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 83 additions and 18 deletions

View File

@ -38,6 +38,7 @@ visit one of the following links:
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall/latest)
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-bash/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-bash/latest)
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-json/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-json/latest)
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-lsp-server/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-lsp-server/latest)
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-text/latest](https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-text/latest)
You can then click the "Help" button in the bottom right corner, which will

View File

@ -7,7 +7,13 @@ let
import ./nix/shared.nix { compiler = "ghcjs"; system = "x86_64-linux"; };
in
{ inherit (shared.possibly-static) dhall dhall-bash dhall-json dhall-text;
{ inherit (shared.possibly-static)
dhall
dhall-bash
dhall-json
dhall-lsp-server
dhall-text
;
inherit (shared_ghcjs) dhall-try;

View File

@ -70,7 +70,7 @@ parserInfoOptions =
runCommand :: Options -> IO ()
runCommand Options{..} = case command of
CmdVersion -> putStrLn "0.0.1.1" -- TODO: read from build
CmdVersion -> putStrLn ("0.0.1.1" :: String)-- TODO: read from build
Default ->
run logFile (pure ()) >>= \case
0 -> exitSuccess

View File

@ -1 +1 @@
(import ../nix/shared.nix { coverage = true; }).shell-dhall
(import ../nix/shared.nix {}).shell-dhall-lsp-server

View File

@ -1,2 +1,2 @@
main :: IO ()
main = putStrLn "Test suite not yet implemented"
main = putStrLn ("Test suite not yet implemented" :: String)

16
nix/haskell-lsp-types.nix Normal file
View File

@ -0,0 +1,16 @@
{ mkDerivation, aeson, base, bytestring, data-default, filepath
, hashable, lens, network-uri, scientific, stdenv, text
, unordered-containers
}:
mkDerivation {
pname = "haskell-lsp-types";
version = "0.8.0.1";
sha256 = "c8a3fec8c38ebe7da931e14e9b0381acde33882d2a46ced5ece5fe9fb133f033";
libraryHaskellDepends = [
aeson base bytestring data-default filepath hashable lens
network-uri scientific text unordered-containers
];
homepage = "https://github.com/alanz/haskell-lsp";
description = "Haskell library for the Microsoft Language Server Protocol, data types";
license = stdenv.lib.licenses.mit;
}

29
nix/haskell-lsp.nix Normal file
View File

@ -0,0 +1,29 @@
{ mkDerivation, aeson, base, bytestring, containers, data-default
, directory, filepath, hashable, haskell-lsp-types, hslogger, hspec
, lens, mtl, network-uri, parsec, sorted-list, stdenv, stm, text
, time, transformers, unordered-containers, vector, yi-rope
}:
mkDerivation {
pname = "haskell-lsp";
version = "0.8.1.0";
sha256 = "9d4d5400a08b97c43924393e8d2db12948300805965e32f4624e6808a149bec6";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
aeson base bytestring containers data-default directory filepath
hashable haskell-lsp-types hslogger lens mtl network-uri parsec
sorted-list stm text time unordered-containers yi-rope
];
executableHaskellDepends = [
aeson base bytestring containers data-default directory filepath
hslogger lens mtl network-uri parsec stm text time transformers
unordered-containers vector yi-rope
];
testHaskellDepends = [
aeson base bytestring containers data-default directory filepath
hashable hspec lens network-uri sorted-list stm text yi-rope
];
homepage = "https://github.com/alanz/haskell-lsp";
description = "Haskell library for the Microsoft Language Server Protocol";
license = stdenv.lib.licenses.mit;
}

View File

@ -181,6 +181,12 @@ let
../dhall-json
{ };
dhall-lsp-server =
haskellPackagesNew.callCabal2nix
"dhall-lsp-server"
../dhall-lsp-server
{ };
dhall-text =
haskellPackagesNew.callCabal2nix
"dhall-text"
@ -466,6 +472,9 @@ let
dhall-json-static =
pkgsNew.haskell.lib.statify haskellPackagesOld.dhall-json;
dhall-lsp-server-static =
pkgsNew.haskell.lib.statify haskellPackagesOld.dhall-lsp-server;
dhall-text-static =
pkgsNew.haskell.lib.statify haskellPackagesOld.dhall-text;
};
@ -531,28 +540,32 @@ in
inherit pwd;
possibly-static = {
dhall = makeStaticIfPossible "dhall" ;
dhall-bash = makeStaticIfPossible "dhall-bash";
dhall-json = makeStaticIfPossible "dhall-json";
dhall-text = makeStaticIfPossible "dhall-text";
dhall = makeStaticIfPossible "dhall" ;
dhall-bash = makeStaticIfPossible "dhall-bash";
dhall-json = makeStaticIfPossible "dhall-json";
dhall-lsp-server = makeStaticIfPossible "dhall-lsp-server";
dhall-text = makeStaticIfPossible "dhall-text";
};
tarball-dhall = makeTarball "dhall" ;
tarball-dhall-bash = makeTarball "dhall-bash";
tarball-dhall-json = makeTarball "dhall-json";
tarball-dhall-text = makeTarball "dhall-text";
tarball-dhall = makeTarball "dhall" ;
tarball-dhall-bash = makeTarball "dhall-bash";
tarball-dhall-json = makeTarball "dhall-json";
tarball-dhall-lsp-server = makeTarball "dhall-lsp-server";
tarball-dhall-text = makeTarball "dhall-text";
inherit (pkgs) tarball-website website;
inherit (pkgs.haskell.packages."${compiler}") dhall dhall-bash dhall-json dhall-text dhall-try;
inherit (pkgs.haskell.packages."${compiler}") dhall dhall-bash dhall-json dhall-lsp-server dhall-text dhall-try;
inherit (pkgs.releaseTools) aggregate;
shell-dhall = toShell pkgs.haskell.packages."${compiler}".dhall ;
shell-dhall-bash = toShell pkgs.haskell.packages."${compiler}".dhall-bash;
shell-dhall-json = toShell pkgs.haskell.packages."${compiler}".dhall-json;
shell-dhall-text = toShell pkgs.haskell.packages."${compiler}".dhall-text;
shell-dhall-try = toShell pkgs.haskell.packages."${compiler}".dhall-try ;
shell-dhall = toShell pkgs.haskell.packages."${compiler}".dhall ;
shell-dhall-bash = toShell pkgs.haskell.packages."${compiler}".dhall-bash;
shell-dhall-json = toShell pkgs.haskell.packages."${compiler}".dhall-json;
shell-dhall-lsp-server = toShell pkgs.haskell.packages."${compiler}".dhall-lsp-server;
shell-dhall-text = toShell pkgs.haskell.packages."${compiler}".dhall-text;
shell-dhall-try = toShell pkgs.haskell.packages."${compiler}".dhall-try ;
test-dhall =
pkgs.mkShell