Packages
nerves_bootstrap
1.0.0
1.16.0
1.15.3
1.15.2
1.15.1
1.15.0
1.14.5
1.14.4
1.14.3
1.14.2
1.14.0
1.13.1
1.13.0
1.12.2
1.12.1
1.12.0
1.11.5
1.11.4
1.11.3
1.11.2
1.11.1
1.11.0
1.10.6
1.10.5
1.10.4
1.10.3
1.10.2
1.10.1
1.10.0
1.9.0
1.8.1
1.8.0
1.7.1
1.7.0
1.6.3
1.6.2
1.6.1
1.6.0
1.5.3
1.5.2
1.5.1
1.5.0
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.0
1.0.1
1.0.0
1.0.0-rc.4
1.0.0-rc.3
1.0.0-rc.2
1.0.0-rc.1
1.0.0-rc.0
0.8.2
0.8.1
0.8.0
0.7.1
0.7.0
0.6.4
0.6.3
Nerves mix integration bootstrap and new project generator
Current section
Files
Jump to
Current section
Files
lib/mix/tasks/nerves/clean.ex
defmodule Mix.Tasks.Nerves.Clean do
use Mix.Task
import Mix.Nerves.IO
@shortdoc "Cleans dependencies and build artifacts"
@moduledoc """
Cleans dependencies and build artifacts
Since this is a destructive action, cleaning of dependencies
only occurs when one of the following are specified:
* `dep1 dep2` - the names of Nerves dependencies to be cleaned, separated by spaces
* `--all` - cleans all Nerves dependencies
"""
@switches [all: :boolean]
def run(argv) do
debug_info("Clean Start")
{opts, packages, _} = OptionParser.parse(argv, switches: @switches)
# Start the Nerves env with the precompiler disabled
# so we can clean the package without building it.
Mix.Tasks.Nerves.Env.run(["--disable"])
packages =
case packages do
[] ->
if opts[:all] do
Nerves.Env.packages()
else
Mix.raise("""
You must specify the Nerves dependencies to clean, seperated by spaces
Example:
mix nerves.clean nerves_system_rpi3
Or by passing --all
mix nerves.clean --all
""")
end
packages ->
packages
|> Enum.map(&String.to_existing_atom/1)
|> Enum.map(&Nerves.Env.package/1)
end
debug_info("Clean End")
Nerves.Env.clean(packages)
end
end