View Raw Ebuild
# Copyright 2017-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Autogenerated by pycargoebuild 0.13.2
EAPI=8
CRATES="
async-trait@0.1.89
bitflags@2.11.0
bytes@1.11.1
cfg-if@1.0.4
cfg_aliases@0.2.1
enquote@1.1.0
errno@0.3.14
getopts@0.2.24
itoa@1.0.18
libc@0.2.183
memchr@2.8.0
mio@1.2.0
nix@0.31.2
pam-sys@0.5.6
pin-project-lite@0.2.17
proc-macro2@1.0.106
quote@1.0.45
rpassword@7.4.0
rtoolbox@0.0.3
serde@1.0.228
serde_core@1.0.228
serde_derive@1.0.228
serde_json@1.0.149
signal-hook-registry@1.4.8
socket2@0.6.3
syn@2.0.117
thiserror-impl@1.0.69
thiserror-impl@2.0.18
thiserror@1.0.69
thiserror@2.0.18
tokio-macros@2.6.1
tokio@1.50.0
unicode-ident@1.0.24
unicode-width@0.2.2
wasi@0.11.1+wasi-snapshot-preview1
windows-link@0.2.1
windows-sys@0.52.0
windows-sys@0.59.0
windows-sys@0.61.2
windows-targets@0.52.6
windows_aarch64_gnullvm@0.52.6
windows_aarch64_msvc@0.52.6
windows_i686_gnu@0.52.6
windows_i686_gnullvm@0.52.6
windows_i686_msvc@0.52.6
windows_x86_64_gnu@0.52.6
windows_x86_64_gnullvm@0.52.6
windows_x86_64_msvc@0.52.6
zmij@1.0.21
"
inherit cargo optfeature pam systemd
DESCRIPTION="ipc based login daemon"
HOMEPAGE="https://git.sr.ht/~kennylevinsen/greetd/"
SRC_URI="https://git.sr.ht/~kennylevinsen/greetd/archive/${PV}.tar.gz -> ${P}.tar.gz
${CARGO_CRATE_URIS}
"
LICENSE="GPL-3+"
# Dependent crate licenses
LICENSE+=" Apache-2.0 MIT Unicode-DFS-2016 Unlicense"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
IUSE="man"
DEPEND="
acct-user/greetd
sys-auth/pambase
sys-libs/pam
"
RDEPEND="${DEPEND}"
BDEPEND="man? ( app-text/scdoc )"
QA_FLAGS_IGNORED="usr/bin/.*greet.*"
PATCHES=(
"${FILESDIR}/${PN}-0.6.1-correct_user_config_toml.patch"
"${FILESDIR}/${PN}-refactor-upgrade-dependencies-and-migrate-to-owned-f.patch"
)
src_compile() {
cargo_src_compile
if use man; then
scdoc <./man/agreety-1.scd >./agreety.1 || die
scdoc <./man/greetd-1.scd >./greetd.1 || die
scdoc <./man/greetd-5.scd >./greetd.5 || die
scdoc <./man/greetd-ipc-7.scd >./greetd-ipc.7 || die
fi
}
src_install() {
# if USE=debug, install binaries from the debug directory; else
# install binaries from the release directory
# https://bugs.gentoo.org/889052
dobin target/$(usex debug debug release)/{agreety,fakegreet,greetd}
insinto /etc/greetd
doins config.toml
systemd_dounit greetd.service
if use man; then
doman agreety.1 greetd.1 greetd.5 greetd-ipc.7
fi
newpamd - greetd <<-EOF
# newer greetd errors when no greetd-specific pam.d config is
# available
# workaround by just using the fallback that it was already
# using anyway
auth include login
account include login
password include login
session include login
EOF
}
pkg_postint() {
optfeature "eye-candy gtk based greeter" gui-apps/gtkgreet
optfeature "simplistic but sleek terminal greeter" gui-apps/tuigreet
}