Apocrypha

protonup-rs-0.12.1guru

# Copyright 2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

# Autogenerated by pycargoebuild 0.15.1

# update using this command:
# find -name 'Cargo.toml' -exec dirname {} \; |
# sort | tail -n+2 | xargs pycargoebuild -i ${P}.ebuild

EAPI=8

RUST_MIN_VER="1.87.0"

# apply-crates-fixes start
LLVM_COMPAT=( 22 )
# apply-crates-fixes end
CRATES="
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]+wasi-snapshot-preview1
	[email protected]+wasi-0.2.9
	[email protected]+wasi-0.3.0-rc-2026-01-06
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]
	[email protected]+zstd.1.5.7
	[email protected]
"

# apply-crates-fixes start
inherit llvm-r2
# apply-crates-fixes end
inherit cargo

DESCRIPTION="TUI Program for Custom Proton Download and installation written in rust"
HOMEPAGE="https://github.com/auyer/Protonup-rs"

SRC_URI="
	${CARGO_CRATE_URIS}
	https://github.com/auyer/Protonup-rs/archive/v${PV}.tar.gz -> ${P}.tar.gz
"

S="${WORKDIR}/Protonup-rs-${PV}"

LICENSE="GPL-3"
# Dependent crate licenses
LICENSE+="
	Apache-2.0 BSD CDLA-Permissive-2.0 ISC MIT MPL-2.0 UoI-NCSA
	Unicode-3.0 ZLIB
"
SLOT="0"
KEYWORDS="~amd64"
RESTRICT="mirror"
# apply-crates-fixes start
DEPEND="
	>=app-arch/zstd-1.5.7
	$(llvm_gen_dep 'llvm-core/clang:${LLVM_SLOT}')
"
RDEPEND="
	>=app-arch/zstd-1.5.7
"
# apply-crates-fixes end

QA_FLAGS_IGNORED="usr/bin/${PN}"

DOCS=( README.md docs )

# apply-crates-fixes start
src_compile(){
	export ZSTD_SYS_USE_PKG_CONFIG=1 # fix for zstd-sys crate
	CUSTOM_LIBFUZZER_PATH="$(clang --print-file-name "libclang_rt.fuzzer-${CHOST%%-*}.a" )"
	[[ -f "${CUSTOM_LIBFUZZER_PATH}" ]] || die "trying to set CUSTOM_LIBFUZZER_PATH failed"
	export CUSTOM_LIBFUZZER_PATH
	export AWS_LC_SYS_CFLAGS="${CFLAGS} -O0"
	# aws-lc-sys bundles aws-lc, which bundles quite a lot of dependencies, jitterentropy among them
	# https://github.com/aws/aws-lc-rs/issues/936 -> "Please add support to use system-provided aws-lc library"
	# jitterentropy can not be built without -O0, the script does not have the logic to unbundle dependencies right now
	# but what it can do is use set the AWS_LC_SYS_CFLAGS var to override CFLAGS
	cargo_src_compile
}
# apply-crates-fixes end

src_test(){
	local CARGO_SKIP_TESTS=(
		'downloads::tests::test_get_release'
		'downloads::tests::test_list_releases'
	)
	cargo_src_test
}

src_install(){
	cargo_src_install --path "${S}/${PN}"
	einstalldocs
}