Packages
nerves
1.15.0
1.15.0
1.14.3
1.14.2
1.14.1
1.14.0
1.13.2
1.13.1
1.13.0
1.12.0
1.11.3
1.11.2
1.11.1
1.11.0
1.10.5
1.10.4
1.10.3
1.10.2
1.10.1
1.10.0
1.9.3
1.9.2
retired
1.9.1
1.9.0
1.8.0
1.7.17
1.7.16
1.7.15
1.7.14
retired
1.7.13
1.7.12
1.7.11
1.7.10
1.7.9
1.7.8
1.7.7
1.7.6
1.7.5
1.7.4
1.7.3
1.7.2
retired
1.7.1
retired
1.7.0
retired
1.6.7
1.6.6
1.6.5
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.4
1.3.3
1.3.2
1.3.1
1.3.0
1.2.1
1.2.0
1.1.1
1.1.0
1.0.1
1.0.0
1.0.0-rc.2
1.0.0-rc.1
1.0.0-rc.0
0.11.0
0.10.1
0.10.0
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.3
0.8.2
0.8.1
0.8.0
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.2
0.5.1
0.5.0
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.4.0-rc.0
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.0
Craft and deploy bulletproof embedded software
Current section
Files
Jump to
Current section
Files
lib/mix/tasks/nerves.loadpaths.ex
# SPDX-FileCopyrightText: 2022 Jon Carstens
# SPDX-FileCopyrightText: 2025 Frank Hunleth
# SPDX-FileCopyrightText: 2026 Ben Youngblood
#
# SPDX-License-Identifier: Apache-2.0
#
defmodule Mix.Tasks.Nerves.Loadpaths do
@moduledoc false
use Mix.Task
import Mix.Nerves.IO
@impl Mix.Task
def run(_args) do
task = List.first(System.argv())
if System.get_env("NERVES_PRECOMPILE") != "1" and task != "nerves.system.shell" do
debug_info("Loadpaths Start")
Mix.Task.run("nerves.precompile", ["--no-loadpaths"])
try do
nerves_env_info()
Mix.Task.run("nerves.env", [])
Nerves.Env.bootstrap()
Mix.Project.clear_deps_cache()
env_info()
rescue
e ->
reraise e, __STACKTRACE__
end
debug_info("Loadpaths End")
end
end
defp env(k) do
case System.get_env(k) do
unset when unset == nil or unset == "" -> "unset"
set -> Path.relative_to_cwd(set)
end
end
defp env_info() do
debug_info("Environment Variable List", """
target: #{Mix.target()}
toolchain: #{env("NERVES_TOOLCHAIN")}
system: #{env("NERVES_SYSTEM")}
app: #{env("NERVES_APP")}
""")
end
end