memorysafety / river

This repository is the home of the River reverse proxy application, based on the pingora library from Cloudflare.
https://www.memorysafety.org/initiative/reverse-proxy/
Apache License 2.0
1.51k stars 88 forks source link

apt publishing #44

Open Fexiven opened 1 month ago

Fexiven commented 1 month ago

Are there already any thoughts on publishing the project to apt repos?

jamesmunns commented 1 month ago

Hey @Fexiven! This is another area that there is likely long term interest, but not something I am familiar enough to do immediately.

As debian often has somewhat older versions of the rust compiler, this also plays into the discussion for MSRV: #41.

As of today, it looks like debian stable is on Rust 1.63: https://packages.debian.org/search?keywords=rustc, and Rust 1.79 is releasing tomorrow: https://www.whatrustisit.com/

That puts it 16 releases behind, or about two years: (16 releases x (6 weeks / 1 release) x (1 year / 52 weeks)) = 1.85 years.

In general, there is likely interest in APT (and other) packaging, but likely not right now, and we'll need to discuss how to support this.

I did just check if we can build on 1.63, and the initial answer is "no", due to MSRV of at least one dependency (there may be more):

error: package `zstd-sys v2.0.10+zstd.1.5.6` cannot be built because it requires rustc 1.64 or newer, while the currently active rustc version is 1.63.0
Fexiven commented 1 month ago

Great, exactly what i feared. Thanks for the info

jamesmunns commented 1 month ago

Definitely happy to keep this issue open to track this, and open to feedback from package maintainers or other folks who have experience packaging Rust applications for debian, including things to be aware of, and any practical suggestions for making this possible.

eaufavor commented 2 weeks ago

I'm not an expert on Debian packaging but I don't think we need to worry about compiler dependency if we just want to publish binaries as a 3rd party package source, like https://openresty.org/en/linux-packages.html. Binaries compiled with the latest rustc should just work fine on Debian Bookworm.