chaotic-aur / toolbox

Unified kit with all the scripts required for maintaining the repository 🧰
https://aur.chaotic.cx
GNU Affero General Public License v3.0
81 stars 11 forks source link

aarch64 builds? #58

Open multiflexi opened 1 year ago

multiflexi commented 1 year ago

Hi, would you consider aarch64 builds? I think it makes sense because those machines are usually quite under-powered and compilation takes forever.

PedroHLC commented 1 year ago

We had them back in 2020, kept it for +/- an year. The amount of users was: 1 (me).

We could keep this issue open and people could leave a reaction in the post to manifest interest.

D3vil0p3r commented 9 months ago

Hey @PedroHLC is there a threshold of thumbs up to overcome to trigger the interest on building aarch64 packages in Chaotic?

PedroHLC commented 9 months ago

I think that more important than the thumbs, is a co-maintainer to deal with those packages and routines in specific :sweat_smile:

D3vil0p3r commented 9 months ago

The effort should not be limited only to those packages that are compiled by C-like languages, RUST or similar? For packages Python-based (or other scripting languages), I expect that the compatible arch should be any, they need only to move on an actual new directory aarch64, right? Do you expect that the packages built by prog languages like C and RUST are a lot?

PedroHLC commented 9 months ago

Do you expect that the packages built by prog languages like C and RUST are a lot?

https://geo-mirror.chaotic.cx/chaotic-aur/pkgs.files.txt

╭─pedrohlc at laptop in /tmp
╰─λ rg '\-x86_64.pkg.tar.zst$' pkgs.files.txt | wc -l
2490
╭─pedrohlc at laptop in /tmp
╰─λ rg '\-any.pkg.tar.zst$' pkgs.files.txt | wc -l
1414
D3vil0p3r commented 9 months ago

Oh... What is creating aarch64 only for those packages tagged as any?

PedroHLC commented 9 months ago

Oh... What is creating aarch64 only for those packages tagged as any?

Did you mean "What about creating"?

D3vil0p3r commented 9 months ago

I didn't give a look to the repo structure. In general I imagine that there should be a x86_64 folder containing all Chaotic AUR packages. I was thinking what about to create aarch64 folder where to copy all those 1414 any packages (ignoring the porting of the remaining x86_64 packages) so that at least that grup of 1414 packages can be used for ARM processors.

PedroHLC commented 9 months ago

It should be possible, wouldn't need to copy the files, relative symlinks should work, the toolbox would need to be adapted for this. After we update the x86-64 DB we will have to delete missing links, add new links, update the Aarch64 DB. But, we don't have enough manpower for this change now. (Instead of calling it a Aarch64 DB, we could call it AnyOnly DB)

D3vil0p3r commented 9 months ago

It is a good idea. So you mean that there will be AnyOnly DB (that will work also for other CPUs) and it keeps the original any files, and X86_64 DB that will contain the original x86_64 only file + symlinks from Any DB?

PedroHLC commented 9 months ago

It is a good idea. So you mean that there will be AnyOnly DB (that will work also for other CPUs) and it keeps the original any files, and X86_64 DB that will contain the original x86_64 only file + symlinks from Any DB?

90% right, except that the AnyDB will be the one 100% of symlinks instead of having it 50/50 which would only make our life harder.