skia-canvas icon indicating copy to clipboard operation
skia-canvas copied to clipboard

Cannot install v1.0.1 on Ubuntu arm64

Open ewanhowell5195 opened this issue 3 years ago • 15 comments

When trying to install v1.0.1 on Ubuntu 22.04.1 arm64, I get the following error:

npm ERR! code 101
npm ERR! path /home/ubuntu/Javascript/test/node_modules/skia-canvas
npm ERR! command failed
npm ERR! command sh -c -- node-pre-gyp install || npm run build -- --release
npm ERR! response status 403 Forbidden on https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz
npm ERR!
npm ERR! > [email protected] build
npm ERR! > cargo-cp-artifact -nc lib/v6/index.node -- cargo build --message-format=json-render-diagnostics --release
npm ERR! node-pre-gyp info it worked if it ends with ok
npm ERR! node-pre-gyp info using [email protected]
npm ERR! node-pre-gyp info using [email protected] | linux | arm64
npm ERR! node-pre-gyp info check checked for "/home/ubuntu/Javascript/test/node_modules/skia-canvas/lib/v6/index.node" (not found)
npm ERR! node-pre-gyp http GET https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz
npm ERR! node-pre-gyp ERR! install response status 403 Forbidden on https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz
npm ERR! node-pre-gyp ERR! install error
npm ERR! node-pre-gyp ERR! stack Error: response status 403 Forbidden on https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz
npm ERR! node-pre-gyp ERR! stack     at /home/ubuntu/Javascript/test/node_modules/@mapbox/node-pre-gyp/lib/install.js:67:15
npm ERR! node-pre-gyp ERR! stack     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
npm ERR! node-pre-gyp ERR! System Linux 5.15.0-1017-oracle
npm ERR! node-pre-gyp ERR! command "/usr/bin/node" "/home/ubuntu/Javascript/test/node_modules/.bin/node-pre-gyp" "install"
npm ERR! node-pre-gyp ERR! cwd /home/ubuntu/Javascript/test/node_modules/skia-canvas
npm ERR! node-pre-gyp ERR! node -v v18.7.0
npm ERR! node-pre-gyp ERR! node-pre-gyp -v v1.0.10
npm ERR! node-pre-gyp ERR! not ok
npm ERR! error: could not find `Cargo.toml` in `/home/ubuntu/Javascript/test/node_modules/skia-canvas` or any parent directory
npm ERR! Did not copy "cdylib:skia-canvas"

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/ubuntu/.npm/_logs/2022-10-23T21_57_44_833Z-debug-0.log

Full log: 2022-10-23T21_57_44_833Z-debug-0.log

ewanhowell5195 avatar Oct 23 '22 22:10 ewanhowell5195

Same here. Link on AWS works for 1.0.0 but not 1.0.1 HTTP request sent, awaiting response... 403 Forbidden

renambot avatar Nov 09 '22 23:11 renambot

seems to install properly now

renambot avatar Dec 09 '22 22:12 renambot

I'm getting a similar error too, although I'm using a virtualized raspberry pi environment using arm-runner-action.

[5/5] Building fresh packages...
error /plebbit-cli/node_modules/captcha-canvas/node_modules/skia-canvas: Command failed.
Exit code: 1
Command: node-pre-gyp install || npm run build -- --release
Arguments: 
Directory: /plebbit-cli/node_modules/captcha-canvas/node_modules/skia-canvas
Output:
node-pre-gyp info it worked if it ends with ok
node-pre-gyp info using [email protected]
node-pre-gyp info using [email protected] | linux | arm64
node-pre-gyp info check checked for "/plebbit-cli/node_modules/captcha-canvas/node_modules/skia-canvas/lib/v6/index.node" (not found)
node-pre-gyp http GET https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz
node-pre-gyp ERR! install response status 403 Forbidden on https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz 
node-pre-gyp ERR! install error 
node-pre-gyp ERR! stack Error: response status 403 Forbidden on https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz
node-pre-gyp ERR! stack     at /plebbit-cli/node_modules/@mapbox/node-pre-gyp/lib/install.js:67:15
node-pre-gyp ERR! stack     at processTicksAndRejections (node:internal/process/task_queues:96:5)
node-pre-gyp ERR! System Linux 5.15.0-1024-azure
node-pre-gyp ERR! command "/usr/bin/node" "/plebbit-cli/node_modules/captcha-canvas/node_modules/skia-canvas/node_modules/.bin/node-pre-gyp" "install"
node-pre-gyp ERR! cwd /plebbit-cli/node_modules/captcha-canvas/node_modules/skia-canvas
node-pre-gyp ERR! node -v v16.18.1
node-pre-gyp ERR! node-pre-gyp -v v1.0.10
node-pre-gyp ERR! not ok 
response status 403 Forbidden on https://skia-canvas.s3.us-east-1.amazonaws.com/v1.0.1/linux-arm64-napi-v6-glibc.tar.gz

> [email protected] build
> cargo-cp-artifact -nc lib/v6/index.node -- cargo build --message-format=json-render-diagnostics --release

Error: could not find the `cargo` executable.

You can find instructions for installing Rust and Cargo at:

    https://www.rust-lang.org/tools/install


Did not copy "cdylib:skia-canvas"

Rinse12 avatar Dec 13 '22 11:12 Rinse12

yes installed 1.0.1 on my laptop. But now it fails again on a different machine in a CI workflow. Maybe hitting some download limits ?

renambot avatar Dec 13 '22 22:12 renambot

@renambot Is your laptop arm64? I'm building for multiple platforms and all of them succeed except on arm64

Rinse12 avatar Dec 14 '22 05:12 Rinse12

yes M1 macbook pro

renambot avatar Dec 14 '22 22:12 renambot

Running into the same issue on a MacBook with an m1 processor.

rctheriot avatar Dec 15 '22 22:12 rctheriot

Getting the same problem here

Lianecx avatar Dec 18 '22 13:12 Lianecx

@samizdatco

Rinse12 avatar Dec 25 '22 13:12 Rinse12

Version 1.0.0 seems to be working

Turtlepaw avatar Dec 31 '22 23:12 Turtlepaw

I am having the same problem. This is quite a problem for us, as we need to support linux-arm64

Julusian avatar Jun 14 '23 09:06 Julusian

I am having the same problem. This is quite a problem for us, as we need to support linux-arm64

Forcing the version to 1.0.0 like this: "skia-canvas": "1.0.0" works for linux-arm64

BridgeSenseDev avatar Jun 24 '23 14:06 BridgeSenseDev

I've resorted to publishing a fork to workaround this issue. That was very tedious to get up and running, as the ci in this repository is rather broken due to various platform deprecations, and some of it relying on self-hosted arm/arm64 runners.

Tbh, using @mapbox/node-pre-gyp in this repository makes for messy usage in my project, so part of my motivation or forking was to have the option of changing that out too. I think I could potentially have overridden the s3 url with an environment variable otherwise.

Julusian avatar Jul 16 '23 01:07 Julusian

I'm experiencing the same problem. Downgrading to 1.0.0 helped, but it's more of a temporary solution (thanks @BridgeSenseDev by the way). Is there any progress here or we need to compile it from source manually?

egorov-evrone avatar Mar 04 '24 07:03 egorov-evrone

I've published some of the binaries in my fork as well, which contain various updates as per release notes on each version (also the updated CHANGELOG). There are no linux-x86 versions though.

https://github.com/mpaperno/skia-canvas/releases

(Note that the binaries published prior to latest version do not include Window support.)

I don't have anything published on NPM, but the fork can be installed/used directly with a URL, eg.

npm install mpaperno/skia-canvas#master

or

"dependencies": {
  "skia-canvas": "github:mpaperno/skia-canvas#master"
}

mpaperno avatar Mar 04 '24 08:03 mpaperno