# Unable to automatically install 'OpenSpecFun' when trying to add 'Symbolics'

**URL:** <https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950>\
**Category:** New to Julia\
**Tags:** package-manager, artifacts\
**Created:** [May 11, 2021, 1:42pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950 "2021-05-11T13:42:50Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 1:42pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/1 "2021-05-11T13:42:50Z")

</div>

The problem is very much related to [this one](https://discourse.julialang.org/t/ijulia-install-stops-for-mbedtls-error/37974) and [this one](https://github.com/JuliaPackaging/BinaryBuilder.jl/issues/527), so I suppose it’s also a good idea to try to poke @giordano.

TLDR: When trying to install `Symbolics` I get the following error:

```julia
ERROR: Unable to automatically install 'OpenSpecFun' from '/home/myusername/.julia/packages/OpenSpecFun_jll/Xw8XK/Artifacts.toml'

```

More details:

1. I am using Julia 1.4.2 (installed with [jill](https://github.com/abelsiqueira/jill)) on a Linux (Debian) machine via remote access using SSH:

```julia
Julia Version 1.4.2
Commit 44fa15b150* (2020-05-23 18:35 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-8.0.1 (ORCJIT, skylake)

```

1. I am behind my university’s proxy, which caused me some pain in the neck with `LibGit2`. But once I added “missing” trailing slashes to my proxy environment variables I could finally start adding packages (in julia-1.1.1, everything worked fine from the very beginning). E.g., I could install `HCubature` and `DataFrames` without any problem.

2. However, when trying to add `Symbolics` I get the following error:

```julia
ERROR: Unable to automatically install 'OpenSpecFun' from '/home/myusername/.julia/packages/OpenSpecFun_jll/Xw8XK/Artifacts.toml'

```

- As was always asked in the aforementioned threads, I present the result of `debug_artifact("OpenSpecFun")`:

```julia
 ...
[ Info: Probing for download engine...
[ Info: Probing curl as a possibility...
[ Info: Probe successful for curl
[ Info: Found download engine curl
[ Info: Probing for compression engine...
[ Info: Probing tar as a possibility...
[ Info: Probe successful for tar
[ Info: Found compression engine tar
[ Info: Downloading Artifacts.toml to /home/anotheruser/tmp/jl_w68qT2/Artifacts.toml...
-=O=- # # # #
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection timed out
ERROR: Could not download https://raw.githubusercontent.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl/master/Artifacts.toml to /home/anotheruser/tmp/jl_w68qT2/Artifacts.toml:
ProcessFailedException(Base.Process[Process(`curl -C - '-#' -f -o /home/anotheruser/tmp/jl_w68qT2/Artifacts.toml -L https://raw.githubusercontent.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl/master/Artifacts.toml`, ProcessExited(7))])

Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] download(::String, ::String; verbose::Bool, auth_header::Nothing) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.4/Pkg/src/PlatformEngines.jl:853
 [3] (::DebugArtifacts.var"#3#4"{String,Pkg.BinaryPlatforms.Linux,String})(::String) at /home/myusername/.julia/packages/DebugArtifacts/VcVh2/src/DebugArtifacts.jl:57
 [4] mktempdir(::DebugArtifacts.var"#3#4"{String,Pkg.BinaryPlatforms.Linux,String}, ::String; prefix::String) at ./file.jl:682
 [5] mktempdir at ./file.jl:680 [inlined] (repeats 2 times)
 [6] debug_artifact(::String, ::Pkg.BinaryPlatforms.Linux) at /home/myusername/.julia/packages/DebugArtifacts/VcVh2/src/DebugArtifacts.jl:53
 [7] debug_artifact(::String) at /home/myusername/.julia/packages/DebugArtifacts/VcVh2/src/DebugArtifacts.jl:43
 [8] top-level scope at REPL[2]:1
caused by [exception 1]
failed process: Process(`curl -C - '-#' -f -o /home/anotheruser/tmp/jl_w68qT2/Artifacts.toml -L https://raw.githubusercontent.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl/master/Artifacts.toml`, ProcessExited(7)) [7]

```

So, as expected, there is some problem with `curl`.

- Also, as had been suggested in one of the threads, I tried to add another package server,

```julia
export JULIA_PKG_SERVER=https://geo.pkg.julialang.org

```

but that didn’t help.

- My `umask` is 0022.

- Finally, as advised to the OP [in this thread](https://github.com/JuliaPackaging/BinaryBuilder.jl/issues/527), I tried to run

```julia
for a in artifacts["OpenSpecFun"]
           for dl in a["download"]
               dir = mktempdir()
               @assert Pkg.PlatformEngines.download_verify_unpack(dl["url"], dl["sha256"], dir; ignore_existence=true, verbose=true)
               treehash = bytes2hex(Pkg.GitTools.tree_hash(dir))
               treehash == a["git-tree-sha1"] || error("hash mismatch!")
           end
       end

```

for additional testing, but it doesn’t seem to do anything (I had to terminate the process after ca. 5-10 minutes of nothing happening).

Please let me know if I should provide some additional info and/or if I maybe should ask something in my IT department.

P.S. As you could have probably already guessed, I am not the most tech savvy-guy. As much as I try to get what’s actually going on, quite often I don’t really understand. On the other hand, I most certainly don’t want to fiddle with any safety protocols and such without my IT department’s permission. So if you suggest something that I should probably ask my IT deparment about before doing, I will much appreciate if you let me know in advance. 🙂

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [May 11, 2021, 1:44pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/2 "2021-05-11T13:44:46Z")

</div>

> [@Aleksandr\_Mikheev](#):
>
> I am using Julia 1.4.2

Can you please try with the latest stable version (v1.6.1 at the moment)?

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 2:11pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/3 "2021-05-11T14:11:28Z")

</div>

I tired to update it using, once again, jill,

```julia
jill install --upgrade

```

but as usual something didn’t work:

```julia
...
OSError: [Errno 101] Network is unreachable
...
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='julialang-s3.julialang.org', port=443): Max retries exceeded with url: /bin/versions.json (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7fcada56c9e8>: Failed to establish a new connection: [Errno 101] Network is unreachable',))

```

For some reason, I don’t seem to be able to reach servers:

```julia
> jill upstream
Found 5 release sources:

- Official: Julialang.org
  * julialang-s3.julialang.org (2000 ms)
  * julialangnightlies-s3.julialang.org (2000 ms)
- BFSU: Beijing Foreign Studies University
  * mirrors.bfsu.edu.cn (2000 ms)
- TUNA: Tsinghua University TUNA Association
  * mirrors.tuna.tsinghua.edu.cn (2000 ms)
  * opentuna.cn (2000 ms)
- USTC: University of Science and Technology of China
  * mirrors.ustc.edu.cn (2000 ms)
- SJTUG: Shanghai Jiao Tong University Linux User Group
  * mirrors.sjtug.sjtu.edu.cn (2000 ms)

```

(even though I somehow managed to install julia using jill before…)

I reckon I should probably start a separate thread on this issue or try to install the latest version manually.

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [May 11, 2021, 2:22pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/4 "2021-05-11T14:22:33Z")

</div>

I suspect to know the answer at this point, but are you able to download Julia simply from [Download Julia](https://julialang.org/downloads/#current_stable_release)?

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 2:31pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/5 "2021-05-11T14:31:42Z")

</div>

Yes, I am:

```julia
2021-05-11 09:29:27 (11.2 MB/s) - ‘julia-1.6.1-linux-x86_64.tar.gz’ saved [112784227/112784227]

```

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [May 11, 2021, 2:32pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/6 "2021-05-11T14:32:08Z")

</div>

Then you can just use that one, no? 🙂

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 3:01pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/7 "2021-05-11T15:01:03Z")

</div>

Fair enough. 🙂

Okay, with 1.6.1 being installed things have changed somewhat:

```julia
(@v1.6) pkg> add Symbolics
   Resolving package versions...
   Installed Latexify ──────── v0.15.5
   Installed SymbolicUtils ─── v0.11.2
   Installed Symbolics ─────── v0.1.25
   Installed OpenSpecFun_jll ─ v0.5.4+0
   Installed Rmath ─────────── v0.7.0
   Installed Rmath_jll ─────── v0.3.0+0
  Downloaded artifact: Rmath
  Downloaded artifact: Rmath
ERROR: Unable to automatically install 'Rmath' from '/home/myusername/.julia/packages/Rmath_jll/ss2ik/Artifacts.toml'

Stacktrace:
  [1] error(s::String)
...

```

Result of running ` debug_artifact("Rmath")`:

```julia
julia> debug_artifact("Rmath")
[ Info: Platform: Linux x86_64 {cxxstring_abi=cxx11, julia_version=1.6.1, libc=glibc, libgfortran_version=4.0.0}
Julia Version 1.6.1
Commit 6aaedecc44 (2021-04-23 05:59 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.1 (ORCJIT, skylake)

[ Info: Downloading Artifacts.toml to /home/anotheruser/tmp/jl_mAr3T3/Artifacts.toml...
ERROR: Failed to connect to raw.githubusercontent.com port 443: Connection timed out while requesting https://raw.githubusercontent.com/JuliaBinaryWrappers/Rmath_jll.jl/master/Artifacts.toml
Stacktrace:
  [1] (::Downloads.var"#9#18"{IOStream, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Downloads.var"#24#27"{Pkg.PlatformEngines.var"#13#15"{Base.TTY}}, Bool, Bool, String, Int64, Bool, Bool})(easy::Downloads.Curl.Easy)
...

```

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [May 11, 2021, 3:03pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/8 "2021-05-11T15:03:46Z")

</div>

Unfortunately I’m not sure `DebugArtifacts.jl` is very reliable for debugging this kind of issues with Julia v1.6, as the download stack changed a lot

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 3:31pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/9 "2021-05-11T15:31:55Z")

</div>

By the by, could that be relevant?

```julia
> which curl
/usr/bin/anaconda3/bin/curl

```

---

<div class="post-metadata">

**Author:** ![dpsanders](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dpsanders/32/3573_2.png) [@dpsanders](https://discourse.julialang.org/u/dpsanders)\
**Post date:** [May 11, 2021, 3:46pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/10 "2021-05-11T15:46:39Z")

</div>

Why is Symbolics installing OpenSpecFun?

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 8:13pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/11 "2021-05-11T20:13:00Z")

</div>

Why? Since I am not involved with `Symbloics`, I don’t know. I mean, `Symbolics` is a CAS which, among other features, includes

> - Special functions (list provided by [SpecialFunctions.jl](https://github.com/JuliaMath/SpecialFunctions.jl))

So it sort of natural that it might need packages that provide special functions. Here it says that they are provided by `SpecialFunctions`, but is it that weird that it also installs some other library of special functions?

P.S. But the problem is not only with this package. When I try to add, e.g., `JLD` it also returns an error:

```julia
ERROR: Unable to automatically install 'Lz4' from '/home/myusername/.julia/packages/Lz4_jll/MNjBE/Artifacts.toml'

```

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [May 11, 2021, 8:15pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/12 "2021-05-11T20:15:53Z")

</div>

Trying to summon @staticfloat or @StefanKarpinski in case they have ideas about how to debug these downloads errors, related to your proxy

---

<div class="post-metadata">

**Author:** ![staticfloat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/staticfloat/32/34_2.png) [@staticfloat](https://discourse.julialang.org/u/staticfloat)\
**Post date:** [May 11, 2021, 9:00pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/13 "2021-05-11T21:00:50Z")

</div>

Hello Aleksandr;

Do you have trouble with installing packages in general, or is it specifically Rmath/OpenSpecFun? What environment variables did you set, and how did you set them? Can you show me the output of:

```
Downloads.download("http://pkg.julialang.org/meta", stdout; verbose=true)

```

As an example, here’s what I get:

```julia
**julia>** Downloads.download("http://pkg.julialang.org/meta", stdout; verbose=true);
* Trying 151.101.66.217:80...
* Connected to pkg.julialang.org (151.101.66.217) port 80 (#0)
> GET /meta HTTP/1.1
Host: pkg.julialang.org
Accept: */*
User-Agent: curl/7.73.0 julia/1.7
* Mark bundle as not supporting multiuse
< HTTP/1.1 301 NA (west) internal redirect trigger
< Server: Varnish
< Retry-After: 0
< Location: https://us-west.pkg.julialang.org/meta
< x-geo-continent: NA
< x-geo-country: US
< x-geo-region: WA
< Content-Length: 0
< Accept-Ranges: bytes
< Date: Tue, 11 May 2021 20:59:15 GMT
< Via: 1.1 varnish
< Connection: close
< X-Served-By: cache-sea4441-SEA
< X-Cache: HIT
< X-Cache-Hits: 0
< X-Timer: S1620766756.782582,VS0,VE0
<
* Closing connection 0
* Issue another request to this URL: 'https://us-west.pkg.julialang.org/meta'
* Trying 52.24.172.208:443...
* Connected to us-west.pkg.julialang.org (52.24.172.208) port 443 (#1)
* ALPN, offering http/1.1
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
* Server certificate: us-west.pkg.julialang.org
* Server certificate: R3
* Server certificate: DST Root CA X3
> GET /meta HTTP/1.1
Host: us-west.pkg.julialang.org
Accept: */*
User-Agent: curl/7.73.0 julia/1.7
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Server: nginx/1.19.10
< Date: Tue, 11 May 2021 20:59:15 GMT
< Content-Type: application/json
< Content-Length: 321
< Connection: keep-alive
<
* Connection #1 to host us-west.pkg.julialang.org left intact
{"start_time":"2021-05-08T16:28:09.312","pkgserver_version":"0.2.0-bd2b1e78605028ab840f8f5988f969a7f5a1beda","pkgserver_url":"https://us-west.pkg.julialang.org","julia_version":"1.6.1","registry_watchdog_task":"started","last_registry_update":"2021-05-11T20:59:15.256","registry_update_task":"started","maxrss":399454208}

```

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 11, 2021, 11:56pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/14 "2021-05-11T23:56:34Z")

</div>

Hi!

> Do you have trouble with installing packages in general, or is it specifically Rmath/OpenSpecFun?

I would say it’s somewhere in between: I could install, e.g., `HCubature` and `DataFrames`, but not `JDL`, `Symbolics`, and `Plots`.

> What environment variables did you set, and how did you set them?

I apologize in advance if what I am about to say is nonsense as I am still confused with some concepts of Linux. I didn’t really set any environment variables myself (I am working on a uni’s machine, which I inherited from one of the previous group members). That being said, if I run `prinenv` as a standard user, I don’t see anything interesting. If, however, I run it as a superuser, I get, in particular:

```julia
ftp_proxy=ftp://proxy2.my.institu.te:2121/
http_proxy=http://proxy.my.institu.te:8080/
https_proxy=https://proxy.my.institu.te:8080/

```

I had to add trailing slashes myself directly in the .bashrc and .gitconfig manual because otherwise there was a problem with `LibGit2` (at least for julia-1.4.6). I should mention, however, that I run julia as a standard user. Do superuser’s environment variables affect all other users? (Sorry for such trivial questions)

> Can you show me the output of…

It gives an error (I had to terminate the process at some point, but it said “Immediate connect fail…” almost, well, immediately and then nothing happened for quite some time until I decide to terminate):

```julia
Downloads.download("http://pkg.julialang.org/meta", stdout; verbose=true)
* Trying 151.101.14.217:80...
* Trying 2a04:4e42:3::729:80...
* Immediate connect fail for 2a04:4e42:3::729: Network is unreachable
* connect to 151.101.14.217 port 80 failed: Connection timed out
* Failed to connect to pkg.julialang.org port 80: Connection timed out
* Closing connection 1
ERROR: Failed to connect to pkg.julialang.org port 80: Connection timed out while requesting http://pkg.julialang.org/meta
Stacktrace:
  [1] (::Downloads.var"#9#18"{Base.TTY, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool})(easy::Downloads.Curl.Easy)
    @ Downloads /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Downloads.jl:356
  [2] with_handle(f::Downloads.var"#9#18"{Base.TTY, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool}, handle::Downloads.Curl.Easy)
    @ Downloads.Curl /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Curl/Curl.jl:60
  [3] #8
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Downloads.jl:298 [inlined]
  [4] arg_write(f::Downloads.var"#8#17"{Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool}, arg::Base.TTY)
    @ ArgTools /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/ArgTools/src/ArgTools.jl:112
  [5] #7
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Downloads.jl:297 [inlined]
  [6] arg_read
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/ArgTools/src/ArgTools.jl:61 [inlined]
  [7] request(url::String; input::Nothing, output::Base.TTY, method::Nothing, headers::Vector{Pair{String, String}}, timeout::Float64, progress::Nothing, verbose::Bool, throw::Bool, downloader::Nothing)
    @ Downloads /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Downloads.jl:296
  [8] (::Downloads.var"#3#4"{Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Nothing, String})(output::Base.TTY)
    @ Downloads /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Downloads.jl:209
  [9] arg_write(f::Downloads.var"#3#4"{Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Nothing, String}, arg::Base.TTY)
    @ ArgTools /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/ArgTools/src/ArgTools.jl:112
 [10] #download#2
    @ /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Downloads/src/Downloads.jl:208 [inlined]
 [11] top-level scope
    @ REPL[9]:1

```

---

<div class="post-metadata">

**Author:** ![qsi](https://avatars.discourse-cdn.com/v4/letter/q/c37758/32.png) [@qsi](https://discourse.julialang.org/u/qsi)\
**Post date:** [May 12, 2021, 12:35am UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/15 "2021-05-12T00:35:25Z")

</div>

I’ll jump in here to say that I am having a very similar problem with a fresh install v1.6.1 on a new machine. I was able to add `Plots` and `Random`, but I get essentially the same error when I try to install Convex:

```julia
   Resolving package versions...
  Downloaded artifact: Bzip2
  Downloaded artifact: Bzip2
ERROR: Unable to automatically install 'Bzip2' from 'C:\Users\me\.julia\packages\Bzip2_jll\aAOqr\Artifacts.toml'
Stacktrace:
  [1] error(s::String)
    @ Base .\error.jl:33
  [2] ensure_artifact_installed(name::String, meta::Dict{String, Any}, artifacts_toml::String; platform::Base.BinaryPlatforms.Platform, verbose::Bool, quiet_download::Bool, io::Base.TTY)
    @ Pkg.Artifacts C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Artifacts.jl:443
  [3] ensure_all_artifacts_installed(artifacts_toml::String; platform::Base.BinaryPlatforms.Platform, pkg_uuid::Nothing, include_lazy::Bool, verbose::Bool, quiet_download::Bool, io::Base.TTY)
    @ Pkg.Artifacts C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Artifacts.jl:508
  [4] download_artifacts(ctx::Pkg.Types.Context, pkg_roots::Vector{String}; platform::Base.BinaryPlatforms.Platform, verbose::Bool, io::Base.TTY)
    @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:706
  [5] download_artifacts(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; platform::Base.BinaryPlatforms.Platform, julia_version::VersionNumber, verbose::Bool, io::Base.TTY)
    @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:683
  [6] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}, new_git::Vector{Base.UUID}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform)
.BinaryPlatforms.Platform, kwargs::Base.Iterators.Pairs{Symbol, Base.TTY, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.TTY}}})
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:203
  [8] add(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:79
  [9] add(pkgs::Vector{Pkg.Types.PackageSpec})
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:77
[10] do_cmd!(command::Pkg.REPLMode.Command, repl::REPL.LineEditREPL)
    @ Pkg.REPLMode C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\REPLMode\REPLMode.jl:408
[11] do_cmd(repl::REPL.LineEditREPL, input::String; do_rethrow::Bool)
    @ Pkg.REPLMode C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\REPLMode\REPLMode.jl:386
[12] do_cmd
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\REPLMode\REPLMode.jl:377 [inlined]
[13] (::Pkg.REPLMode.var"#24#27"{REPL.LineEditREPL, REPL.LineEdit.Prompt})(s::REPL.LineEdit.MIState, buf::IOBuffer, ok::Bool)
    @ Pkg.REPLMode C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\REPLMode\REPLMode.jl:550
[14] #invokelatest#2
    @ .\essentials.jl:708 [inlined]
[15] invokelatest
    @ .\essentials.jl:706 [inlined]
[16] run_interface(terminal::REPL.Terminals.TextTerminal, m::REPL.LineEdit.ModalInterface, s::REPL.LineEdit.MIState)
    @ REPL.LineEdit C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\LineEdit.jl:2441
[17] run_frontend(repl::REPL.LineEditREPL, backend::REPL.REPLBackendRef)
    @ REPL C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\REPL\src\REPL.jl:1126
[18] (::REPL.var"#44#49"{REPL.LineEditREPL, REPL.REPLBackendRef})()
    @ REPL .\task.jl:411

```

I tried installing other packages at random, like `ImageMagick`, which merrily installs a bunch of stuff, but then fails also on `OpenSpecFun`, so it looks like it could be a package-specific issue. `DataFrames` installs just fine in its entirety for instance.

The error happens on a machine that is behind a proxy. On a different machine running v1.6.0, installing `ImageMagick` works, including `OpenSpecFun`.

Edit: the latter machine where `OpenSpecFun` does install is not behind a proxy. I’ll try upgrading to 1.6.1 to see if I can reproduce this.

---

<div class="post-metadata">

**Author:** ![qsi](https://avatars.discourse-cdn.com/v4/letter/q/c37758/32.png) [@qsi](https://discourse.julialang.org/u/qsi)\
**Post date:** [May 12, 2021, 1:07am UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/16 "2021-05-12T01:07:03Z")

</div>

I am not sure about the etiquette in replying to myself, but here is some more information. Adding `JLD` fails on the machine behind the proxy, but succeeds unproxied, both now on v1.6.1. I get same error as @Aleksandr_Mikheev.

@staticfloat The `Download` output you requested is in my case:

```julia
julia> Downloads.download(http://pkg.julialang.org/meta, stdout; verbose=true)
* Trying 151.101.250.217:80...
* Connected to pkg.julialang.org (151.101.250.217) port 80 (#0)
> GET /meta HTTP/1.1
Host: pkg.julialang.org
Accept: */*
User-Agent: curl/7.73.0 julia/1.6
 

* Mark bundle as not supporting multiuse
< HTTP/1.1 301 NA (east2) internal redirect trigger
< Server: Varnish
< Retry-After: 0
< Location: https://us-east2.pkg.julialang.org/meta
< x-geo-continent: NA
< x-geo-country: US
< x-geo-region: MA
< Content-Length: 0
< Accept-Ranges: bytes
< Date: Wed, 12 May 2021 00:59:41 GMT
< Via: 1.1 varnish
< X-Served-By: cache-bwi5036-BWI
< X-Cache: HIT
< X-Cache-Hits: 0
< X-Timer: S1620781181.121862,VS0,VE0
< Connection: Keep-Alive
< X-BlueCoat-Authorization: 0224a55d95aae111=2DFD8CCE00000002yFae3+wVLL4rslRZZr7cyONjqonWcgAAAgAAAD9ztgEsAQAAAAAAAGGy6QAAAAAA
< Age: 0
< 

* Connection #0 to host pkg.julialang.org left intact
* Issue another request to this URL: 'https://us-east2.pkg.julialang.org/meta'
* Trying 18.212.158.78:443...
* Connected to us-east2.pkg.julialang.org (18.212.158.78) port 443 (#1)
* schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
* Closing connection 1
* schannel: shutting down SSL/TLS connection with us-east2.pkg.julialang.org port 443
ERROR: HTTP/1.1 301 NA (east2) internal redirect trigger (schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.) while requesting http://pkg.julialang.org/meta
Stacktrace:
  [1] (::Downloads.var"#9#18"{Base.TTY, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool})(easy::Downloads.Curl.Easy)
    @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:356
  [2] with_handle(f::Downloads.var"#9#18"{Base.TTY, Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool}, handle::Downloads.Curl.Easy)
    @ Downloads.Curl C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Curl\Curl.jl:60
  [3] #8
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:298 [inlined]
  [4] arg_write(f::Downloads.var"#8#17"{Base.DevNull, Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Bool, String, Int64, Bool, Bool}, arg::Base.TTY)
    @ ArgTools C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\ArgTools\src\ArgTools.jl:112
  [5] #7
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:297 [inlined]
  [6] arg_read
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\ArgTools\src\ArgTools.jl:61 [inlined]
  [7] request(url::String; input::Nothing, output::Base.TTY, method::Nothing, headers::Vector{Pair{String, String}}, timeout::Float64, progress::Nothing, verbose::Bool, throw::Bool, downloader::Nothing)
    @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:296
  [8] (::Downloads.var"#3#4"{Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Nothing, String})(output::Base.TTY)
    @ Downloads C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:209
  [9] arg_write(f::Downloads.var"#3#4"{Nothing, Vector{Pair{String, String}}, Float64, Nothing, Bool, Nothing, String}, arg::Base.TTY)
    @ ArgTools C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\ArgTools\src\ArgTools.jl:112
[10] #download#2
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Downloads\src\Downloads.jl:208 [inlined]
[11] top-level scope
    @ REPL[19]:1

```

Hope this helps in tracking it down!

---

<div class="post-metadata">

**Author:** ![staticfloat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/staticfloat/32/34_2.png) [@staticfloat](https://discourse.julialang.org/u/staticfloat)\
**Post date:** [May 12, 2021, 5:00am UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/17 "2021-05-12T05:00:38Z")

</div>

> [@Aleksandr\_Mikheev](#):
>
> Do superuser’s environment variables affect all other users? (Sorry for such trivial questions)

Nope! And don’t worry, I understand that this can all be confusing the first time around. In this case, if `printenv` doesn’t show these variables, that’s not a good sign, because it means that Julia won’t see them either. So this is the first thing we should try to figure out; you need to figure out why your environment variables are not being set properly. I suggest putting something akin to:

```julia-auto
export http_proxy=http://proxy.my.institu.te:8080/
export https_proxy=https://proxy.my.institu.te:8080/

```

Into your `~/.bashrc`, and seeing if that does the trick. Be sure to close your terminal window and open a new one, so that you get a new terminal that has run those “startup” scripts, as they won’t take effect in that old terminal immediately. Use `printenv | grep proxy` to quickly double-check that it has taken effect.

While you’re doing that, you can also run those `export` commands directly in the terminal to set the environment variables in the current shell (the values will be lost as soon as you exit the shell) and then run `julia`. Can you do so and see if the behavior of the `Downloads.download()` call changes at all?

---

<div class="post-metadata">

**Author:** ![staticfloat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/staticfloat/32/34_2.png) [@staticfloat](https://discourse.julialang.org/u/staticfloat)\
**Post date:** [May 12, 2021, 5:03am UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/18 "2021-05-12T05:03:44Z")

</div>

> [@qsi](#):
>
> @staticfloat The `Download` output you requested is in my case:

This looks an awful lot like [problems with SSL host verification with proxy servers · Issue #108 · JuliaLang/Downloads.jl · GitHub](https://github.com/JuliaLang/Downloads.jl/issues/108). I believe the “issue” is that you have not added the proxy certificate to your machine’s certificate store. That is the best immediate solution, although it looks like Stefan has added a mitigation that may help with this and should be released in v1.6.2. You can try using that version by downloading a [`1.6-latest` build](https://julialangnightlies-s3.julialang.org/bin/winnt/x64/1.6/julia-latest-win64.exe).

---

<div class="post-metadata">

**Author:** ![Aleksandr\_Mikheev](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Aleksandr\_Mikheev](https://discourse.julialang.org/u/Aleksandr_Mikheev)\
**Post date:** [May 12, 2021, 11:41am UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/19 "2021-05-12T11:41:08Z")

</div>

So I set these environment variables now also for my standard user:

```julia
> printenv | grep proxy
http_proxy=http://proxy.my.institu.te:8080/
https_proxy=https://proxy.my.institu.te:8080/

```

and the output of `Downloads.download()` has changed:

```julia
 Downloads.download("http://pkg.julialang.org/meta", stdout; verbose=true)
* Uses proxy env variable http_proxy == 'http://proxy.my.institu.te:8080/'
* Trying ***.***. ***.*** :8080...
* Connected to proxy.my.institu.te ( ***.***. ***.*** ) port 8080 (#0)
> GET http://pkg.julialang.org/meta HTTP/1.1
Host: pkg.julialang.org
Accept: */*
Proxy-Connection: Keep-Alive
User-Agent: curl/7.73.0 julia/1.6

* Mark bundle as not supporting multiuse
< HTTP/1.1 301 Moved Permanently
< Server: Varnish
< Retry-After: 0
< Location: https://eu-central.pkg.julialang.org/meta
< x-geo-continent: EU
< x-geo-country: DE
< x-geo-region: BW
< Content-Length: 0
< Accept-Ranges: bytes
< Date: Wed, 12 May 2021 11:33:19 GMT
< X-Served-By: cache-fra19121-FRA
< X-Cache: HIT
< X-Cache-Hits: 0
< X-Timer: S1620819199.366605,VS0,VE0
< X-Cache: MISS from proxy1.my.institu.te
< X-Cache-Lookup: MISS from proxy1.my.institu.te:3128
< Via: 1.1 varnish, 1.1 proxy1.my.institu.te (squid/4.6)
< Connection: keep-alive
<
* Connection #0 to host proxy.my.institu.te left intact
* Issue another request to this URL: 'https://eu-central.pkg.julialang.org/meta'
* Uses proxy env variable https_proxy == 'https://proxy.my.institu.te:8080/'
* Unsupported proxy 'https://proxy.my.institu.te:8080/', libcurl is built without the HTTPS-proxy support.
* Closing connection -1
ERROR: HTTP/1.1 301 Moved Permanently (Unsupported proxy 'https://proxy.my.institu.te:8080/', libcurl is built without the HTTPS-proxy support.) while requesting http://pkg.julialang.org/meta

```

---

<div class="post-metadata">

**Author:** ![staticfloat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/staticfloat/32/34_2.png) [@staticfloat](https://discourse.julialang.org/u/staticfloat)\
**Post date:** [May 12, 2021, 3:23pm UTC](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950/20 "2021-05-12T15:23:53Z")

</div>

Can you try un-setting `https_proxy` and only setting `http_proxy` and see if it still complains?

[Next page](https://discourse.julialang.org/t/unable-to-automatically-install-openspecfun-when-trying-to-add-symbolics/60950.md?page=2)
