nixpkgs/pkgs/servers/web-apps/livebook/default.nix
2023-10-11 17:33:20 +01:00

42 lines
1.1 KiB
Nix

{ lib, beamPackages, makeWrapper, rebar3, elixir, erlang, fetchFromGitHub }:
beamPackages.mixRelease rec {
pname = "livebook";
version = "0.11.1";
inherit elixir;
buildInputs = [ erlang ];
nativeBuildInputs = [ makeWrapper ];
src = fetchFromGitHub {
owner = "livebook-dev";
repo = "livebook";
rev = "v${version}";
hash = "sha256-8td6BUaJiEPjABrfsJTvaA+PXZ+8PnRl2hj7Ft/kb+Q=";
};
mixFodDeps = beamPackages.fetchMixDeps {
pname = "mix-deps-${pname}";
inherit src version;
hash = "sha256-+6lq0t9K6eIyGIFs+aI35v0T6W2DASOxA+tHtFL4u28=";
};
installPhase = ''
mix escript.build
mkdir -p $out/bin
mv ./livebook $out/bin
wrapProgram $out/bin/livebook \
--prefix PATH : ${lib.makeBinPath [ elixir ]} \
--set MIX_REBAR3 ${rebar3}/bin/rebar3
'';
meta = with lib; {
license = licenses.asl20;
homepage = "https://livebook.dev/";
description = "Automate code & data workflows with interactive Elixir notebooks";
maintainers = with maintainers; [ munksgaard ];
platforms = platforms.unix;
};
}