diff --git a/src/Conda.jl b/src/Conda.jl index 57e7dc2..dc47444 100644 --- a/src/Conda.jl +++ b/src/Conda.jl @@ -179,8 +179,9 @@ end const PkgOrPkgs = Union{AbstractString, AbstractVector{<: AbstractString}} "Install a new package or packages." -function add(pkg::PkgOrPkgs, env::Environment=ROOTENV) - runconda(`install $(_quiet()) -y $pkg`, env) +function add(pkg::PkgOrPkgs, env::Environment=ROOTENV; channel::AbstractString="") + c = isempty(channel) ? `` : `-c $channel` + runconda(`install $(_quiet()) -y $c $pkg`, env) end "Uninstall a package or packages." diff --git a/test/runtests.jl b/test/runtests.jl index 7882fae..dfae61c 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -59,6 +59,9 @@ Conda.rm_channel("foo", env) @test Conda.channels(env) == ["defaults"] +# Add a package from a specific channel +Conda.add("requests", env; channel="conda-forge") + @testset "Batch install and uninstall" begin Conda.add(["affine", "ansi2html"], env) installed = Conda._installed_packages(env)