commit: de08026016605a9c4cc5814c11995840ba7fb99f Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Sun Jul 20 16:09:09 2025 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Sun Jul 20 16:09:09 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de080260
dev-python/uv: Remove old Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> dev-python/uv/Manifest | 5 -- dev-python/uv/uv-0.7.13.ebuild | 174 -------------------------------------- dev-python/uv/uv-0.7.20.ebuild | 184 ----------------------------------------- dev-python/uv/uv-0.7.21.ebuild | 184 ----------------------------------------- 4 files changed, 547 deletions(-) diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index fd9355947bda..6bc2a7d2d618 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -2,12 +2,7 @@ DIST pubgrub-06ec5a5f59ffaeb6cf5079c6cb184467da06c9db.gh.tar.gz 99881 BLAKE2B 5f DIST reqwest-middleware-ad8b9d332d1773fde8b4cd008486de5973e0a3f8.gh.tar.gz 41975 BLAKE2B db42a68b8f0d592edc297462c19a34caa068464b9a5f307e8e1c1fdacde95cd08c5af0f73fa55ed62217dee63940a1d02a4322c5edb2c2c8a568a7e04efd80e6 SHA512 2dad83835c87cdd79e2a08c19b5024b3fdf30d1d8cd14e480e434612e856ecc20a5404881ff81d5793d3e9d5808ee3d59ce920312a86a100535009da43d7d46b DIST rs-async-zip-c909fda63fcafe4af496a07bfda28a5aae97e58d.gh.tar.gz 51763 BLAKE2B 59d053bc6692014d884a9247dea1b57a8789469ba2abbcc92ec21bb0022cbd74874afc463082156ab697aa6c80635019857a5d7e2dc150274e8b04d720518c36 SHA512 3a309566f4925b02496fcf19bc2865968edf6fb65082ca4079d2cee79e6b0353a1910c079f2afe656da0d0f6ddde5102052a221ea35a7dabc6d690a11218b20a DIST tl-6e25b2ee2513d75385101a8ff9f591ef51f314ec.gh.tar.gz 37106 BLAKE2B c30d1c33f6f52e2bc83823eb6319f8a3e462b7c7408fb6a08f995747857ef234f81db4135a04f9d183095fe473a4087f8f0cb89d8f87ef4400285d2ce034ec22 SHA512 4abbc4240ed129c92da8d616e27a6df0f24cdc85a0803acfdae588ca91f9e5b8d482e3ac88b2e657ff68917b1b43cef1e7ef3c887f624659b231fa5a13fcae68 -DIST uv-0.7.13-crates.tar.xz 51866888 BLAKE2B af0c831a5c6f06f4c410e817840da82c1ef47e40ae919c097bfec3144331f7bf88031057e184ab318bc051613cd4708434167cb4eff85501a73b8bf51754c02a SHA512 5b9e6debfcfbeb3128f5d86b7771d0cc466bb06f33961e598c50c92b92885a138660f3ecf22c3ce68248eeb08df9f8cfa40edc80f0a1d3cbbf6810e0e15b6a94 -DIST uv-0.7.13.gh.tar.gz 4052607 BLAKE2B 6139335f98d4c0d1c8621eee0bbf992bffdd82a6579a87b230869050123cd9c85c6e65826cdbd293bd3c4f9db6a107a5e3ea5c089953ea3e9be02381a536e7e2 SHA512 5a8b523476071c9da83eafea3a6624e48e7ff60a1a65c551d061af3ed01d852d6dafc5c3feb1458b76c6d64eaa37e038bfe82c5a962c96f87bfe1389ad811674 DIST uv-0.7.19-crates.tar.xz 58207040 BLAKE2B 0e8761c020d5931f3ed134482fac5130b27e5e8f4a713faef225264f8f4d4a734fa6ce4a1ba97c771890ebf71549c7f6e1fe2353c6e763a60081393135091049 SHA512 1264bf6604f41902367e570615e5663850c3264753f100e3dee92be7bb83e3f9a4455727dbfdaa09ec736570d99ddf342bffed14e1ae65ddc4e362a9217d28c5 DIST uv-0.7.19.gh.tar.gz 4120134 BLAKE2B 39fc4a5e9ac753f3bd328f715ca8e3e06177ffefda73eff41e565bd58e4d0c48e2f89d5e887f8efab4de73d1d51cd37c3de106d7b29e5bd2d496e993a05d078d SHA512 c86cd70422a4ac2eb549258c1ab763e12b8cc32afb30a4ca7ec926f7b40b352468c3bf9fddb14fcf4e3c043be088211c37ee43d384d5651ca39922de927a1372 -DIST uv-0.7.20-crates.tar.xz 58360308 BLAKE2B c363158cbc522420e5314017151aab27e9a839dc7cf5aa03a7388637f40ef8e1fe6a12d32a26b42c245a7ea0528be52985b8f4dd0a293dc8ceadd07a50be2b0b SHA512 928f94a44b0f81797e6a522b0530bf176107e56b5499aecfa27820696801d7b54f68bb55caa41e31c0696b4f648ea74103f6de1d29c469d13f56b34c708636c1 -DIST uv-0.7.20.gh.tar.gz 4127300 BLAKE2B ec33a3d112e15508a7f98f7824885bc9319f0ac6197eabbc6f2b16bcb3c1efcd71f5599947c0f79060cdb95e824b783f0b69da0161a2b8cde8fc35d4aaf7263b SHA512 5a99b6fc216cf0c25865832f630487ead61a7ec313416151a7aa43c4aba08d653b8e198d537d59b6f42f30d494a3c5025fc87f96f28402f69a3a01d00c2036c2 DIST uv-0.7.21-crates.tar.xz 58688248 BLAKE2B 83bbe7dd3ffe4b7ad439ba3ce56b1ce84bad15433a03e509412da67ac3f41725b0d9d5e8fc9d15860eafb60b0d0fa9061a92fa69f06080583e7e3b31bbbf17e7 SHA512 cf2925f6083439aac2a41dff4e863681c1cb88250693f870904e7b0ed7f11399539c444da1a9a257d5092b38800f63fbeda546dd9c9fa78f43d25fb1f5c905da -DIST uv-0.7.21.gh.tar.gz 4149924 BLAKE2B 8787ec9f3b38e643919f2b3aa8ece5fd27429306933e70b9c9c5dd21f98e828da63475423f658302149bb26682b84b8821ef987e5d952858f201074d2fe0ba13 SHA512 34e7df50d8e306bd616d203846e96ad76adb0d73cf29f68fc26a79ca5bc85448aceacb8ea2b75b29ac77475ee02ba10f3ec456a43567afd871ee0c1c4b27367d DIST uv-0.7.22.gh.tar.gz 4157975 BLAKE2B 8268476d92fb7241273e31ff4b7c996c22dea3c6bb3e688c4d9e69bf3cc1562dd8dcad3bd4167c97fb2df51e6291d9ba29b9ea99b73d11ec73f994fceab2b629 SHA512 e1c4f7ba7a2c679c87840cc4a1b56bb7c4d0ecdbe14347052f96af90a4ce869627a0659ab9266b433a39f4b600711d2c64f88bd38a7d477017fc9c596194354f diff --git a/dev-python/uv/uv-0.7.13.ebuild b/dev-python/uv/uv-0.7.13.ebuild deleted file mode 100644 index 43c5ecb01801..000000000000 --- a/dev-python/uv/uv-0.7.13.ebuild +++ /dev/null @@ -1,174 +0,0 @@ -# Copyright 2024-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CRATES=" -" - -declare -A GIT_CRATES=( - [async_zip]='https://github.com/charliermarsh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.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 Boost-1.0 - ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ppc ppc64 ~riscv x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - 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 -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - 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 -} diff --git a/dev-python/uv/uv-0.7.20.ebuild b/dev-python/uv/uv-0.7.20.ebuild deleted file mode 100644 index 1cec841d381f..000000000000 --- a/dev-python/uv/uv-0.7.20.ebuild +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2024-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CRATES=" -" - -declare -A GIT_CRATES=( - [async_zip]='https://github.com/charliermarsh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-middleware' - [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-retry' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.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 Boost-1.0 - CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 - ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - 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 - - # replace upstream crate substitution with our crate substitution, sigh - local pkg - for pkg in reqwest-middleware reqwest-retry; do - local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die) - sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die - done - - # 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 -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - 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 -} diff --git a/dev-python/uv/uv-0.7.21.ebuild b/dev-python/uv/uv-0.7.21.ebuild deleted file mode 100644 index 7bf50e6c7f2a..000000000000 --- a/dev-python/uv/uv-0.7.21.ebuild +++ /dev/null @@ -1,184 +0,0 @@ -# Copyright 2024-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CRATES=" -" - -declare -A GIT_CRATES=( - [async_zip]='https://github.com/astral-sh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' - [pubgrub]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%' - [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-middleware' - [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;ad8b9d332d1773fde8b4cd008486de5973e0a3f8;reqwest-middleware-%commit%/reqwest-retry' - [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' - [version-ranges]='https://github.com/astral-sh/pubgrub;06ec5a5f59ffaeb6cf5079c6cb184467da06c9db;pubgrub-%commit%/version-ranges' -) - -RUST_MIN_VER="1.85.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 Boost-1.0 - CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 - ZLIB -" -# ring crate -LICENSE+=" openssl" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" -IUSE="test" -RESTRICT="test" -PROPERTIES="test_network" - -DEPEND=" - app-arch/bzip2:= - app-arch/xz-utils:= - app-arch/zstd:= -" -RDEPEND=" - ${DEPEND} -" -BDEPEND=" - 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 - - # replace upstream crate substitution with our crate substitution, sigh - local pkg - for pkg in reqwest-middleware reqwest-retry; do - local dep=$(grep "^${pkg}" "${ECARGO_HOME}"/config.toml || die) - sed -i -e "/\[patch\.crates-io\]/,\$s;^${pkg}.*$;${dep};" Cargo.toml || die - done - - # 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 -} - -src_configure() { - local myfeatures=( - git - pypi - python - ) - - cargo_src_configure --no-default-features -} - -src_compile() { - cd crates/uv || die - cargo_src_compile -} - -src_test() { - # work around https://github.com/astral-sh/uv/issues/4376 - local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} - local -x COLUMNS=100 - local -x PYTHONDONTWRITEBYTECODE= - # fix tests failing because of our config - local -x XDG_CONFIG_DIRS=${T} - - cd crates/uv || die - cargo_src_test --no-fail-fast -} - -src_install() { - cd crates/uv || die - cargo_src_install - - 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 -}
