-
Notifications
You must be signed in to change notification settings - Fork 116
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Daichi Yamamoto <[email protected]>
- Loading branch information
Showing
5 changed files
with
148 additions
and
119 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
DIST ly-1.0.1.tar.gz 64004 BLAKE2B daf90c17ab467d71ba24f65ff42a36ca008c20a1b0706e158a580b1ee3c11bf0d93dacb3531359797d3c5cf2290daf792ef9c0621bbab8993b530536b2d08376 SHA512 a72ee6cda8849b2a7c249ba3abc5159e1f5ac9c220732513a331d50afef32ed6be04f7452f2995bc5783181b2f627d8a2299aad4504af946d7384d905b9727ca | ||
DIST zig-clap.tar.gz 22722 BLAKE2B 2a157daf2551e78fe441322f7ad071fb8fc44ca66e8400b54ab1f061197334b766460d2db6f78d4d9f74287fe0e45f327efff9b502da3f8846d18290ed3bf763 SHA512 5ea19e67ab0c6b4a2ea439d45ae578c68eff6e62275f7901ef94984fad3b0502cb596c656aa4dc5aae5ebfca75ef3d4f6e854d6c2899984b073d6b2a28750a88 | ||
DIST zigini.tar.gz 5529 BLAKE2B 956c6d66e5a1040effd0ae465941c1740a16b66142414bc83143c3607a79d84103079858a8bd74865ea5340369baf684dcbfef44fddccf84774499e721713f70 SHA512 a90fe54560775bc96e7d97ccdc1bb45d3cd4becae0c28c0905a030e19956dc0c6a97f1207671a7c9759a226b055a62505f3c7440bea4926292cce53eabb5972c | ||
DIST ziglibini.tar.gz 6834 BLAKE2B 479f947b40c4e99340977bb5b5191ccaff5d47515d7dc7f0fdd1277883079cddcb4574929df03d5f0e135a9732b950f2c171809c62a6d73196ef44cb38b1d4d5 SHA512 3b3a604e7e4f26f4277a0aa0e347996bd059a45fc2ae8baad5d7b133698cdf972b889fe80d6032f1ad42a362314290177f014d2866627a48da7dd03e112f3bce | ||
DIST ly-1.0.2.tar.gz 64603 BLAKE2B a1521be4d1191c0b527867e77e6968142062948b2950ef96e3ba4c90bd14386fca4248ed9942959b530c17c1a0dfc3ffbec24b1275d70af5da9fbd6fa4f41da2 SHA512 9431abcb6d3662e74a39b6ba52f2d12de83607764c8cd6e41dda0ae0c71c9618596711e9dd1f519a61835a63ea6dda5bc083509a9757d232213ddf74df3513b7 | ||
DIST zig-clap-8c98e6404b22aafc0184e999d8f068b81cc22fa1.tar.gz 22722 BLAKE2B 2a157daf2551e78fe441322f7ad071fb8fc44ca66e8400b54ab1f061197334b766460d2db6f78d4d9f74287fe0e45f327efff9b502da3f8846d18290ed3bf763 SHA512 5ea19e67ab0c6b4a2ea439d45ae578c68eff6e62275f7901ef94984fad3b0502cb596c656aa4dc5aae5ebfca75ef3d4f6e854d6c2899984b073d6b2a28750a88 | ||
DIST zigini-0bba97a12582928e097f4074cc746c43351ba4c8.tar.gz 5797 BLAKE2B e5c4e20e7d23bb1096c9012acd19898fb0450d33c0ee78200ee817c3658d3cad048fe6a475977fa62ad0ba254d4a78b3b1181203fa7faf81b70ff75115552681 SHA512 7d2f2ccc9bf99cb2848c1059c34cd2163d48d6fa0a090f2c03cd92e2441dc0029868e28ac23a8a310941f969c5270ad26b5768a2a303bdccf35803ac027e7a88 | ||
DIST ziglibini-e18d36665905c1e7ba0c1ce3e8780076b33e3002.tar.gz 7398 BLAKE2B e8f8a026c876d120340f57beb4fda3fba396fe4f1f0aa5515f76399a68291087aa0909dde69139e4153a60587e37dd8b4ba94c5f481ce42c60a0cfee5f31cbe6 SHA512 3d18368d5e0e06e24a580698bec9eb35d85dfc528d4b24a354e41b402b31c06a547a3e85d59254781b1e0eafe13c1db23bebbd4a531c6a6a789af2e833e5a693 |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
# Copyright 2024 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=8 | ||
|
||
inherit edo pam systemd | ||
|
||
DESCRIPTION="Ly - a TUI display manager" | ||
HOMEPAGE="https://github.com/fairyglade/ly" | ||
|
||
CLAP="8c98e6404b22aafc0184e999d8f068b81cc22fa1" | ||
ZIGINI="0bba97a12582928e097f4074cc746c43351ba4c8" | ||
ZIGLIBINI="e18d36665905c1e7ba0c1ce3e8780076b33e3002" | ||
|
||
SRC_URI=" | ||
https://github.com/fairyglade/ly/archive/v${PV}/${P}.tar.gz | ||
https://github.com/Hejsil/zig-clap/archive/${CLAP}.tar.gz -> zig-clap-${CLAP}.tar.gz | ||
https://github.com/Kawaii-Ash/zigini/archive/${ZIGINI}.tar.gz -> zigini-${ZIGINI}.tar.gz | ||
https://github.com/ziglibs/ini/archive/${ZIGLIBINI}.tar.gz -> ziglibini-${ZIGLIBINI}.tar.gz | ||
" | ||
|
||
LICENSE="WTFPL-2" | ||
SLOT="0" | ||
KEYWORDS="~amd64" | ||
|
||
EZIG_MIN="0.12" | ||
EZIG_MAX_EXCLUSIVE="0.13" | ||
|
||
DEPEND=" | ||
|| ( dev-lang/zig-bin:${EZIG_MIN} dev-lang/zig:${EZIG_MIN} ) | ||
sys-libs/pam | ||
x11-libs/libxcb | ||
" | ||
RDEPEND=" | ||
x11-base/xorg-server | ||
x11-apps/xauth | ||
sys-libs/ncurses | ||
" | ||
|
||
# https://github.com/ziglang/zig/issues/3382 | ||
QA_FLAGS_IGNORED="usr/bin/ly" | ||
|
||
RES="${S}/res" | ||
|
||
# copied from sys-fs/ncdu::gentoo | ||
# Many thanks to Florian Schmaus (Flowdalic)! | ||
# Adapted from https://github.com/gentoo/gentoo/pull/28986 | ||
# Set the EZIG environment variable. | ||
zig-set_EZIG() { | ||
[[ -n ${EZIG} ]] && return | ||
|
||
if [[ -n ${EZIG_OVERWRITE} ]]; then | ||
export EZIG="${EZIG_OVERWRITE}" | ||
return | ||
fi | ||
|
||
local candidate selected selected_ver ver | ||
|
||
for candidate in "${BROOT}"/usr/bin/zig-*; do | ||
if [[ ! -L ${candidate} || ${candidate} != */zig?(-bin)-+([0-9.]) ]]; then | ||
continue | ||
fi | ||
|
||
ver=${candidate##*-} | ||
|
||
if [[ -n ${EZIG_EXACT_VER} ]]; then | ||
ver_test "${ver}" -ne "${EZIG_EXACT_VER}" && continue | ||
|
||
selected="${candidate}" | ||
selected_ver="${ver}" | ||
break | ||
fi | ||
|
||
if [[ -n ${EZIG_MIN} ]] \ | ||
&& ver_test "${ver}" -lt "${EZIG_MIN}"; then | ||
# Candidate does not satisfy EZIG_MIN condition. | ||
continue | ||
fi | ||
|
||
if [[ -n ${EZIG_MAX_EXCLUSIVE} ]] \ | ||
&& ver_test "${ver}" -ge "${EZIG_MAX_EXCLUSIVE}"; then | ||
# Candidate does not satisfy EZIG_MAX_EXCLUSIVE condition. | ||
continue | ||
fi | ||
|
||
if [[ -n ${selected_ver} ]] \ | ||
&& ver_test "${selected_ver}" -gt "${ver}"; then | ||
# Candidate is older than the currently selected candidate. | ||
continue | ||
fi | ||
|
||
selected="${candidate}" | ||
selected_ver="${ver}" | ||
done | ||
|
||
if [[ -z ${selected} ]]; then | ||
die "Could not find (suitable) zig installation in ${BROOT}/usr/bin" | ||
fi | ||
|
||
export EZIG="${selected}" | ||
export EZIG_VER="${selected_ver}" | ||
} | ||
|
||
ezig() { | ||
zig-set_EZIG | ||
edo "${EZIG}" "${@}" | ||
} | ||
|
||
src_unpack() { | ||
default | ||
|
||
mkdir "${WORKDIR}/deps" || die | ||
ezig fetch --global-cache-dir "${WORKDIR}/deps" "${DISTDIR}/zig-clap-${CLAP}.tar.gz" | ||
ezig fetch --global-cache-dir "${WORKDIR}/deps" "${DISTDIR}/zigini-${ZIGINI}.tar.gz" | ||
ezig fetch --global-cache-dir "${WORKDIR}/deps" "${DISTDIR}/ziglibini-${ZIGLIBINI}.tar.gz" | ||
} | ||
|
||
src_compile() { | ||
ezig build --system "${WORKDIR}/deps/p" -Doptimize=ReleaseSafe | ||
} | ||
|
||
src_install() { | ||
dobin "${S}/zig-out/bin/${PN}" | ||
newinitd "${RES}/${PN}-openrc" ly | ||
systemd_dounit "${RES}/${PN}.service" | ||
insinto /etc/ly | ||
doins "${RES}/config.ini" "${RES}/xsetup.sh" "${RES}/wsetup.sh" | ||
insinto /etc/ly/lang | ||
doins "${RES}"/lang/*.ini | ||
newpamd "${RES}/pam.d/ly" ly | ||
fperms +x /etc/${PN}/{x,w}setup.sh | ||
} | ||
|
||
pkg_postinst() { | ||
systemd_reenable "${PN}.service" | ||
|
||
ewarn | ||
ewarn "The init scripts are installed only for systemd/openrc" | ||
ewarn "If you are using something else like runit etc." | ||
ewarn "Please check upstream for get some help" | ||
ewarn "You may need to take a look at /etc/ly/config.ini" | ||
ewarn "If you are using a window manager as DWM" | ||
ewarn "Please make sure there is a .desktop file in /usr/share/xsessions for it" | ||
} |