diff options
author | 2021-10-27 04:36:55 -0400 | |
---|---|---|
committer | 2021-11-03 02:36:51 -0400 | |
commit | 7dbcc42bf5c8c29d6af157937de94c47d9fa40a3 (patch) | |
tree | 58578fac4c4af55fa3954c276b7a02d52747345b /x11-terms | |
parent | x11-terms/kitty: revamp ebuild (diff) | |
download | gentoo-7dbcc42bf5c8c29d6af157937de94c47d9fa40a3.tar.gz gentoo-7dbcc42bf5c8c29d6af157937de94c47d9fa40a3.tar.bz2 gentoo-7dbcc42bf5c8c29d6af157937de94c47d9fa40a3.zip |
x11-terms/kitty: sync and update live ebuild
New dependency on librsync for transfer kitten.
Note about skipped docs:
Since ~3 months ago, a new theme is used and needs some missing
dependencies (not just sphinx) and, as long as it's only needed for
the live ebuild (prebuilt for release), does not feel worth it. Given
the full depgraph, users would likely prefer it optional+disabled too.
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'x11-terms')
-rw-r--r-- | x11-terms/kitty/kitty-9999.ebuild | 130 |
1 files changed, 71 insertions, 59 deletions
diff --git a/x11-terms/kitty/kitty-9999.ebuild b/x11-terms/kitty/kitty-9999.ebuild index eaa36cc37bd5..45697c8607df 100644 --- a/x11-terms/kitty/kitty-9999.ebuild +++ b/x11-terms/kitty/kitty-9999.ebuild @@ -1,106 +1,118 @@ # Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 - -PYTHON_COMPAT=( python3_{8,9} ) +EAPI=8 +PYTHON_COMPAT=( python3_{8..10} ) inherit optfeature python-single-r1 toolchain-funcs xdg -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://github.com/kovidgoyal/kitty.git" +if [[ ${PV} == 9999 ]] ; then inherit git-r3 + EGIT_REPO_URI="https://github.com/kovidgoyal/kitty.git" else SRC_URI="https://github.com/kovidgoyal/kitty/releases/download/v${PV}/${P}.tar.xz" KEYWORDS="~amd64 ~x86" fi -DESCRIPTION="A modern, hackable, featureful, OpenGL-based terminal emulator" -HOMEPAGE="https://github.com/kovidgoyal/kitty" +DESCRIPTION="Fast, feature-rich, GPU-based terminal" +HOMEPAGE="https://sw.kovidgoyal.net/kitty/" LICENSE="GPL-3" SLOT="0" -IUSE="debug wayland" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" +IUSE="+X debug test wayland" +REQUIRED_USE=" + || ( X wayland ) + ${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" RDEPEND=" ${PYTHON_DEPS} media-libs/fontconfig media-libs/freetype:2 - >=media-libs/harfbuzz-1.5.0:= - media-libs/libcanberra - media-libs/libpng:0= - media-libs/lcms + media-libs/harfbuzz:= + media-libs/lcms:2 + media-libs/libglvnd[X?] + media-libs/libpng:= + net-libs/librsync:= sys-apps/dbus - sys-libs/zlib - x11-libs/libxcb[xkb] - x11-libs/libXcursor - x11-libs/libXi - x11-libs/libXinerama - x11-libs/libxkbcommon[X] - x11-libs/libXrandr - x11-terms/kitty-terminfo - wayland? ( - dev-libs/wayland - >=dev-libs/wayland-protocols-1.17 + sys-libs/zlib:= + x11-libs/libxkbcommon[X?] + x11-misc/xkeyboard-config + ~x11-terms/kitty-terminfo-${PV} + X? ( x11-libs/libX11 ) + wayland? ( dev-libs/wayland )" +DEPEND=" + ${RDEPEND} + X? ( + x11-base/xorg-proto + x11-libs/libXcursor + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr ) -" - -DEPEND="${RDEPEND} - media-libs/mesa[X(+)] + wayland? ( dev-libs/wayland-protocols )" +BDEPEND=" + ${PYTHON_DEPS} sys-libs/ncurses -" - -BDEPEND="virtual/pkgconfig" - -[[ ${PV} == *9999 ]] && BDEPEND+=" - $(python_gen_cond_dep '>=dev-python/sphinx-1.7[${PYTHON_USEDEP}]')" + virtual/pkgconfig + test? ( $(python_gen_cond_dep 'dev-python/pillow[${PYTHON_USEDEP}]') ) + wayland? ( dev-util/wayland-scanner )" PATCHES=( - "${FILESDIR}"/${PN}-0.21.2-flags.patch - "${FILESDIR}"/${PN}-0.21.2-remove-terminfo.patch - "${FILESDIR}"/${PN}-0.14.4-svg-icon.patch + "${FILESDIR}"/${PN}-0.23.1-flags.patch ) src_prepare() { default - # disable wayland as required - if ! use wayland; then - sed -i "/'x11 wayland'/s/ wayland//" setup.py || die - fi + sed "s/'x11 wayland'/'$(usev X x11) $(usev wayland)'/" -i setup.py || die + sed "s/else linux_backends/else [$(usev X "'x11',")$(usev wayland "'wayland'")]/" \ + -i kitty_tests/check_build.py || die + use X || sed "/glfw_path('x11')/s/x11/wayland/" -i kitty_tests/glfw.py || die - # respect doc dir - sed -i "/htmldir =/s/appname/'${PF}'/" setup.py || die - - tc-export CC + # skip docs for live version + [[ ${PV} != 9999 ]] || sed -i '/exists.*_build/,/docs(ddir)/d' setup.py || die } src_compile() { - "${EPYTHON}" setup.py \ - --verbose $(usex debug --debug "") \ - --libdir-name $(get_libdir) \ - --update-check-interval=0 \ - linux-package || die "Failed to compile kitty." + tc-export CC + export PKGCONFIG_EXE=$(tc-getPKG_CONFIG) + + local setup=( + ${EPYTHON} setup.py + --disable-link-time-optimization + --ignore-compiler-warnings + --libdir-name=$(get_libdir) + --update-check-interval=0 + --verbose + $(usev debug --debug) + linux-package + ) + + echo "${setup[*]}" + "${setup[@]}" || die "setup.py failed to compile ${PN}" + + [[ ${PV} == 9999 ]] || mv linux-package/share/doc/{${PN},${PF}} || die + rm -r linux-package/share/terminfo || die } src_test() { - export KITTY_CONFIG_DIRECTORY=${T} - "${EPYTHON}" test.py || die + PATH=linux-package/bin:${PATH} KITTY_CONFIG_DIRECTORY=${T} \ + ${EPYTHON} test.py || die } src_install() { insinto /usr - doins -r linux-package/* - dobin linux-package/bin/kitty - python_fix_shebang "${ED}" + doins -r linux-package/. + + fperms +x /usr/bin/kitty } pkg_postinst() { xdg_icon_cache_update - optfeature "Displaying images in the terminal" virtual/imagemagick-tools -} -pkg_postrm() { - xdg_icon_cache_update + optfeature "displaying images in the terminal" \ + media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] + + optfeature "audio-based terminal bell support" media-libs/libcanberra } |