PowerDNS / pdns

PowerDNS Authoritative, PowerDNS Recursor, dnsdist
https://www.powerdns.com/
GNU General Public License v2.0
3.63k stars 904 forks source link

Builder-support always uses install_rust.sh even when rust would be available (currently problematic outside of x86-64) #13470

Open hlindqvist opened 10 months ago

hlindqvist commented 10 months ago

Short description

A build.sh-based build relies on the script builder-support/helpers/install_rust.sh to install rust. It does so by fetching a tarball with a pre-built rust from Powerdns (available only for x86-64).

This approach currently causes the build to fail on other platforms than x86-64, even though the OS may provide a recent enough rust.

Environment

Steps to reproduce

  1. ./builder/build.sh -m recursor ubuntu-mantic on eg arm64

Expected behaviour

It builds a pdns-recursor package, provided a compatible version of rust is available. (Using install_rust.sh as a fallback rather than the main approach?)

Actual behaviour

The build fails with this error

 > [package-builder  6/14] RUN /pdns/builder-support/helpers/install_rust.sh:
0.223 /pdns/builder-support/helpers/install_rust.sh: No SHA256 defined for aarch64

(as there is no tarball available for the platform)

Other information

As a hack I replaced the call to install_rust.sh with RUN apt -y install rust-all which then builds. But there would need to be some conditional handling, I assume.

rgacogne commented 10 months ago

DNSdist has the same issue with Rust AND Quiche, which would be nice to solve at the same time.