Closed squattingmonk closed 2 years ago
I just tried this on the latest Arch Linux docker image and it worked fine for me. Can you try the debug build of choosenim and see what you get?
Here's with the debug build:
$ ./choosenim-0.7.4_linux_amd64_debug update stable
Prompt: Can choosenim record and send anonymised telemetry data? [y/n]
... Anonymous aggregate user analytics allow us to prioritise
... fixes and features based on how, where and when people use Nim.
... For more details see: https://goo.gl/NzUEPf.
y
Answer: Updating stable
/home/travis/build/dom96/choosenim/src/choosenim.nim(331) choosenim
/home/travis/build/dom96/choosenim/src/choosenim.nim(304) performAction
/home/travis/build/dom96/choosenim/src/choosenim.nim(159) update
/home/travis/build/dom96/choosenim/src/choosenimpkg/channel.nim(37) getChannelVersion
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(373) retrieveUrl
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1080) getContent
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1075) get
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1051) request
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1027) request
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(977) requestAux
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(864) newConnection
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/net.nim(1657) dial
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/nativesockets.nim(266) getAddrInfo
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/includes/oserr.nim(94) raiseOSError
Error: unhandled exception: Invalid argument
Additional info: "Try again" [OSError]
$ ./choosenim-0.7.4_linux_amd64_debug 1.4.0
Downloading Nim 1.4.0 from nim-lang.org
/home/travis/build/dom96/choosenim/src/choosenim.nim(331) choosenim
/home/travis/build/dom96/choosenim/src/choosenim.nim(312) performAction
/home/travis/build/dom96/choosenim/src/choosenim.nim(105) choose
/home/travis/build/dom96/choosenim/src/choosenim.nim(88) chooseVersion
/home/travis/build/dom96/choosenim/src/choosenim.nim(24) installVersion
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(290) download
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(275) downloadImpl
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(193) downloadFile
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(175) downloadFileNim
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1141) downloadFile
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1075) get
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1051) request
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1027) request
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(977) requestAux
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(864) newConnection
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/net.nim(1657) dial
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/nativesockets.nim(266) getAddrInfo
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/includes/oserr.nim(94) raiseOSError
Error: unhandled exception: Invalid argument
Additional info: "Try again" [OSError]
$ ./choosenim-0.7.4_linux_amd64_debug versions
/home/travis/build/dom96/choosenim/src/choosenim.nim(331) choosenim
/home/travis/build/dom96/choosenim/src/choosenim.nim(308) performAction
/home/travis/build/dom96/choosenim/src/choosenim.nim(228) versions
/home/travis/build/dom96/choosenim/src/choosenimpkg/versions.nim(35) getAvailableVersions
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(376) getOfficialReleases
/home/travis/build/dom96/choosenim/src/choosenimpkg/download.nim(373) retrieveUrl
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1080) getContent
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1075) get
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1051) request
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(1027) request
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(977) requestAux
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/httpclient.nim(864) newConnection
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/net.nim(1657) dial
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/nativesockets.nim(266) getAddrInfo
/home/travis/.choosenim/toolchains/nim-1.2.6/lib/pure/includes/oserr.nim(94) raiseOSError
Error: unhandled exception: Invalid argument
Additional info: "Try again" [OSError]
Fun, can you check if choosenim 0.6.0 works for you? Guessing this is caused by static-musl libc?
0.6.0 hangs indefinitely when attempting to download anything. The versions
command works as expected, though.
Same error for me with Arch Linux, is there any updates?
We need help from someone that can repro this, can you try installing Nim manually (via pacman or otherwise) and seeing if you can use httpclient
to retrieve a URL via getContent
? (1.2.6 if you can since that appears to be the version that choosenim is built with right now)
@dom96 I just download the version 1.4.2 from the pre-built binaries of nim-lang.org, and the getContent
works fine for me.
It looks like it's trying to getAddrInfo
asynchronously and the OS is asking it to call it again because the DNS is not ready. It's possible this was resolved in 1.4. Can you reproduce it with 1.2.6? If so this will be resolved as soon as choosenim is built with 1.4.
getContent
works for me on 1.2.6 as well.
Also, I've found that a nimble build of the latest tagged version works as expected. It works correctly on 1.2.6, 1.4.0, and 1.4.2. However, the binary release fails to work due to #248.
This should be resolved by now. Feel free to reopen if not.
Installing 0.7.4 on Arch Linux using either the prebuilt binary or the curl method yields an
OSError
on practically every command:Using curl:
Using binary:
The only arguments that appear to work when passed to the binary are
--help
and--version
.I've also tried installing choosenim with nimble, but it fails to build (#239).
Details
OS: Arch Linux 5.9.1 Nim: 1.4.0 Nimble: 0.11.0