guru/gui-apps/ReGreet/ReGreet-0.1.1-r10.ebuild
Takuya Wakazono eb317ddb43
*/*: update for slotted Rust
guru version of this commit:
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01ba4dc61965ef7658a24728841c04c9a1ce4871

Closes: https://bugs.gentoo.org/943170
Closes: https://bugs.gentoo.org/943223
Closes: #260
Signed-off-by: Takuya Wakazono <pastalian46@gmail.com>
2024-11-12 22:17:16 +09:00

316 lines
6.1 KiB
Bash

# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
addr2line@0.24.2
adler2@2.0.0
ahash@0.8.11
aho-corasick@1.1.3
android-tzdata@0.1.1
android_system_properties@0.1.5
anstream@0.6.15
anstyle-parse@0.2.5
anstyle-query@1.1.1
anstyle-wincon@3.0.4
anstyle@1.0.8
anyhow@1.0.89
async-trait@0.1.83
autocfg@1.4.0
backtrace@0.3.74
bitflags@1.3.2
bumpalo@3.16.0
bytes@1.7.2
cairo-rs@0.16.7
cairo-sys-rs@0.16.3
cc@1.1.28
cfg-expr@0.15.8
cfg-if@1.0.0
chrono@0.4.38
clap@4.5.19
clap_builder@4.5.19
clap_derive@4.5.18
clap_lex@0.7.2
colorchoice@1.0.2
const_format@0.2.33
const_format_proc_macros@0.2.33
core-foundation-sys@0.8.7
crc32fast@1.4.2
crossbeam-channel@0.5.13
crossbeam-utils@0.8.20
deranged@0.3.11
derivative@2.2.0
equivalent@1.0.1
field-offset@0.3.6
file-rotate@0.7.6
flate2@1.0.34
flume@0.10.14
fragile@2.0.0
futures-channel@0.3.31
futures-core@0.3.31
futures-executor@0.3.31
futures-io@0.3.31
futures-macro@0.3.31
futures-sink@0.3.31
futures-task@0.3.31
futures-util@0.3.31
futures@0.3.31
gdk-pixbuf-sys@0.16.3
gdk-pixbuf@0.16.7
gdk4-sys@0.5.5
gdk4@0.5.5
getrandom@0.2.15
gimli@0.31.1
gio-sys@0.16.3
gio@0.16.7
glib-macros@0.16.8
glib-sys@0.16.3
glib@0.16.9
glob@0.3.1
gobject-sys@0.16.3
graphene-rs@0.16.3
graphene-sys@0.16.3
greetd_ipc@0.9.0
gsk4-sys@0.5.5
gsk4@0.5.5
gtk4-macros@0.5.6
gtk4-sys@0.5.5
gtk4@0.5.5
hashbrown@0.12.3
hashbrown@0.13.2
hashbrown@0.15.0
heck@0.4.1
heck@0.5.0
hermit-abi@0.3.9
iana-time-zone-haiku@0.1.2
iana-time-zone@0.1.61
indexmap@1.9.3
indexmap@2.6.0
is_terminal_polyfill@1.70.1
itoa@1.0.11
js-sys@0.3.70
lazy_static@1.5.0
libc@0.2.159
lock_api@0.4.12
log@0.4.22
lru@0.9.0
memchr@2.7.4
memoffset@0.9.1
miniz_oxide@0.8.0
mio@1.0.2
nanorand@0.7.0
nom8@0.2.0
nu-ansi-term@0.46.0
num-conv@0.1.0
num-traits@0.2.19
num_threads@0.1.7
object@0.36.5
once_cell@1.20.2
overload@0.1.1
pango-sys@0.16.3
pango@0.16.5
pin-project-internal@1.1.6
pin-project-lite@0.2.14
pin-project@1.1.6
pin-utils@0.1.0
pkg-config@0.3.31
powerfmt@0.2.0
proc-macro-crate@1.3.1
proc-macro-error-attr@1.0.4
proc-macro-error@1.0.4
proc-macro2@1.0.86
pwd@1.4.0
quote@1.0.37
regex-automata@0.4.8
regex-syntax@0.8.5
regex@1.11.0
relm4-macros@0.5.1
relm4@0.5.1
rustc-demangle@0.1.24
rustc_version@0.4.1
ryu@1.0.18
scopeguard@1.2.0
semver@1.0.23
serde@1.0.210
serde_derive@1.0.210
serde_json@1.0.128
serde_spanned@0.6.8
sharded-slab@0.1.7
shlex@1.3.0
slab@0.4.9
smallvec@1.13.2
socket2@0.5.7
spin@0.9.8
strsim@0.11.1
syn@1.0.109
syn@2.0.79
system-deps@6.2.2
target-lexicon@0.12.16
thiserror-impl@1.0.64
thiserror@1.0.64
thread_local@1.1.8
time-core@0.1.2
time-macros@0.2.18
time@0.3.36
tokio@1.40.0
toml@0.6.0
toml@0.8.19
toml_datetime@0.5.1
toml_datetime@0.6.8
toml_edit@0.18.1
toml_edit@0.19.15
toml_edit@0.22.22
tracing-appender@0.2.3
tracing-attributes@0.1.27
tracing-core@0.1.32
tracing-log@0.2.0
tracing-subscriber@0.3.18
tracing@0.1.40
tracker-macros@0.2.2
tracker@0.2.2
unicode-ident@1.0.13
unicode-xid@0.2.6
utf8parse@0.2.2
valuable@0.1.0
version-compare@0.2.0
version_check@0.9.5
wasi@0.11.0+wasi-snapshot-preview1
wasm-bindgen-backend@0.2.93
wasm-bindgen-macro-support@0.2.93
wasm-bindgen-macro@0.2.93
wasm-bindgen-shared@0.2.93
wasm-bindgen@0.2.93
winapi-i686-pc-windows-gnu@0.4.0
winapi-x86_64-pc-windows-gnu@0.4.0
winapi@0.3.9
windows-core@0.52.0
windows-sys@0.52.0
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
winnow@0.5.40
winnow@0.6.20
zerocopy-derive@0.7.35
zerocopy@0.7.35
"
inherit cargo readme.gentoo-r1 tmpfiles
DESCRIPTION="A clean and customizable GTK-based greetd greeter written in Rust"
HOMEPAGE="https://github.com/rharish101/ReGreet"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/rharish101/${PN}.git"
else
SRC_URI="
https://github.com/rharish101/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
${CARGO_CRATE_URIS}
"
KEYWORDS="~amd64"
fi
LICENSE="GPL-3"
SLOT="0"
RDEPEND="
|| ( gui-wm/sway gui-wm/cage )
systemd? ( sys-apps/systemd[sysv-utils] )
openrc? ( sys-apps/openrc[sysv-utils] )
gui-libs/gtk
gui-libs/greetd
dev-libs/glib
media-libs/graphene
x11-libs/cairo
x11-libs/gdk-pixbuf
x11-libs/pango
"
IUSE="systemd openrc"
PATCHES="${FILESDIR}/ReGreet-0.1.1-cargo-lock-fix.diff"
QA_FLAGS_IGNORED="/usr/bin/regreet"
src_unpack() {
if [[ ${PV} == 9999 ]]; then
git-r3_src_unpack
cargo_live_src_unpack
else
unpack "${P}.tar.gz"
cargo_src_unpack
fi
}
src_configure() {
local myfeatures=(
gtk4_8
)
cargo_src_configure
}
src_prepare() {
default
if use systemd; then
sed -i 's/greeter/greetd/g' "${S}/systemd-tmpfiles.conf" || die
fi
}
src_compile() {
cargo_gen_config
# Export default configuration
export RUSTUP_TOOLCHAIN=stable
export GREETD_CONFIG_DIR="/etc/greetd"
export CACHE_DIR="/var/cache/regreet"
export LOG_DIR="/var/log/regreet"
export SESSION_DIRS="/usr/share/xsessions:/usr/share/wayland-sessions"
# Require sysv-utils useflag enable on the init system
export REBOOT_CMD="reboot"
export POWEROFF_CMD="poweroff"
cargo_src_compile
}
src_install() {
cargo_src_install
if use systemd; then
newtmpfiles "${S}/systemd-tmpfiles.conf" regreet.conf
elif use openrc; then
keepdir /var/log/regreet
fowners greetd:greetd /var/log/regreet
fperms 0755 /var/log/regreet
keepdir /var/cache/regreet
fowners greetd:greetd /var/cache/regreet
fperms 0755 /var/cache/regreet
fi
# Install ReGreet template config file as a doc
dodoc "${S}/regreet.sample.toml"
# Create README.gentoo doc file
readme.gentoo_create_doc
elog "ReGreet sample config file available on: /usr/share/doc/${P}/regreet.sample.toml.bz2"
elog "To use decompress it to /etc/greetd/regreet.toml"
}
src_post_install() {
if use systemd; then
# Run systemd-tmpfiles to create the log and cache folder
tmpfiles_process regreet.conf
fi
# Print README.gentoo file in the elog
readme.gentoo_print_elog
}