error trying to get binary to Linux/arm81/latest "Illegal Instruction"

I love fly.io and I’m trying to set my environment up in a “android” while having a debian running on android

This is so I can code anywhere. the setup is 90% completed but I keep getting an error with the flyctl command line binary.

first of all, I can’t install it via the website “install.sh” bash script because it says it has no version for my arch(android, arm)

Then I went to github and manually downloaded the arm version and tried running but when I try to execute it displays “Illegal Instruction”

Is there an npm package for fly.io(I searched and could not find it)

Is there a way of compiling it to arm.

I need to basically get flyctl to run in an android/Linux/arm81 how can I do this, does fly has some sort of API, I just need to login and deploy, is there any publicly exposed API where I can make a simple bash script to deploy my app?

Thanks in advance

What you are trying to do sounds very cool.

Have you tried building flyctl for yourself: flyctl/CONTRIBUTING.md at master · superfly/flyctl · GitHub ?

I tried but I keep getting “version mismatch” errors.

make build
Running Generate for Help and GraphQL client
go generate ./…
go: errors parsing go.mod:
/home/viktor/projects/flyctl/go.mod:3: invalid go version ‘1.21.0’: must match format 1.23
make: *** [Makefile:8: generate] Error 1

and

Vik@Vik: pts/3: 44 files 324Kb ❯ make build
Running Generate for Help and GraphQL client
go generate ./…
go: errors parsing go.mod:
/home/viktor/projects/flyctl/go.mod:3: invalid go version ‘1.21.0’: must match format 1.23
make: *** [Makefile:8: generate] Error 1

etc

I don’t know if this helps, but proof of concept (build on a Mac M2):

FROM debian:12-slim
RUN apt-get update
RUN apt-get install -y build-essential git wget

RUN wget -qO- https://go.dev/dl/go1.21.5.linux-arm64.tar.gz | \
  tar -C /usr/local -xz
ENV PATH=$PATH:/usr/local/go/bin
         
RUN git clone https://github.com/superfly/flyctl.git
WORKDIR /flyctl
RUN make build

Thanks for the suggestion

I did and it took … several hours(wtf)

It seems docker is not working with any volume in your code.

Where can I get the binary

Binaries are here: Release v0.1.137 · superfly/flyctl · GitHub

I don’t know if the Linux arm64 binaries will work on your device.

I already tried downloading the arm64 but could not execute the binary.

I’ll try to change phones and see if it works(the phone is somewhat old)

as a final resource, is the flyctl the only way to deploy?

maybe i’ll do a package analysis and see what it’s uploading, where, auth tokens etc. to try to reverse-engineer

an npm package would save my life right now.

Technically, no. Practically, yes.

If you can build an OCI docker image and push it to our repository, you can deploy using our REST API.

would love to

if i can build the tool i’ll release a small bash script to deploy fly.io apps on arm81(the platform that i’m trying to deploy from)

is there any precent of someone using the “raw” API for this type of thing?

how would it be done?

trying to see how much info i can get here before analyzing HTTP traffic

notice: i don’t know go but i’m trying to peek into:

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.