commit: 141c1fe6f88dc184e5f04f6c358aeccaeec207fd Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org> AuthorDate: Tue Mar 10 17:24:12 2026 +0000 Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org> CommitDate: Tue Mar 10 17:24:35 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=141c1fe6
app-admin/sudo-rs: add 0.2.13 Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org> app-admin/sudo-rs/Manifest | 2 + app-admin/sudo-rs/sudo-rs-0.2.13.ebuild | 122 ++++++++++++++++++++++++++++++++ 2 files changed, 124 insertions(+) diff --git a/app-admin/sudo-rs/Manifest b/app-admin/sudo-rs/Manifest index e83599ed7afe..29254a3ccf6a 100644 --- a/app-admin/sudo-rs/Manifest +++ b/app-admin/sudo-rs/Manifest @@ -1,5 +1,7 @@ DIST glob-0.3.3.crate 22861 BLAKE2B 34434d0ee1d50d0453f7294cb793ff123415feda605b09a2634708646fd91584db6b77a51d38c20ec89d8e3b36b136d071d30020f6325cbffbce736403c68803 SHA512 159a5de81cd59c472cd5705a50f140d29adb64ef10d8dd4bab77f9a44cce33933a779ecd12b399edffaac551fd935a3aa74ede4c9aa9b3e5212d220b3fe22219 DIST libc-0.2.178.crate 783720 BLAKE2B 72f5fecacf0494b3962ff893d647155af88e9942b14d110e521b25e5d65d95d41dc00f83431b82632a53c6e0ae7fd537d018d7bf29df65d5e56b908a893d77d0 SHA512 968b954e2edde88d14135decd9eaadc31ca1aad80529a6696591c06c4414d615c97ce0873f77bfebe08b862faa5f3cb79a6648ab90734d462bef06e06ea43dde DIST libc-0.2.180.crate 812207 BLAKE2B 086681e1f488aa2ab8a477655e01bc27dc6c578fbf9eb2bb429828164825a5d450dee9bf1bc38afc8e1be5d849eddf384db75b9f4d3c64a0fde6cc37919c1b80 SHA512 5427ac2a7c03d02f14acc66c3a187fbb4e336a88e8cccf7f8281fe95f958b845c0205ec47aac2f6ba6ab8b8c4b5cd0d943205c3f78ad2830d44c3b7779c317ef +DIST libc-0.2.183.crate 816918 BLAKE2B d0c26ca25b0808575aa540a5f0f43acaaa5a972269c5f101122538a1733b37b6aac3696a0d7298fe16974b06efb0b92072252eef40b17b977af24cc857963daf SHA512 017986d4fa8c362f8900c1c82c7381066382a7272cfe114243b8d47637d042c87b5ebef7881cf46727e00e541a0a8270a32db694ce8d78372672cf08224a90b2 DIST sudo-rs-0.2.11.tar.gz 1183217 BLAKE2B 84afee2246e23e77b19f05b1fa46ed3c11b559585cb3fe007b530f3bcbb65b36331273128d6a0cecc77261486644bca79567ec060eda3117cbdcf4d0f4af689c SHA512 e1f90f74cf706f216d65416db91311039fa8e8b82fa337935f8a28b4a0258d7b99a3d326ea50111fae610472cc2333d1f876d99bb816a9fdab65b999bee8bf50 DIST sudo-rs-0.2.12.tar.gz 1187822 BLAKE2B e131e12ad33cd252914912b0c218778656899932a4ee8728e99ae1b79033370adf83f177c721252770ea34297ce823f1e3237e5380431d2d12befa3adf705722 SHA512 0e8665dfed4155f6a4b626bce7e5f0d8a5336e03b480633ba71a4cb27b95d16e224b8cc9a3dc2242eeaa57813196772355ef58ee95ef520f8be16fe90345fdb9 +DIST sudo-rs-0.2.13.tar.gz 1202390 BLAKE2B a7ac2346061cd73f3e72798388d9f9524a0b61ec7a77c58689d97feae56c6a730e2d8fcbccccceb4d6e09dd8ae4b3eace2a7186a98c9929eee35099c00f668d3 SHA512 1dfdcae59a3bf2d53f20d90fbfc138a14287396338ba3f346a000c6c8e1446e24eaa19949287c139c51711add600bf2377d246ee10cce0e1949faaac0a2c168f diff --git a/app-admin/sudo-rs/sudo-rs-0.2.13.ebuild b/app-admin/sudo-rs/sudo-rs-0.2.13.ebuild new file mode 100644 index 000000000000..3c4afe23dbdb --- /dev/null +++ b/app-admin/sudo-rs/sudo-rs-0.2.13.ebuild @@ -0,0 +1,122 @@ +# Copyright 2025-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Autogenerated by pycargoebuild 0.15.0 + +EAPI=8 + +CRATES=" + [email protected] + [email protected] +" + +RUST_MIN_VER="1.85.0" + +inherit pam cargo + +DESCRIPTION="A memory safe implementation of sudo and su." +HOMEPAGE="https://github.com/trifectatechfoundation/sudo-rs" +SRC_URI=" + https://github.com/trifectatechfoundation/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz + ${CARGO_CRATE_URIS} +" + +LICENSE="|| ( Apache-2.0 MIT )" +# Dependent crate licenses +LICENSE+=" || ( Apache-2.0 MIT )" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +IUSE="pam su system-names" + +RDEPEND=" + system-names? ( + !app-admin/sudo + su? ( + !sys-apps/util-linux[su] + !sys-apps/shadow[su] + pam? ( sys-apps/util-linux[pam] ) + ) + ) +" + +QA_FLAGS_IGNORED="usr/bin/.*" + +DOCS=( + README.md + SECURITY.md + CHANGELOG.md +) + +PATCHES=( + # disable tests that require root access + "${FILESDIR}/sudo-rs-0.2.8-tests.patch" +) + +src_prepare() { + local -a targets + local target + + if ! use system-names; then + find "${S}" -name '*.rs' -or -name 'Cargo.toml' \ + | xargs sed -r -e 's:"(sudo|visudo|su|su-l)":"\1-rs": ; s:"sudo-i":"sudo-rs-i":' -i || die + + readarray -t targets < <(find src/bin -name '*.rs') + + for target in "${targets[@]}"; do + mv "${target}" "${target//.rs/-rs.rs}" || die + done + + elif ! use su; then + find "${S}" -name '*.rs' -or -name 'Cargo.toml' \ + | xargs sed -r -e 's:"(su|su-l)":"\1-rs":' -i || die + + readarray -t targets < <(find src/bin -name '*.rs' -and -not -name '*sudo*') + + for target in "${targets[@]}"; do + rm "${target}" || die + done + fi + + default +} + +src_install() { + cargo_src_install + + local ext=$(usex system-names '' '-rs') + local su_ext=$(usex su "${ext}" '-rs') + local -a binaries=( sudo${ext} ) + use su && binaries+=( su${su_ext} ) + + dodoc "${DOCS[@]}" + + local man dest + for man in docs/man/*.?.man; do + dest="${man##*/}" + dest="${dest%.man}" + if [[ ${dest#.*} == su.* ]]; then + dest="${dest/./${su_ext}.}" + else + dest="${dest/./${ext}.}" + fi + newman "${man}" "${dest}" + done + + fperms 4755 $(printf -- '/usr/bin/%s\n' "${binaries[@]}") + dosym sudo${ext} /usr/bin/sudoedit${ext} + + insinto /etc + doins "${FILESDIR}"/sudoers-rs + + keepdir /etc/sudoers.d + + if use pam; then + pamd_mimic system-auth sudo${ext} auth account session + pamd_mimic system-auth sudo${ext}-i auth account session + + if ! use system-names && use su; then + pamd_mimic system-auth su${ext}-l auth account session + fi + fi +}
