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

Setup GitHub action for automatic cross platform builds #7

Closed
4 tasks
nchapman opened this issue Feb 14, 2024 · 9 comments · Fixed by #32
Closed
4 tasks

Setup GitHub action for automatic cross platform builds #7

nchapman opened this issue Feb 14, 2024 · 9 comments · Fixed by #32
Assignees

Comments

@nchapman
Copy link
Owner

Automatically build the app when merging.

  • Figure out versioning plan. Semantic versioning? Add develop branch? Auto-build both?
  • macOS
  • Windows
  • Linux

Reference: https://tauri.app/v1/guides/building/cross-platform

@ospfranco
Copy link
Collaborator

ospfranco commented Feb 28, 2024

The github workflow is setup. Here is one run:

https://github.com/nchapman/pulsar/actions/runs/8081673932/job/22080785177

Right now it is failing because it has not downloaded the llamafile (it is also currently trying to import a linux arch version). Before moving forward and consuming all the minutes it would be great just to have confirmation we want this to run at this point.

It seems I can no longer move items to In Progress, so maybe @nchapman you can move this for me?

@ospfranco ospfranco reopened this Feb 28, 2024
@ospfranco ospfranco self-assigned this Feb 28, 2024
@nchapman
Copy link
Owner Author

@ospfranco yeah totally makes sense on the missing llamafile. I was hoping we'd have a native solution ready before we automated builds, but that's going to take a bit longer. I'll just go ahead and finish the llamafile integration. I'll make sure we have llamafile-x86_64-unknown-linux-gnu handled.

I updated permissions on the board so you should be able to move the issue now. Let me know if it doesn't work!

@nchapman
Copy link
Owner Author

@ospfranco llamafile is now integrated in PR #33. Want to give this a try again and see if it builds via the action?

@ospfranco
Copy link
Collaborator

ospfranco commented Feb 29, 2024

  • Seems the action is trying to build the intel version of the app, I need to check if it supports arm machines. Or maybe the github runner is an intel machine and cannot cross-compile to universal/apple silicon
  • On windows it seems bun is not available? Also need to check this again
  • Ubuntu did compile though! 🥳

https://github.com/nchapman/pulsar/actions/runs/8097062006/job/22127218866

@ospfranco
Copy link
Collaborator

Yeah, ok. it seems only the large Macos runners are apple silicon. What do you think @nchapman , do you want to shell out for a larger instance?

@ospfranco
Copy link
Collaborator

oven-sh/bun#43 (comment)

so bun doesn't officially run on Windows. There is currently experimental support, I can try to get that work but it looks like it comes with a bunch of caveats.

@nchapman
Copy link
Owner Author

nchapman commented Feb 29, 2024

@ospfranco yay unbuntu 🥳! I went ahead and added a llamafile symlink for intel macs. It does look like we can do cross compilation on macOS. So maybe the intel machine would be workable? That being said, I'm totally fine paying for a large macOS runner. Do I need to set anything up for us to do that?

@ospfranco
Copy link
Collaborator

ospfranco commented Mar 1, 2024

Have you set up the payment on your account? the free minutes are measly anyway, so we will end up paying for more machine time anyway.

As for cross-compilation, yeah it is possible, it is only a question if the action takes care of it automatically. Let's try with all the llamafiles and see what the output is

@ospfranco
Copy link
Collaborator

Done

Image

it is setup to run from the release branch. On a simple push. We can later modify it when pushing a tag or so.

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

Successfully merging a pull request may close this issue.

2 participants