From 28bbca9b0ac00f92fdf0595f84119663b3328d3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20K=C5=82osko?= Date: Wed, 2 Apr 2025 21:35:39 +0900 Subject: [PATCH] Use absolute paths in livebook.gen_priv so it works in nerves_livebook --- lib/mix/tasks/livebook.gen_priv.ex | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/mix/tasks/livebook.gen_priv.ex b/lib/mix/tasks/livebook.gen_priv.ex index 162caa88c..eb56579a2 100644 --- a/lib/mix/tasks/livebook.gen_priv.ex +++ b/lib/mix/tasks/livebook.gen_priv.ex @@ -7,10 +7,17 @@ defmodule Mix.Tasks.Livebook.GenPriv do @impl true def run([]) do - app_path = Mix.Project.app_path() + # Use absolute paths, instead of relying on the current mix project, + # so the task can be invoked by nerves_livebook. + app_path = Application.app_dir(:livebook) + project_dir = Path.expand("../../..", __DIR__) - compress_and_copy("static", Path.join(app_path, "priv/static")) - compress_and_copy("iframe/priv/static/iframe", Path.join(app_path, "priv/iframe_static")) + compress_and_copy(Path.join(project_dir, "static"), Path.join(app_path, "priv/static")) + + compress_and_copy( + Path.join(project_dir, "iframe/priv/static/iframe"), + Path.join(app_path, "priv/iframe_static") + ) end defp compress_and_copy(source_dir, target_dir) do