Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems installing/using nvm in AppCenter #3325

Open
michaelwijnands opened this issue Mar 29, 2024 · 2 comments
Open

Problems installing/using nvm in AppCenter #3325

michaelwijnands opened this issue Mar 29, 2024 · 2 comments

Comments

@michaelwijnands
Copy link

Operating system and version: MacOS 13.6.5

nvm debug output:

nvm: command not found

nvm ls output:

nvm: command not found

How did you install nvm?

What steps did you perform?

I used the script from readme to install nvm through appcenter-post-clone.sh file, as it's not included anymore on MacOS 13 based images.

What happened?

I got a long list of nvm trying to do this, but it ends up in exit code 3.

+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh
+ bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 16555  100 16555    0     0   551k      0 --:--:-- --:--:-- --:--:--  557k
=> Downloading nvm from git to '/Users/runner/.nvm'

=> Cloning into '/Users/runner/.nvm'...
* (HEAD detached at FETCH_HEAD)
  master
=> Compressing and cleaning up git repository

=> Appending nvm source string to /Users/runner/.bashrc
=> Appending bash_completion source string to /Users/runner/.bashrc
+++++ nvm_echo /Users/runner/.nvm/versions/node
+++++ command printf '%s\n' /Users/runner/.nvm/versions/node
++++ NVM_VERSION_DIR_NEW=/Users/runner/.nvm/versions/node
++++ local NVM_VERSION_DIR_OLD
+++++ nvm_version_dir old
+++++ local NVM_WHICH_DIR
+++++ NVM_WHICH_DIR=old
+++++ '[' -z old ']'
+++++ '[' old = new ']'
+++++ '[' _old = _iojs ']'
+++++ '[' _old = _old ']'
+++++ nvm_echo /Users/runner/.nvm
+++++ command printf '%s\n' /Users/runner/.nvm
++++ NVM_VERSION_DIR_OLD=/Users/runner/.nvm
++++ case "${PATTERN}" in
++++ nvm_resolve_local_alias 16.13.2
++++ '[' -z 16.13.2 ']'
++++ local VERSION
++++ local EXIT_CODE
+++++ nvm_resolve_alias 16.13.2
+++++ '[' -z 16.13.2 ']'
+++++ local PATTERN
+++++ PATTERN=16.13.2
+++++ local ALIAS
+++++ ALIAS=16.13.2
+++++ local ALIAS_TEMP
+++++ local SEEN_ALIASES
+++++ SEEN_ALIASES=16.13.2
+++++ local NVM_ALIAS_INDEX
+++++ NVM_ALIAS_INDEX=1
+++++ true
++++++ nvm_alias 16.13.2
++++++ command head -n 1
++++++ head -n 1
++++++ command tail -n 1
++++++ tail -n 1
+++++ ALIAS_TEMP=
+++++ '[' -z '' ']'
+++++ break
+++++ '[' -n 16.13.2 ']'
+++++ '[' _16.13.2 '!=' _16.13.2 ']'
+++++ nvm_validate_implicit_alias 16.13.2
+++++ return 2
++++ VERSION=
++++ EXIT_CODE=2
++++ '[' -z '' ']'
++++ return 2
+++++ nvm_ensure_version_prefix 16.13.2
+++++ local NVM_VERSION
++++++ nvm_strip_iojs_prefix 16.13.2
++++++ command sed -e 's/^\([0-9]\)/v\1/g'
++++++ local NVM_IOJS_PREFIX
++++++ sed -e 's/^\([0-9]\)/v\1/g'
+++++++ nvm_iojs_prefix
+++++++ nvm_echo iojs
+++++++ command printf '%s\n' iojs
++++++ NVM_IOJS_PREFIX=iojs
++++++ '[' 16.13.2 = iojs ']'
++++++ nvm_echo 16.13.2
++++++ command printf '%s\n' 16.13.2
+++++ NVM_VERSION=v16.13.2
+++++ nvm_is_iojs_version 16.13.2
+++++ case "${1-}" in
+++++ return 1
+++++ nvm_echo v16.13.2
+++++ command printf '%s\n' v16.13.2
++++ PATTERN=v16.13.2
++++ '[' v16.13.2 = N/A ']'
++++ local NVM_PATTERN_STARTS_WITH_V
++++ case $PATTERN in
++++ NVM_PATTERN_STARTS_WITH_V=true
++++ '[' true = true ']'
+++++ nvm_num_version_groups v16.13.2
+++++ local VERSION
+++++ VERSION=v16.13.2
+++++ VERSION=16.13.2
+++++ VERSION=16.13.2
+++++ '[' -z 16.13.2 ']'
+++++ local NVM_NUM_DOTS
++++++ nvm_echo 16.13.2
++++++ command printf '%s\n' 16.13.2
++++++ command sed -e 's/[^\.]//g'
++++++ sed -e 's/[^\.]//g'
+++++ NVM_NUM_DOTS=..
+++++ local NVM_NUM_GROUPS
+++++ NVM_NUM_GROUPS=...
+++++ nvm_echo 3
+++++ command printf '%s\n' 3
++++ '[' _3 = _3 ']'
++++ nvm_is_version_installed v16.13.2
++++ '[' -z v16.13.2 ']'
++++ local NVM_NODE_BINARY
++++ NVM_NODE_BINARY=node
+++++ nvm_get_os
+++++ local NVM_UNAME
++++++ command uname -a
++++++ uname -a
+++++ NVM_UNAME='Darwin Mac-1711707733963.local 22.6.0 Darwin Kernel Version 22.6.0: Mon Feb 19 19:48:53 PST 2024; root:xnu-8796.141.3.704.6~1/RELEASE_X86_64 x86_64'
+++++ local NVM_OS
+++++ case "${NVM_UNAME}" in
+++++ NVM_OS=darwin
+++++ nvm_echo darwin
+++++ command printf '%s\n' darwin
++++ '[' _darwin = _win ']'
+++++ nvm_version_path v16.13.2
++++ '[' -x /Users/runner/.nvm/versions/node/v16.13.2/bin/node ']'
++++ return 1
+++++ nvm_add_iojs_prefix v16.13.2
++++++ nvm_iojs_prefix
++++++ nvm_echo iojs
++++++ command printf '%s\n' iojs
+++++++ nvm_strip_iojs_prefix v16.13.2
+++++++ local NVM_IOJS_PREFIX
++++++++ nvm_iojs_prefix
++++++++ nvm_echo iojs
++++++++ command printf '%s\n' iojs
+++++++ NVM_IOJS_PREFIX=iojs
+++++++ '[' v16.13.2 = iojs ']'
+++++++ nvm_echo v16.13.2
+++++++ command printf '%s\n' v16.13.2
++++++ nvm_ensure_version_prefix v16.13.2
++++++ local NVM_VERSION
+++++++ nvm_strip_iojs_prefix v16.13.2
+++++++ local NVM_IOJS_PREFIX
+++++++ command sed -e 's/^\([0-9]\)/v\1/g'
+++++++ sed -e 's/^\([0-9]\)/v\1/g'
++++++++ nvm_iojs_prefix
++++++++ nvm_echo iojs
++++++++ command printf '%s\n' iojs
+++++++ NVM_IOJS_PREFIX=iojs
+++++++ '[' v16.13.2 = iojs ']'
+++++++ nvm_echo v16.13.2
+++++++ command printf '%s\n' v16.13.2
++++++ NVM_VERSION=v16.13.2
++++++ nvm_is_iojs_version v16.13.2
++++++ case "${1-}" in
++++++ return 1
++++++ nvm_echo v16.13.2
++++++ command printf '%s\n' v16.13.2
+++++ nvm_echo iojs-v16.13.2
+++++ command printf '%s\n' iojs-v16.13.2
++++ nvm_is_version_installed iojs-v16.13.2
++++ '[' -z iojs-v16.13.2 ']'
++++ local NVM_NODE_BINARY
++++ NVM_NODE_BINARY=node
+++++ nvm_get_os
+++++ local NVM_UNAME
++++++ command uname -a
++++++ uname -a
+++++ NVM_UNAME='Darwin Mac-1711707733963.local 22.6.0 Darwin Kernel Version 22.6.0: Mon Feb 19 19:48:53 PST 2024; root:xnu-8796.141.3.704.6~1/RELEASE_X86_64 x86_64'
+++++ local NVM_OS
+++++ case "${NVM_UNAME}" in
+++++ NVM_OS=darwin
+++++ nvm_echo darwin
+++++ command printf '%s\n' darwin
++++ '[' _darwin = _win ']'
+++++ nvm_version_path iojs-v16.13.2
++++ '[' -x /Users/runner/.nvm/versions/io.js/v16.13.2/bin/node ']'
++++ return 1
++++ '[' '' = true ']'
++++ '[' -z '' ']'
++++ nvm_echo N/A
++++ command printf '%s\n' N/A
++++ return 3
+++ VERSION=N/A
+++ '[' -z N/A ']'
+++ '[' _N/A = _N/A ']'
+++ nvm_echo N/A
+++ command printf '%s\n' N/A
+++ return 3
++ VERSION=N/A
++ unset NVM_RC_VERSION
++ '[' -z N/A ']'
++ '[' -z N/A ']'
++ '[' _N/A = _system ']'
++ '[' _N/A = $'_�\210\236' ']'
++ '[' N/A = N/A ']'
++ '[' 1 -ne 1 ']'
++ return 3
++ EXIT_CODE=3
++ set -e
++ return 3

What did you expect to happen?

I expected nvm to install properly, and to run my specified version 16.15.0.

Is there anything in any of your profile files that modifies the PATH?

If you are having installation issues, or getting "N/A", what does curl -I --compressed -v https://nodejs.org/dist/ print out?

+ curl -I --compressed -v https://nodejs.org/dist/
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Host nodejs.org:443 was resolved.
* IPv6: (none)
* IPv4: 104.20.22.46, 104.20.23.46
*   Trying 104.20.22.46:443...
* Connected to nodejs.org (104.20.22.46) port 443
* ALPN: curl offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [19 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [4835 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 / x25519 / RSASSA-PSS
* ALPN: server accepted h2
* Server certificate:
*  subject: CN=*.nodejs.org
*  start date: Feb 28 00:00:00 2024 GMT
*  expire date: Mar 30 23:59:59 2025 GMT
*  subjectAltName: host "nodejs.org" matched cert's "nodejs.org"
*  issuer: C=GB; ST=Greater Manchester; L=Salford; O=Sectigo Limited; CN=Sectigo RSA Domain Validation Secure Server CA
*  SSL certificate verify ok.
*   Certificate level 0: Public key type RSA (4096/152 Bits/secBits), signed using sha256WithRSAEncryption
*   Certificate level 1: Public key type RSA (2048/112 Bits/secBits), signed using sha384WithRSAEncryption
*   Certificate level 2: Public key type RSA (4096/152 Bits/secBits), signed using sha384WithRSAEncryption
} [5 bytes data]
* using HTTP/2
* [HTTP/2] [1] OPENED stream for https://nodejs.org/dist/
* [HTTP/2] [1] [:method: HEAD]
* [HTTP/2] [1] [:scheme: https]
* [HTTP/2] [1] [:authority: nodejs.org]
* [HTTP/2] [1] [:path: /dist/]
* [HTTP/2] [1] [user-agent: curl/8.6.0]
* [HTTP/2] [1] [accept: */*]
* [HTTP/2] [1] [accept-encoding: deflate, gzip, br, zstd]
} [5 bytes data]
> HEAD /dist/ HTTP/2
> Host: nodejs.org
> User-Agent: curl/8.6.0
> Accept: */*
> Accept-Encoding: deflate, gzip, br, zstd
> 
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [230 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [230 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/2 200 
< date: Fri, 29 Mar 2024 10:33:03 GMT
< content-type: text/html
< cache-control: public, max-age=3600, s-maxage=14400
< last-modified: Fri, 29 Mar 2024 07:35:09 GMT
< cf-cache-status: HIT
< age: 10416
< vary: Accept-Encoding
< strict-transport-security: max-age=31536000; includeSubDomains; preload
< x-content-type-options: nosniff
< server: cloudflare
< cf-ray: 86bf3312beee1736-SJC
< content-encoding: br
< 
{ [0 bytes data]

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
* Connection #0 to host nodejs.org left intact
HTTP/2 200 
date: Fri, 29 Mar 2024 10:33:03 GMT
content-type: text/html
cache-control: public, max-age=3600, s-maxage=14400
last-modified: Fri, 29 Mar 2024 07:35:09 GMT
cf-cache-status: HIT
age: 10416
vary: Accept-Encoding
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-content-type-options: nosniff
server: cloudflare
cf-ray: 86bf3312beee1736-SJC
content-encoding: br
@ljharb
Copy link
Member

ljharb commented Mar 29, 2024

I'm confused, what is AppCenter and what is that script?

@ljharb
Copy link
Member

ljharb commented Mar 29, 2024

As far as installing node via nvm in GHA, I use ljharb/actions/node/install for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants