nrfutil under Linux/Debian: "nrfutil install toolchain-manager" fails, "nRF Connect for Desktop" fails as well

Hello,

my dev system is a Debian testing machine behind a proxy server (don't know if this is important).  Currently I'm trying to install the Connect SDK following https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/installation/install_ncs.html

Unfortunately "nrfutil install toolchain-manager" did not work.  It was telling me "Error: Could not update package registry", "--detect-proxy" does not help, same message.

In VSCode same thing: after installation of the required extensions I hit "Install Toolchain Manager" and nothing happened.

So downloaded "nRF Connect for Desktop".  More or less the same thing: I can install most of the components except "Board Configurator" and "Toolchain Manager", so installed them via direct download and dropping them on the application which effectively copied those to local (as documented somewhere).

Now I have a "Toolchain Manager" which is also visible in VSCode, but... this is still not working, no list of "SDK Environments" appears.

So now I'm totally stuck and any hints how to proceed are welcome.

Regards

Hardy

  • small follow-up: observing communication with wireshark shows that the several applications are trying to communicate directly with 140.82.121.3 (github) and 104.20.252.111 which is not the idea of having a proxy.

    So how to force everything to obey the proxy rules?  (the several proxy environment variables are of course set and everything else is working fine)

    Edit: appended console log.  Needless to say that the built-in "proxy" command gives the same result

    hardy@debian-hardy:~/.nrfutil/proxy_utils$ ./proxy 
    http://10.126.109.254:8080/
    hardy@debian-hardy:~/.nrfutil/proxy_utils$ nrfutil --detect-proxy --log-level=trace --log-output=stdout --json search
    {"type":"log","data":{"level":"INFO","message":"nrfutil (version = 7.7.0, platform = x86_64-unknown-linux-gnu) invoked with --detect-proxy --log-level=trace --log-output=stdout --json search ","timestamp":"2024-02-02T11:18:51.974Z"}}
    {"type":"log","data":{"level":"INFO","message":"Trying to detect proxy configuration automatically...","timestamp":"2024-02-02T11:18:51.974Z"}}
    {"type":"log","data":{"level":"INFO","message":"Using proxy helper program from '/home/hardy/.nrfutil/proxy_utils/proxy'","timestamp":"2024-02-02T11:18:51.974Z"}}
    {"type":"log","data":{"level":"INFO","message":"Running '/home/hardy/.nrfutil/proxy_utils/proxy developer.nordicsemi.com' to detect proxy configuration","timestamp":"2024-02-02T11:18:51.974Z"}}
    {"type":"log","data":{"level":"INFO","message":"Proxy configuration detected","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"Registry is fetched with native git: false","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"INFO","message":"Updating registry from github.com/.../nrfutil-package-index to /home/hardy/.nrfutil/registry","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"TRACE","message":"get cv ConfigKey { env: \"NRFUTIL_REGISTRY_INDEX\", parts: [(\"registry\", 7), (\"index\", 16)] }","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"TRACE","message":"get cv ConfigKey { env: \"NRFUTIL_SOURCE\", parts: [(\"source\", 7)] }","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"loading: registry `"timestamp":"2024-02-02T11:18:51.976Z"}}">github.com/.../nrfutil-package-index`","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"TRACE","message":"loading SourceId; registry `"timestamp":"2024-02-02T11:18:51.976Z"}}">github.com/.../nrfutil-package-index`","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"updating the index","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"TRACE","message":"get cv ConfigKey { env: \"NRFUTIL_HTTP\", parts: [(\"http\", 7)] }","timestamp":"2024-02-02T11:18:51.976Z"}}
    {"type":"log","data":{"level":"TRACE","message":"opened a repo without a lock","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"attempting GitHub fast path for "timestamp":"2024-02-02T11:18:51.988Z"}}">api.github.com/.../HEAD","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"failed to check github reference 'refs/remotes/origin/HEAD' not found; class=Reference (4); code=NotFound (-3)","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"skipping gc as there's only 0 pack files","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"TRACE","message":"get cv ConfigKey { env: \"NRFUTIL_NET\", parts: [(\"net\", 7)] }","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"doing a fetch for "timestamp":"2024-02-02T11:18:51.988Z"}}">github.com/.../nrfutil-package-index","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"initiating fetch of [\"+HEAD:refs/remotes/origin/HEAD\"] from "timestamp":"2024-02-02T11:18:51.988Z"}}">github.com/.../nrfutil-package-index","timestamp":"2024-02-02T11:18:51.988Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"fetch failed: failed to connect to github.com: Connection timed out; class=Os (2)","timestamp":"2024-02-02T11:21:07.011Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"initiating fetch of [\"+HEAD:refs/remotes/origin/HEAD\"] from "timestamp":"2024-02-02T11:21:07.011Z"}}">github.com/.../nrfutil-package-index","timestamp":"2024-02-02T11:21:07.011Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"fetch failed: failed to connect to github.com: Connection timed out; class=Os (2)","timestamp":"2024-02-02T11:23:22.183Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"initiating fetch of [\"+HEAD:refs/remotes/origin/HEAD\"] from "timestamp":"2024-02-02T11:23:22.183Z"}}">github.com/.../nrfutil-package-index","timestamp":"2024-02-02T11:23:22.183Z"}}
    {"type":"log","data":{"level":"DEBUG","message":"fetch failed: failed to connect to github.com: Connection timed out; class=Os (2)","timestamp":"2024-02-02T11:25:37.347Z"}}
    Error: Could not update package registry

    Caused by:
       0: failed to fetch `github.com/.../nrfutil-package-index`
       1: failed to connect to github.com: Connection timed out; class=Os (2)

  • Needless to say, that everything works on my Debian testing desktop at home without proxy.  So the tools do not obey to the provided proxy rules.  Any hints how to force them?

    Sidenote: git from the SDK expects libunistring.so.2 which does not exists anywhere on Debian testing.  A link to libunistring.so.5.0.0 solves this

  • Hi hardy,

     I have forwarded this internally to the experts and will get back to you with the updates.

    Regards,

    Swathy

  • Having the same Problem under WSL2 / Ubuntu 22.04:

    Where would nrfutil expect to find the repository? I can clone the indicated repo just fine manually on command line. I just need to know where to put it.

Related