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

Add Windows ARM64 CI support #452

Draft
wants to merge 19 commits into
base: main
Choose a base branch
from
Draft

Conversation

Neptune650
Copy link
Contributor

/claim #430
/closes #430

description

Add support for Windows ARM64 CI in release-app.yml, has been tested in Travis CI and Windows Surface.

related issue: #430

Reopened due to repository creation

Copy link

vercel bot commented Oct 9, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
screenpipe ✅ Ready (Inspect) Visit Preview 💬 Add feedback Oct 29, 2024 0:44am

@Neptune650
Copy link
Contributor Author

@louis030195 Also, GitHub Actions offers larger runners with Windows ARM64 native support (https://docs.github.com/en/actions/using-github-hosted-runners/using-larger-runners/about-larger-runners)

You might be interested, since cross compilation tends to be slower.

@louis030195
Copy link
Collaborator

Screenshot 2024-10-09 at 16 10 23

@Neptune650 just created this one, let me know if you can use it or anything i need to do, also if you have any idea of how much it will cost (so unclear their billing)

@louis030195
Copy link
Collaborator

@Neptune650 just fyi

i see some v8 code stuff, i actually removed deno lib dependency, the only dependency is deno CLI now (which facing some issue to release on windows actually) but it should be easier to implement windows arm now

sorry for the changes, can you update this PR? seems like the official deno build does not offer windows arm though https://docs.deno.com/runtime/getting_started/installation/

maybe through cargo install?

cargo install deno --locked

giving you part of the bounty for the effort for now, can you try to install deno cli in windows arm in the pre_build.js? (this file is kinda dirty but do its job)

/tip $80 @Neptune650

Copy link

algora-pbc bot commented Oct 11, 2024

@Neptune650
Copy link
Contributor Author

@Neptune650 just fyi

i see some v8 code stuff, i actually removed deno lib dependency, the only dependency is deno CLI now (which facing some issue to release on windows actually) but it should be easier to implement windows arm now

sorry for the changes, can you update this PR? seems like the official deno build does not offer windows arm though https://docs.deno.com/runtime/getting_started/installation/

maybe through cargo install?

cargo install deno --locked

giving you part of the bounty for the effort for now, can you try to install deno cli in windows arm in the pre_build.js? (this file is kinda dirty but do its job)

/tip $80 @Neptune650

Thanks for the tip, but I'm not sure what happens because I haven't received it... no idea why.

I'll see how we can build Deno for Windows ARM64

@louis030195
Copy link
Collaborator

@Neptune650 will fix algora

i am stuck atm in installing deno cli in windows, trying to fix now

Copy link

algora-pbc bot commented Oct 11, 2024

🎉🎈 @Neptune650 has been awarded $80! 🎈🎊

Copy link

vercel bot commented Oct 16, 2024

Deployment failed with the following error:

The provided GitHub repository does not contain the requested branch or commit reference. Please ensure the repository is not empty.

@Neptune650
Copy link
Contributor Author

@louis030195 Hello, I'd like to point out two things, first is that since GitHub Runners don't have GPUs by default, the Rust CI takes a lot of time, this leads to it being cancelled, there are three possible solutions:

Thoughts?

@Neptune650
Copy link
Contributor Author

Screenshot 2024-10-09 at 16 10 23

@Neptune650 just created this one, let me know if you can use it or anything i need to do, also if you have any idea of how much it will cost (so unclear their billing)

And regarding this, the pricing for the configuration you picked will be $0.08 per minute ran.

@Neptune650
Copy link
Contributor Author

@louis030195 Also I'm not quite sure yet how I could get access to these runners to start testing the Actions under Windows ARM directly, any suggestion?

@louis030195
Copy link
Collaborator

@louis030195 Also I'm not quite sure yet how I could get access to these runners to start testing the Actions under Windows ARM directly, any suggestion?

not sure what i need to do to let you access the runners

i'd prefer do whatever to use bigger runner, if we can reduce build time also it will be extremely valuable

@Neptune650
Copy link
Contributor Author

@louis030195 Also I'm not quite sure yet how I could get access to these runners to start testing the Actions under Windows ARM directly, any suggestion?

not sure what i need to do to let you access the runners

i'd prefer do whatever to use bigger runner, if we can reduce build time also it will be extremely valuable

I think the only way is giving access to the organization but I don't think that's very convenient, perhaps accepting my Actions changes each time? Not sure.

@louis030195
Copy link
Collaborator

there is a chance that we switch to bun instead of deno in the upcoming week(s) to run pipes since deno in the end provides little upsides and too many downsides (does not support well nextjs, not even easy to write Rust extensions)

likely if going to bun we'll write Rust webassembly extensions for screenpipe-js SDK or another hack

bun does not seem to support windows ARM well too oven-sh/bun#9824

@Neptune650
Copy link
Contributor Author

there is a chance that we switch to bun instead of deno in the upcoming week(s) to run pipes since deno in the end provides little upsides and too many downsides (does not support well nextjs, not even easy to write Rust extensions)

likely if going to bun we'll write Rust webassembly extensions for screenpipe-js SDK or another hack

bun does not seem to support windows ARM well too oven-sh/bun#9824

@louis030195 From what I read, even when building from source, it doesn't seem like Bun supports Windows ARM64 natively, so what should be done? This is a pretty big blocker.

@louis030195
Copy link
Collaborator

@Neptune650 let's pause this issue for now, unless more people ask for windows ARM

@Neptune650
Copy link
Contributor Author

@Neptune650 let's pause this issue for now, unless more people ask for windows ARM

@louis030195 That's okay with me

@donjjones
Copy link

@Neptune650 let's pause this issue for now, unless more people ask for windows ARM

I'm interested in support for Windows on ARM, willing to test

@louis030195
Copy link
Collaborator

one way to do this is to disable the "pipe store" feature when it's ARM windows (which is the one that uses bun which seems hard to compile for windows arm)

@Neptune650
Copy link
Contributor Author

one way to do this is to disable the "pipe store" feature when it's ARM windows (which is the one that uses bun which seems hard to compile for windows arm)

@louis030195 Well another issue is ONNX, which is only supported in ARM windows if using CPU - which is extremely slow.

@louis030195
Copy link
Collaborator

one way to do this is to disable the "pipe store" feature when it's ARM windows (which is the one that uses bun which seems hard to compile for windows arm)

@louis030195 Well another issue is ONNX, which is only supported in ARM windows if using CPU - which is extremely slow.

i think most people have no GPU anyway and it seem to work fine still

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

Successfully merging this pull request may close these issues.

implement support for windows ARM in release-app.yml
3 participants