summaryrefslogtreecommitdiff
path: root/dev-python/uv
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-27 03:04:42 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-27 03:04:42 -0500
commitc6e6588bafac78d585ece24e4dabdf99f3af211d (patch)
treee68bccff68681d3201cf21c1a5682ad5abbfd4f3 /dev-python/uv
parent8a7e9bb6193b9b54ffb149bdf92c9689a3798e00 (diff)
downloadbaldeagleos-repo-c6e6588bafac78d585ece24e4dabdf99f3af211d.tar.gz
baldeagleos-repo-c6e6588bafac78d585ece24e4dabdf99f3af211d.tar.xz
baldeagleos-repo-c6e6588bafac78d585ece24e4dabdf99f3af211d.zip
Adding metadata
Diffstat (limited to 'dev-python/uv')
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.11.25.ebuild163
2 files changed, 165 insertions, 0 deletions
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index ad2725d6cfe3..582c85d3cd16 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -8,3 +8,5 @@ DIST uv-0.11.23-crates.tar.xz 43596924 BLAKE2B deeafbb1c13c2ae42f4ba12e7c220f518
DIST uv-0.11.23.gh.tar.gz 5488941 BLAKE2B 0d54f3f8568787cc2c6e9d1eb5dbd6f94d2d408f3872d4ca3557989f38def6ed11380e90583ab9ee162a9a2a60e1f47311f7ed3c93096117d044b580fa9a1de7 SHA512 4d40479ca540294fbdb346ca8c2dcb91fef572d1e663951ffea2370f9d09f12140aed2029be1178332874ac80150155b88774798c6424686badf7eeef646ce3f
DIST uv-0.11.24-crates.tar.xz 43622872 BLAKE2B 42ae58c7be399b917935d18840aea0a37545fe8f55eb236946804d6d937f8c29b31076f82bb67927ebd6cbd8505ac8d66317bc3c1426edeb5d45a5ded3feb6aa SHA512 745779a5ca9f604ed37506951cb1848d21ae3e63cfb1a17ecdd0603670a18e44eb084a4f7e92f582b9d3682218f54c6c29fffb63c58edbb79b72970d57a436a5
DIST uv-0.11.24.gh.tar.gz 5503210 BLAKE2B b73f436de8b937c05c7d54edeef28ee658784c99df2bbd6ece638f799083b51b5d59fc57913c9a5daa58b5d44f69a3f5a3c0c0f1987cda35aa110326923fcb35 SHA512 4927f0280b4041293180db6efed8c31facbb23cb4349a2383ef0488c26b21a3fc6ab98f94e7ff41bf4411f65d158208345632e130a6fae9f2bc85d40deddefec
+DIST uv-0.11.25-crates.tar.xz 43779192 BLAKE2B ae9d16ba3f8a5a719b6f52980c3b8ce6f874494f861cdad065ead5f3a19b80794bc4dda451710f061b45bdaa05a5587aacb5a583d01dd7cb74d800be4d5e3293 SHA512 0dc611e6aef1fa0861fbc63eba94e588022cb3974aa788c3e595cea04adf0c4165316e6cacb8cf073acc22db84bc61da7de0218ac51665b0e6aa215b6a1cc1e8
+DIST uv-0.11.25.gh.tar.gz 5538598 BLAKE2B 47198e379339a963a90b394b29271e2b276ced739f4320daf279eabc53cd0bab1698a57f336ed3270a4b8f40fa4f6a8f8b201603ed3952d282d220b0e290418a SHA512 9b993ae026d55ee8dfe13101e0fdbe026d81b77ff42b20ad42ff72c9708f2d767cde94010e69cd4f65fa8821c43958bc665893761119770deba70823d895298c
diff --git a/dev-python/uv/uv-0.11.25.ebuild b/dev-python/uv/uv-0.11.25.ebuild
new file mode 100644
index 000000000000..e5931b30ed3e
--- /dev/null
+++ b/dev-python/uv/uv-0.11.25.ebuild
@@ -0,0 +1,163 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+RUST_MIN_VER="1.94.0"
+
+inherit cargo check-reqs
+
+CRATE_PV=${PV}
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
+ CDLA-Permissive-2.0 ISC MIT MIT-0 MPL-2.0 Unicode-3.0
+ Unicode-DFS-2016 ZLIB
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ dev-lang/python:3.13
+ !!~dev-python/uv-0.5.0
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+ rust_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # force thin lto, makes build much faster and less memory hungry
+ # (i.e. makes it possible to actually build uv on 32-bit PPC)
+ sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+ # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
+
+ # remove unbundled sources, just in case
+ find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
+
+ # bzip2-sys requires a pkg-config file
+ # https://github.com/alexcrichton/bzip2-rs/issues/104
+ mkdir "${T}/pkg-config" || die
+ export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
+ cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
+ Name: bzip2
+ Version: 9999
+ Description:
+ Libs: -lbz2
+ EOF
+
+ # uv is now forcing bundled liblzma, sigh
+ sed -i -e '/xz/s:"static"::' Cargo.toml || die
+}
+
+src_configure() {
+ local myfeatures=(
+ test-git
+ test-pypi
+ test-python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ dobin "$(cargo_target_dir)"/{uv,uvx}
+
+ insinto /etc/xdg/uv
+ newins - uv.toml <<-EOF || die
+ # These defaults match Fedora, see:
+ # https://src.fedoraproject.org/rpms/uv/pull-request/18
+
+ # By default ("automatic"), uv downloads missing Python versions
+ # automatically and keeps them in the user's home directory.
+ # Disable that to make downloading opt-in, and especially
+ # to avoid unnecessarily fetching custom Python when the distro
+ # package would be preferable. Python builds can still be
+ # downloaded manually via "uv python install".
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-downloads
+ python-downloads = "manual"
+
+ # By default ("managed"), uv always prefers self-installed
+ # Python versions over the system Python, independently
+ # of versions. Since we generally expect users to use that
+ # to install old Python versions not in ::gentoo anymore,
+ # this effectively means that uv would end up preferring very
+ # old Python versions over the newer ones that are provided
+ # by the system. Default to using the system versions to avoid
+ # this counter-intuitive behavior.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-preference
+ python-preference = "system"
+ EOF
+}