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

[Request] Binary releases for arm 32 bits #64

Open
m040601 opened this issue Jan 11, 2023 · 2 comments
Open

[Request] Binary releases for arm 32 bits #64

m040601 opened this issue Jan 11, 2023 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@m040601
Copy link

m040601 commented Jan 11, 2023

First of all, thank you for this interesting and very usefull tool.
I stumbled upon it by chance and have been using it on my x86 pc's and servers.

It is very usefull that you release pre compiled binaries on github. These can be especially usefull in devices where you dont want to download 500 Mega of Go just to compile the tool. Or for maintainers of "-bin" package versions of linux distros distributions .

I noticed you also release binaries for arm. But that is only arm 64 bits (aarch64 etc).That leaves out a lot of usefull devices that are not ready for the trash. For example my Raspberry Pi Zero (armv6) many arm chromebooks (armv7h) etc. This doggo utility is also usefull there.

This tool is written in Go. An easy peasy language to compile and provide binaries compared to others.
Since you are automating all of this and using go-releaser, I wonder if it wouldnt just be a small change in that config, and not a lot of extra work to ask for ?

See for example how fzf does it, https://github.com/junegunn/fzf

I'm not 100 % sure but I, think, you dont even have to worry about all the different old arm versions. Only2 arm binaries are sufficient. One "aarch64"for 64bits (you already have it) and another one low common denominator "arm" for all the other 32bit arm's. One that works in armv5, armv6, armv7h etc.

Thanks in advance

@mr-karan
Copy link
Owner

Hi! @m040601 Thanks for showing interest in the project. It might be trivial to add support for 32 bit arm by using arm in .goreleaser.yml. I might not be able to test this as I don't have the hardware for the same.

I can create a test build, could you please confirm if it runs fine?

@mr-karan mr-karan self-assigned this Jan 12, 2023
@mr-karan mr-karan added the enhancement New feature or request label Jan 12, 2023
@m040601
Copy link
Author

m040601 commented Feb 13, 2023

could you please confirm if it runs fine?

I can confirm you that I've been running all sorts of arm software on my raspberry pi 2b (23bit) and my samsung chromebook.

And I mean, really, all sorts of software. Servers, TUI apps, utilities, media tools etc. You can see all the software that is officially available for armv7h in Archlinuxarm for example, https://archlinuxarm.org/packages

In addition to the official software repos, there are also user provided "recipes".
Even the package manager itself is a go tool, https://aur.archlinux.org/packages/yay-bin .That "-bin" part means it's a precompiled binary available in Archlinux user repos. It of course supports arm32 bits as well.

Debian is another distribution that you can have a look at (the armhf version) and see the 10's of thousands of arm32 official packages.

I've been doing this for many years on Archlinux arm. And I have never seen an example of this kind of go tool (cli network) that runs or 64 but not on 32.

That's actually, one of, the selling points of and reason for existence of Go.

Here is yet another go tool, a file manager that runs in dozens of old arm and mips architectures, https://github.com/gokcehan/lf/releases/tag/r28. You can also see their release process, although not based on go-releaser I think, https://github.com/gokcehan/lf/tree/master/.github/workflows

I can only explicityly confirm to you if doggo works, after testing a prebuilt binary. As I will not download and install half a gigabyte of Go and run a compiler on a tiny plattform, just to compile a small tool.

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

No branches or pull requests

2 participants