parent
20f6d8c316
commit
89817b41fd
30
README.md
30
README.md
|
@ -57,6 +57,36 @@ $ nix-env -i "$(curl -L https://hydra.dhall-lang.org/job/dhall-haskell/master/li
|
|||
These instructions also work for any pull request, too, by replacing `master`
|
||||
with the pull request number for any of the above URLs.
|
||||
|
||||
## Pre-built containers
|
||||
|
||||
You can download pre-built `docker` image archives for each package using the
|
||||
following URLs:
|
||||
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall/latest/download/1/docker-image-dhall.tar.gz](https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall/latest/download/1/docker-image-dhall.tar.gz)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-bash/latest/download/1/docker-image-dhall-bash.tar.gz](https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-bash/latest/download/1/docker-image-dhall-bash.tar.gz)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-json/latest/download/1/docker-image-dhall-json.tar.gz](https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-json/latest/download/1/docker-image-dhall-json.tar.gz)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-lsp-server/latest/download/1/docker-image-dhall-lsp-server.tar.gz](https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-lsp-server/latest/download/1/docker-image-dhall-lsp-server.tar.gz)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-nix/latest/download/1/docker-image-dhall-nix.tar.gz](https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-nix/latest/download/1/docker-image-dhall-nix.tar.gz)
|
||||
* [https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-text/latest/download/1/docker-image-dhall-text.tar.gz](https://hydra.dhall-lang.org/job/dhall-haskell/master/image-dhall-text/latest/download/1/docker-image-dhall-text.tar.gz)
|
||||
|
||||
You can then load and run one of these archives like so:
|
||||
|
||||
```
|
||||
$ NAME="dhall"
|
||||
|
||||
$ curl --location --remote-name "https://hydra.dhall-lang.org/job/dhall-haskell/master/image-${NAME}/latest/download/1/docker-image-${NAME}.tar.gz"
|
||||
|
||||
$ docker load < "docker-image-${NAME}.tar.gz"
|
||||
...
|
||||
Loaded image: dhall:vx95jiijmp2i07f5ynl8h6sllf34jggz
|
||||
|
||||
$ docker run -i dhall:vx95jiijmp2i07f5ynl8h6sllf34jggz dhall <<< '2 + 2'
|
||||
4
|
||||
```
|
||||
|
||||
These instructions also work for any pull request, too, by replacing `master`
|
||||
with the pull request number for any of the above URLs.
|
||||
|
||||
## Building from source
|
||||
|
||||
For all of the following instructions, make sure to first check out the
|
||||
|
|
|
@ -596,20 +596,34 @@ let
|
|||
# Benchmark dependencies aren't added by default
|
||||
(pkgs.haskell.lib.doBenchmark drv).env;
|
||||
|
||||
possibly-static = {
|
||||
dhall = makeStaticIfPossible "dhall" ;
|
||||
dhall-bash = makeStaticIfPossible "dhall-bash" ;
|
||||
dhall-json = makeStaticIfPossible "dhall-json" ;
|
||||
dhall-lsp-server = makeStaticIfPossible "dhall-lsp-server";
|
||||
dhall-nix = makeStaticIfPossible "dhall-nix" ;
|
||||
dhall-text = makeStaticIfPossible "dhall-text" ;
|
||||
};
|
||||
|
||||
toDockerImage = name:
|
||||
let
|
||||
image =
|
||||
pkgs.dockerTools.buildImage {
|
||||
inherit name;
|
||||
|
||||
contents = [ possibly-static."${name}" ];
|
||||
};
|
||||
|
||||
in
|
||||
pkgs.runCommand "image-${name}" {} ''
|
||||
${pkgs.coreutils}/bin/mkdir --parents "$out/nix-support"
|
||||
${pkgs.coreutils}/bin/ln --symbolic '${image}' "$out/docker-image-${name}.tar.gz"
|
||||
echo "file binary-dist $out/docker-image-${name}.tar.gz" >> $out/nix-support/hydra-build-products
|
||||
'';
|
||||
|
||||
in
|
||||
rec {
|
||||
inherit trivial;
|
||||
|
||||
inherit pkgs;
|
||||
|
||||
possibly-static = {
|
||||
dhall = makeStaticIfPossible "dhall" ;
|
||||
dhall-bash = makeStaticIfPossible "dhall-bash" ;
|
||||
dhall-json = makeStaticIfPossible "dhall-json" ;
|
||||
dhall-lsp-server = makeStaticIfPossible "dhall-lsp-server";
|
||||
dhall-nix = makeStaticIfPossible "dhall-nix" ;
|
||||
dhall-text = makeStaticIfPossible "dhall-text" ;
|
||||
};
|
||||
inherit trivial pkgs possibly-static;
|
||||
|
||||
tarball-dhall = makeTarball "dhall" ;
|
||||
tarball-dhall-bash = makeTarball "dhall-bash" ;
|
||||
|
@ -632,6 +646,13 @@ in
|
|||
shell-dhall-text = toShell pkgs.haskell.packages."${compiler}".dhall-text ;
|
||||
shell-dhall-try = toShell pkgs.haskell.packages."${compiler}".dhall-try ;
|
||||
|
||||
image-dhall = toDockerImage "dhall" ;
|
||||
image-dhall-bash = toDockerImage "dhall-bash" ;
|
||||
image-dhall-json = toDockerImage "dhall-json" ;
|
||||
image-dhall-lsp-server = toDockerImage "dhall-lsp-server";
|
||||
image-dhall-nix = toDockerImage "dhall-nix" ;
|
||||
image-dhall-text = toDockerImage "dhall-text" ;
|
||||
|
||||
test-dhall =
|
||||
pkgs.mkShell
|
||||
{ buildInputs =
|
||||
|
|
|
@ -85,4 +85,13 @@ in
|
|||
linux-dhall-lsp-server = shared_linux.possibly-static.dhall-lsp-server;
|
||||
linux-dhall-nix = shared_linux.possibly-static.dhall-nix;
|
||||
linux-dhall-text = shared_linux.possibly-static.dhall-text;
|
||||
|
||||
inherit (shared_linux)
|
||||
image-dhall
|
||||
image-dhall-bash
|
||||
image-dhall-json
|
||||
image-dhall-lsp-server
|
||||
image-dhall-nix
|
||||
image-dhall-text
|
||||
;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue