astral-sh / uv

An extremely fast Python package and project manager, written in Rust.
https://docs.astral.sh/uv
Apache License 2.0
21.79k stars 637 forks source link

Publish binaries for FreeBSD #3370

Open zanieb opened 5 months ago

zanieb commented 5 months ago

e.g. the installer currently fails with

# curl -LsSf https://astral.sh/uv/install.sh | sh
ERROR: there isn't a package for x86_64-unknown-freebsd

I'm not sure how feasible this is, but here's a tracking issue.

Related #2442

charliermarsh commented 5 months ago

For what it's worth, you can't upload FreeBSD wheels to PyPI, so users will always need to build any dependencies from source (IIUC).

zanieb commented 5 months ago

I'm a little confused since I thought we didn't have Python dependencies but that's good to know.

charliermarsh commented 5 months ago

Ah, to clarify, we don’t have any Python deps, I just mean: for any dependencies they install with pip or uv, IIUC they will end up building from source.

konstin commented 5 months ago

Note that freebsd is not supported by github actions, we either need a custom cross compiling solution or use cirrus ci

Kartatz commented 4 months ago

Note that freebsd is not supported by github actions, we either need a custom cross compiling solution or use cirrus ci

Some time ago, I set up a cross-compiler targeting FreeBSD. I have not yet tried cross-compiling Rust programs myself, but that should be pretty straightforward to get working.

Here is the repository in case anyone is interested: https://github.com/AmanoTeam/Loki

dbohdan commented 1 month ago

https://github.com/cross-platform-actions/ lets you use Free/Net/OpenBSD in GitHub Actions. I had a good experience with it in a C project. While I haven't used it, there is also https://github.com/houseabsolute/actions-rust-cross that cross-compiles Rust.

zanieb commented 1 month ago

(We're currently at zero 👍 for this issue, so in addition to this being technically challenging to maintain this is pretty low priority since there's not a lot of clear interest)

donnex commented 5 days ago

I ran into this issue today. The uv package in FreeBSD ports is really old and outdated.

Has anyone been able to successfully compile the latest release of uv in FreeBSD? I had no luck with manual buld by cloning the repo.

konstin commented 5 days ago

Can you share a log of what failed in the manual build?

donnex commented 4 days ago

Yeah of course. I'm not sure if it's anything related to uv directly.

error: failed to run custom build command for `tikv-jemalloc-sys v0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7`

uv-cargo-build.log

konstin commented 4 days ago

Could you try https://github.com/astral-sh/uv/pull/7780?

donnex commented 3 days ago

@konstin works prefectly! :partying_face: :pray:

target/release/uv version
uv 0.4.17 (c2f19dfd6 2024-09-29)