app-admin/sudo-rs: new package

Signed-off-by: Timur Kuprava <kupravagoodman@proton.me>
This commit is contained in:
Timur Kuprava
2025-05-17 21:51:04 +03:00
parent 153b2d71ec
commit af185be91f
3 changed files with 97 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
DIST diff-0.1.13.crate 46216 BLAKE2B 27ceeafb7afd45eabbbe22d1f05667f513a6062762e6b77122e267282a8f2a0bf96384989508bf10c9e13af4856bc9f58f09b10055d6fc2c32681e288ffa9f9e SHA512 45e259c9fe7c23bd9e9454891b42d4aef6d681d35ee039d21fdb05ae9ed5856161a40f29889e7880ac2a2daf85f1b7d752d213b4a99a1a74ed2682c18a3ae7fb
DIST glob-0.3.2.crate 22359 BLAKE2B 564b72e2738cce5311aee12d8d6147631cb571f7b96d8d3823098d3dd449bcc23ffed5a6584f8979402bef95536b0e73fe9772f273295a0079782b9f7d88d19f SHA512 d15389441e337e3fab9c30102fe7b4b1b3e68d8cbb5d14162d2fd7e7d01a9812b2d6d6d2a24a60116418be41e2075e70becd6994c13b34365d512521e8debb02
DIST libc-0.2.172.crate 791646 BLAKE2B 3a6eb0eba1e31cf89ac792a8e667c0f68b2a0e62502710ffe77c2b06321103a30ffdc4516c0a91fd3ff44508d5304dfb04ab919bd3e723e34c66b560a20e7f86 SHA512 7bfe400ee65c1b7e540fd19a9b7eb1429a66863d5e94ee7caa83a227d19a4143316d3b401013fb7f88c8e4cdb1a40cfbd58826597c8e23799e02e29553b67e34
DIST log-0.4.27.crate 48120 BLAKE2B 09a2159032baaff7eede480062da30ffec1c1d4c77e76288467941dc13722ab1566742c1821326ca5f8c2f9f7597099e235213ecbf883fd93daf5ae9ad5ee981 SHA512 8d57219b76c8a25bae193e4d16d4d03bf0b8523e1ed3bdc80a692cabe00fc0359ae9bc3be989f04476ecda7187f27e4ad23fe260a96fcefc819af00fe12a1151
DIST pretty_assertions-1.4.1.crate 78952 BLAKE2B 016df9fb2f24304b68a6bf4fc8e144387f07a5a15fc8d92757cffad11b4a00e74559abf597d4ac8619a3dfea705c82df1b8c8620c5f32c61ea8f212fd9cbf9f5 SHA512 474f77c61cc17bbe9914c56b98a80e5918450205827cd059d693c2d603ff61a0897cad25dde645cb495200e61ddc14333d15eb8bf2de090a2eb68deeb9aec8b0
DIST sudo-rs-0.2.6.tar.gz 712076 BLAKE2B 28a37d09cac2308753563ea96bce2df2c3184da879c058fa122c468ac76583e219dd5bbba74f97d6850232b8e756438de08f5ec14485fc0a84a64b00953ba81d SHA512 f713812de7783f72a646403fa2b26f6be46bc2cb5d69e42ef94b7348fe4dc1798349da8cc14574a963713faef8e5a3813d439297c9c443e6465c47a891515745
DIST yansi-1.0.1.crate 75497 BLAKE2B c0d396c93a733ed6ec12aca3385d816f39b1f1fbed75da460f491f0cbfc30ba462842ebd1627fa8e5d2b7c0f37913a23747e5f5e23df1cb7c85d965e6c37159b SHA512 182c8c6c60a30a727d8f8b90bbf0527d91fa8ae9d8eb20e5414614b43ee6dc532f4b19241adbfb9299cb0004b39fe627036269b60b0c3860d9e1ea4413aca541

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>kupravagoodman@proton.me</email>
<name>Timur Kuprava</name>
</maintainer>
<upstream>
<bugs-to>https://github.com/trifectatechfoundation/sudo-rs/issues</bugs-to>
<remote-id type="github">trifectatechfoundation/sudo-rs</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -0,0 +1,78 @@
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
RUST_MIN_VER="1.74.0"
CRATES="
diff@0.1.13
glob@0.3.2
libc@0.2.172
log@0.4.27
pretty_assertions@1.4.1
yansi@1.0.1
"
inherit cargo pam
DESCRIPTION="A memory safe implementation of sudo"
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"
SLOT="0"
KEYWORDS="~amd64"
IUSE="pam +man"
DEPEND="
!app-admin/sudo
pam? ( sys-libs/pam )
"
RDEPEND="
${DEPEND}
virtual/editor
pam? ( sys-auth/pambase )
"
BDEPEND="
man? ( virtual/pandoc )
"
REQUIRED_USE="
?? ( pam )
"
DOCS=( README.md CHANGELOG.md )
src_compile() {
cargo_src_compile || die
}
src_install() {
dobin "target/${RUST_TARGET}/release/sudo" || die
dobin "target/${RUST_TARGET}/release/visudo" || die
fowners 0:0 /usr/bin/sudo || die
fperms 4755 /usr/bin/sudo || die
fowners 0:0 /usr/bin/visudo || die
fperms 4755 /usr/bin/visudo || die
if use man ; then
pandoc docs/man/sudo.8.md -s -t man -o docs/man/sudo.8
pandoc docs/man/visudo.8.md -s -t man -o docs/man/visudo.8
doman docs/man/sudo.8
doman docs/man/visudo.8
fi
pamd_mimic system-auth sudo auth account session
pamd_mimic system-auth sudo-i auth account session
}
pkg_postinst() {
einfo "*******************"
ewarn "Sudo-rs needs the sudoers configuration file."
ewarn "The sudoers configuration file will be loaded from /etc/sudoers-rs if that file exists,"
ewarn "otherwise the original /etc/sudoers location will be used."
}