about summary refs log tree commit diff
path: root/nixos/doc/manual/release-notes
diff options
context:
space:
mode:
authorPhilip Munksgaard <philip@munksgaard.me>2024-01-23 22:36:52 +0100
committerPhilip Munksgaard <philip@munksgaard.me>2024-01-26 20:19:46 +0100
commit897d5670a3da4166ad87b115770ad7d587d7238d (patch)
tree5a980233628518e690aa6261aa0acb0cbac22904 /nixos/doc/manual/release-notes
parent6aee40bc7256753c40d10ee7b7e32dd10d89203e (diff)
downloadnixlib-897d5670a3da4166ad87b115770ad7d587d7238d.tar
nixlib-897d5670a3da4166ad87b115770ad7d587d7238d.tar.gz
nixlib-897d5670a3da4166ad87b115770ad7d587d7238d.tar.bz2
nixlib-897d5670a3da4166ad87b115770ad7d587d7238d.tar.lz
nixlib-897d5670a3da4166ad87b115770ad7d587d7238d.tar.xz
nixlib-897d5670a3da4166ad87b115770ad7d587d7238d.tar.zst
nixlib-897d5670a3da4166ad87b115770ad7d587d7238d.zip
livebook: Use `mix release` to build instead of escript
The current build of livebook does not work with the new [Livebook
Teams](https://livebook.dev/teams/) features. The problem can be observed by
running the current version of livebook, adding a new team and going to the team
page. The process will crash and the team page will show a 500 error.

The base of the problem is that the escript build method is not officially
supported. This commit changes the livebook package to use the `mix release`
workflow, which is also the one used to build the official Docker container.

Unfortunately, the binary built with `mix release` does not support command line
arguments like the `escript` binary does. Instead, users need to pass in most of
the configuration as environment variables, as documented
[here](https://hexdocs.pm/livebook/readme.html#environment-variables). As a
result, this commit also changes the Livebook service to reflect this new way of
configuring Livebook.

Finally, the Livebook release configuration specifically excludes the
ERTS (Erlang Runtime System), which means that the resulting release cannot run
without Erlang installed.

I have tested the results (both of the package and the service) locally.
Diffstat (limited to 'nixos/doc/manual/release-notes')
-rw-r--r--nixos/doc/manual/release-notes/rl-2405.section.md7
1 files changed, 7 insertions, 0 deletions
diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md
index 27dd9a3d8cb2..c034abf28174 100644
--- a/nixos/doc/manual/release-notes/rl-2405.section.md
+++ b/nixos/doc/manual/release-notes/rl-2405.section.md
@@ -202,6 +202,13 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
 
   - `nomad_1_4` has been removed, as it is now unsupported upstream.
 
+- The `livebook` package is now built as a `mix release` instead of an `escript`.
+  This means that configuration now has to be done using [environment variables](https://hexdocs.pm/livebook/readme.html#environment-variables) instead of command line arguments.
+  This has the further implication that the `livebook` service configuration has changed:
+
+  - The `erlang_node_short_name`, `erlang_node_name`, `port` and `options` configuration parameters are gone, and have been replaced with an `environment` parameter.
+    Use the appropriate [environment variables](https://hexdocs.pm/livebook/readme.html#environment-variables) inside `environment` to configure the service instead.
+
 ## Other Notable Changes {#sec-release-24.05-notable-changes}
 
 <!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->