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 support for MIPS64 #43

Open
jacob-carlborg opened this issue Feb 12, 2023 · 4 comments
Open

Add support for MIPS64 #43

jacob-carlborg opened this issue Feb 12, 2023 · 4 comments
Labels
architecture Request for supporting a new CPU architecture enhancement New feature or request

Comments

@jacob-carlborg
Copy link
Contributor

No description provided.

@jacob-carlborg jacob-carlborg added enhancement New feature or request architecture Request for supporting a new CPU architecture labels Feb 12, 2023
@Slackadays
Copy link
Contributor

MIPS seems to be totally deprecated for Linux, so I don't know if it's worth it to include unless you don't plan on supporting MIPS Linux on CPA.

@jacob-carlborg
Copy link
Contributor Author

i don't plan to support Linux. It's very easy to use Linux on non-x86 architectures using Docker and QEMU.

@Slackadays
Copy link
Contributor

I'm a little confused about this one. I do want to use Linux on non-x86 architectures, but I thought the point of CPA was to make it easy so that we don't have to mess with Docker and QEMU, because the development many of us do often has nothing to do with those. Here's a tutorial of how to do it similar to how you said: https://www.mess.org/2022/01/17/Creating-a-linux-arm64-github-actions-runner/ but that looks like a lot of work to do for every single non-x86 Linux runner I want. If CPA did this hard work once, then that's a lot more effort saved down the line overall for all the users.

@jacob-carlborg
Copy link
Contributor Author

Here's a tutorial of how to do it similar to how you said: https://www.mess.org/2022/01/17/Creating-a-linux-arm64-github-actions-runner/ but that looks like a lot of work to do for every single non-x86 Linux runner I want. If CPA did this hard work once, then that's a lot more effort saved down the line overall for all the users.

Wow, no. You don't need to do all that. It just takes two lines, more or less:

- uses: docker/setup-qemu-action@v1
- run: |
  docker run \
    --rm \
    -v $(pwd):/${{ github.workspace }} \
    -w ${{ github.workspace }} \
    --platform linux/mips64le \
    debian:latest \
    ./.github/workflows/ci.sh

Here's a full usage example of a workflow that uses both CPA and Docker with QEMU: https://github.com/jacob-carlborg/lime/blob/master/.github/workflows/ci.yml.

I see two reasons to add support for Linux:

  • Support architectures that Docker doesn't support. Docker doesn't support all architectures that QEMU supports
  • Having a single unified API

With Linux you also get into the trouble of which distributions to support.

But if someone wants to contribute support for Linux I will definitely accept that. If I'm going to add support for Linux it's at the bottom of the priority list. It's just a matter of being smart of how I spend the little time I have to spend on CPA. It's so much I want to do with CPA, just look at the recent enhancement requests. There's also a bunch of internal things I have on my todo list which I have not created GitHub issues for.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
architecture Request for supporting a new CPU architecture enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants