summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Väth <martin@mvath.de>2021-05-08 17:25:27 +0200
committerMartin Väth <martin@mvath.de>2021-05-08 17:25:27 +0200
commit6d62429b201c613a6247e644d13fc4181113bb41 (patch)
tree60555f4e59e8c282c16fd3b1d4ec6f58c5a37cc6
parentpython:3.9 and python:3.10 (diff)
downloadmv-6d62429b201c613a6247e644d13fc4181113bb41.tar.gz
mv-6d62429b201c613a6247e644d13fc4181113bb41.tar.bz2
mv-6d62429b201c613a6247e644d13fc4181113bb41.zip
Add more packages for python:3.9 (and 3.10) support
Signed-off-by: Martin Väth <martin@mvath.de>
-rw-r--r--games-rpg/freedroidrpg/files/freedroidrpg-1.0_rc2-fnocommon.patch49
-rw-r--r--games-rpg/freedroidrpg/freedroidrpg-1.0_rc2.ebuild7
-rw-r--r--media-video/handbrake/Manifest1
-rw-r--r--media-video/handbrake/files/handbrake-1.3.0-dont-search-for-python.patch27
-rw-r--r--media-video/handbrake/files/handbrake-1.3.3-x265-link.patch13
-rw-r--r--media-video/handbrake/files/handbrake-9999-remove-dvdnav-dup.patch20
-rw-r--r--media-video/handbrake/files/handbrake-9999-remove-faac-dependency.patch84
-rw-r--r--media-video/handbrake/handbrake-1.3.3-r1.ebuild167
-rw-r--r--media-video/handbrake/metadata.xml17
-rw-r--r--metadata/pkg_desc_index2
-rw-r--r--profiles/use.local.desc7
-rw-r--r--x11-terms/kitty-terminfo/Manifest1
-rw-r--r--x11-terms/kitty-terminfo/files/kitty-terminfo-setup-0.19.1.patch46
-rw-r--r--x11-terms/kitty-terminfo/kitty-terminfo-0.19.3.ebuild41
-rw-r--r--x11-terms/kitty-terminfo/metadata.xml15
15 files changed, 496 insertions, 1 deletions
diff --git a/games-rpg/freedroidrpg/files/freedroidrpg-1.0_rc2-fnocommon.patch b/games-rpg/freedroidrpg/files/freedroidrpg-1.0_rc2-fnocommon.patch
new file mode 100644
index 00000000..fd8bc4f9
--- /dev/null
+++ b/games-rpg/freedroidrpg/files/freedroidrpg-1.0_rc2-fnocommon.patch
@@ -0,0 +1,49 @@
+Fixes build. https://bugs.gentoo.org/706930#c8
+
+--- freedroidrpg-1.0RC2/src/global.h 2019-03-30 23:20:31.000000000 +1000
++++ freedroidrpg-1.0RC2/src/global.h 2020-06-21 20:51:01.566218463 +1000
+@@ -36,7 +36,6 @@
+ #define INTERN_FOR _main_c
+ #include "extint_macros.h"
+
+-EXTERN float FPSover1;
+ EXTERN char *AllSkillTexts[];
+ EXTERN char font_switchto_red[];
+ EXTERN char font_switchto_blue[];
+--- freedroidrpg-1.0RC2/src/lvledit/lvledit_tools.h 2019-03-30 23:20:31.000000000 +1000
++++ freedroidrpg-1.0RC2/src/lvledit/lvledit_tools.h 2020-06-21 20:41:58.424710693 +1000
+@@ -36,7 +36,7 @@
+
+ void leveleditor_init_tools(void);
+
+-struct leveleditor_tool tool_place, tool_move, tool_select;
++EXTERN struct leveleditor_tool tool_place, tool_move, tool_select;
+
+ #define EVENT_LEFT_PRESS(e) (((e) && e->type == SDL_MOUSEBUTTONDOWN) && (e->button.button == 1))
+ #define EVENT_RIGHT_PRESS(e) (((e) && e->type == SDL_MOUSEBUTTONDOWN) && (e->button.button == 3))
+--- freedroidrpg-1.0RC2/src/mapgen/mapgen.h 2019-03-30 23:20:31.000000000 +1000
++++ freedroidrpg-1.0RC2/src/mapgen/mapgen.h 2020-06-21 20:43:53.255723534 +1000
+@@ -64,9 +64,9 @@
+ extern int total_rooms;
+
+ // Interface to the game
+-void (*dungeonmap_convert) (int, int, unsigned char *);
+-void (*dungeonmap_place_enemies) (struct roominfo *);
+-void (*dungeonmap_gift) (struct roominfo *);
++extern void (*dungeonmap_convert) (int, int, unsigned char *);
++extern void (*dungeonmap_place_enemies) (struct roominfo *);
++extern void (*dungeonmap_gift) (struct roominfo *);
+
+ int generate_dungeon_gram(int, int);
+
+--- freedroidrpg-1.0RC2/src/struct.h 2019-05-13 01:03:36.000000000 +1000
++++ freedroidrpg-1.0RC2/src/struct.h 2020-06-21 20:38:22.189812908 +1000
+@@ -1063,7 +1063,7 @@
+ struct tux_part_instances default_instances; // Default part instances
+ tux_part_render_motionclass *render_order; // The render_sets of each motion class
+ int gun_muzzle_height; // Vertical offset to apply to bullets
+-} tux_rendering;
++};
+
+ /**
+ * Contains a set of Tux's parts images for a motion class.
diff --git a/games-rpg/freedroidrpg/freedroidrpg-1.0_rc2.ebuild b/games-rpg/freedroidrpg/freedroidrpg-1.0_rc2.ebuild
index 0e0895bf..0d83f15d 100644
--- a/games-rpg/freedroidrpg/freedroidrpg-1.0_rc2.ebuild
+++ b/games-rpg/freedroidrpg/freedroidrpg-1.0_rc2.ebuild
@@ -2,6 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
PYTHON_COMPAT=( python3_{7,8,9,10} )
inherit autotools flag-o-matic desktop python-any-r1 xdg
@@ -37,6 +38,10 @@ BDEPEND="
S="${WORKDIR}/${PN}-${MY_PV^^}"
+PATCHES=(
+ "${FILESDIR}/${P}-fnocommon.patch"
+)
+
src_prepare() {
default
@@ -56,7 +61,7 @@ src_configure() {
local myconf=(
--disable-fastmath
--with-embedded-lua
- --localedir=/usr/share/locale
+ --localedir="${EPREFIX}/usr/share/locale"
$(use_enable nls)
$(use_enable opengl)
$(use_enable sound)
diff --git a/media-video/handbrake/Manifest b/media-video/handbrake/Manifest
new file mode 100644
index 00000000..abb9a1f6
--- /dev/null
+++ b/media-video/handbrake/Manifest
@@ -0,0 +1 @@
+DIST handbrake-1.3.3.tar.bz2 16804119 BLAKE2B c081029e77911dc722764b0bef04e156694f8da0caaa6aedaae13d5c1045dccfc8292a466a8df323b471ca2a9de821b94740e9826fc9e7a2877b1d59653a728a SHA512 a4cca4e45d39eb3d43441abe832e2b8398694917981fa994075e475b68297cae28039e3c75d06442194262a881b9e416e5ebd73d10f86214b95f54c35fd3088c
diff --git a/media-video/handbrake/files/handbrake-1.3.0-dont-search-for-python.patch b/media-video/handbrake/files/handbrake-1.3.0-dont-search-for-python.patch
new file mode 100644
index 00000000..551a64ee
--- /dev/null
+++ b/media-video/handbrake/files/handbrake-1.3.0-dont-search-for-python.patch
@@ -0,0 +1,27 @@
+diff --git a/configure b/configure
+index 5c870e1d7..2f5834083 100755
+--- a/configure
++++ b/configure
+@@ -14,20 +14,8 @@ inpath()
+ }
+
+ if ( inpath bash ); then
+- pp=""
+- for p in python3 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python2 python2.7 python
+- do
+- if ( inpath $p ); then
+- pp="$p"
+- break
+- fi
+- done
+- if [ pp != "" ]; then
+- exec $pp `dirname $0`/make/configure.py "$@"
+- exit 0
+- else
+- echo "ERROR: no suitable version of python found."
+- fi
++ exec python `dirname $0`/make/configure.py "$@"
++ exit 0
+ else
+ echo "ERROR: bash shell not found."
+ fi
diff --git a/media-video/handbrake/files/handbrake-1.3.3-x265-link.patch b/media-video/handbrake/files/handbrake-1.3.3-x265-link.patch
new file mode 100644
index 00000000..6a146457
--- /dev/null
+++ b/media-video/handbrake/files/handbrake-1.3.3-x265-link.patch
@@ -0,0 +1,13 @@
+--- a/test/module.defs 2020-06-13 15:05:35.000000000 +0100
++++ a/test/module.defs 2020-07-03 11:15:53.951205608 +0100
+@@ -30,6 +30,10 @@
+ endif
+ endif
+
++ifeq (1,$(FEATURE.x265))
++ TEST.GCC.l += x265
++endif
++
+ ifeq (1,$(FEATURE.flatpak))
+ TEST.GCC.l += glib-2.0
+ endif
diff --git a/media-video/handbrake/files/handbrake-9999-remove-dvdnav-dup.patch b/media-video/handbrake/files/handbrake-9999-remove-dvdnav-dup.patch
new file mode 100644
index 00000000..7dc1f693
--- /dev/null
+++ b/media-video/handbrake/files/handbrake-9999-remove-dvdnav-dup.patch
@@ -0,0 +1,20 @@
+--- a/libhb/dvdnav.c
++++ b/libhb/dvdnav.c
+@@ -1225,16 +1225,7 @@
+ {
+ for (kk = 0; kk < buttons; kk++)
+ {
+- dvdnav_t *dvdnav_copy;
+-
+- result = dvdnav_dup( &dvdnav_copy, d->dvdnav );
+- if (result != DVDNAV_STATUS_OK)
+- {
+- hb_log("dvdnav dup failed: %s", dvdnav_err_to_string(d->dvdnav));
+- goto done;
+- }
+- title = try_button( dvdnav_copy, kk, list_title );
+- dvdnav_free_dup( dvdnav_copy );
++ title = try_button( d->dvdnav, kk, list_title );
+
+ if ( title >= 0 )
+ {
diff --git a/media-video/handbrake/files/handbrake-9999-remove-faac-dependency.patch b/media-video/handbrake/files/handbrake-9999-remove-faac-dependency.patch
new file mode 100644
index 00000000..7e8ab997
--- /dev/null
+++ b/media-video/handbrake/files/handbrake-9999-remove-faac-dependency.patch
@@ -0,0 +1,84 @@
+--- a/libhb/common.c
++++ b/libhb/common.c
+@@ -243,7 +243,6 @@
+ {
+ // legacy encoders, back to HB 0.9.4 whenever possible (disabled)
+ { { "", "dts", NULL, HB_ACODEC_DCA_PASS, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 0, HB_GID_ACODEC_DTS_PASS, },
+- { { "AAC (faac)", "faac", NULL, 0, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 0, HB_GID_ACODEC_AAC, },
+ { { "AAC (ffmpeg)", "ffaac", NULL, HB_ACODEC_FFAAC, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 0, HB_GID_ACODEC_AAC, },
+ { { "AC3 (ffmpeg)", "ffac3", NULL, HB_ACODEC_AC3, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 0, HB_GID_ACODEC_AC3, },
+ { { "MP3 (lame)", "lame", NULL, HB_ACODEC_LAME, HB_MUX_MASK_MP4|HB_MUX_MASK_MKV, }, NULL, 0, HB_GID_ACODEC_MP3, },
+--- a/scripts/manicure.rb
++++ b/scripts/manicure.rb
+@@ -349,7 +349,7 @@
+ audioEncoders << "copy:dtshd"
+ when /AAC Pass/
+ audioEncoders << "copy:aac"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoders << "av_aac"
+ when "AAC (FDK)"
+ audioEncoders << "fdk_aac"
+@@ -466,7 +466,7 @@
+ case hash["AudioEncoderFallback"]
+ when /AC3/
+ audioEncoderFallback << "ac3"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoderFallback << "av_aac"
+ when "AAC (FDK)"
+ audioEncoderFallback << "fdk_aac"
+@@ -753,7 +753,7 @@
+ audioEncoders << "copy:dtshd"
+ when /AAC Pass/
+ audioEncoders << "copy:aac"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoders << "av_aac"
+ when "AAC (FDK)"
+ audioEncoders << "fdk_aac"
+@@ -870,7 +870,7 @@
+ case hash["AudioEncoderFallback"]
+ when /AC3/
+ audioEncoderFallback << "ac3"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoderFallback << "av_aac"
+ when "AAC (FDK)"
+ audioEncoderFallback << "fdk_aac"
+@@ -1163,7 +1163,7 @@
+ audioEncoders << "copy:dtshd"
+ when /AAC Pass/
+ audioEncoders << "copy:aac"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoders << "av_aac"
+ when "AAC (FDK)"
+ audioEncoders << "fdk_aac"
+@@ -1298,7 +1298,7 @@
+ case hash["AudioEncoderFallback"]
+ when /AC3/
+ audioEncoderFallback << "ac3"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoderFallback << "av_aac"
+ when "AAC (FDK)"
+ audioEncoderFallback << "fdk_aac"
+@@ -1615,7 +1615,7 @@
+ audioEncoders << "copy:dtshd"
+ when /AAC Pass/
+ audioEncoders << "copy:aac"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoders << "av_aac"
+ when "AAC (FDK)"
+ audioEncoders << "fdk_aac"
+@@ -1732,7 +1732,7 @@
+ case hash["AudioEncoderFallback"]
+ when /AC3/
+ audioEncoderFallback << "ac3"
+- when "AAC (ffmpeg)", "AAC (avcodec)", "AAC (faac)"
++ when "AAC (ffmpeg)", "AAC (avcodec)"
+ audioEncoderFallback << "av_aac"
+ when "AAC (FDK)"
+ audioEncoderFallback << "fdk_aac"
diff --git a/media-video/handbrake/handbrake-1.3.3-r1.ebuild b/media-video/handbrake/handbrake-1.3.3-r1.ebuild
new file mode 100644
index 00000000..a9b5fdb4
--- /dev/null
+++ b/media-video/handbrake/handbrake-1.3.3-r1.ebuild
@@ -0,0 +1,167 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit autotools eutils gnome2-utils python-any-r1 xdg-utils
+
+if [[ ${PV} = *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/HandBrake/HandBrake.git"
+ inherit git-r3
+else
+ MY_P="HandBrake-${PV}"
+ SRC_URI="https://github.com/HandBrake/HandBrake/releases/download/${PV}/${MY_P}-source.tar.bz2 -> ${P}.tar.bz2"
+ S="${WORKDIR}/${MY_P}"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Open-source, GPL-licensed, multiplatform, multithreaded video transcoder"
+HOMEPAGE="http://handbrake.fr/"
+LICENSE="GPL-2"
+
+SLOT="0"
+IUSE="+fdk gstreamer gtk libav-aac numa nvenc x265"
+
+REQUIRED_USE="^^ ( fdk libav-aac )"
+
+RDEPEND="
+ app-arch/xz-utils
+ media-libs/speex
+ dev-libs/jansson
+ dev-libs/libxml2
+ media-libs/a52dec
+ media-libs/libass:=
+ >=media-libs/libbluray-1.0
+ >=media-libs/dav1d-0.5.1
+ media-libs/libdvdnav
+ media-libs/libdvdread:=
+ media-libs/libsamplerate
+ media-libs/libtheora
+ media-libs/libvorbis
+ >=media-libs/libvpx-1.8
+ nvenc? ( media-libs/nv-codec-headers )
+ media-libs/opus
+ media-libs/x264:=
+ media-sound/lame
+ sys-libs/zlib
+ >=media-video/ffmpeg-4.2.1:0=[postproc,fdk?]
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ media-libs/gst-plugins-good:1.0
+ media-libs/gst-plugins-bad:1.0
+ media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-a52dec:1.0
+ media-plugins/gst-plugins-libav:1.0
+ media-plugins/gst-plugins-x264:1.0
+ media-plugins/gst-plugins-gdkpixbuf:1.0
+ )
+ gtk? (
+ >=x11-libs/gtk+-3.10
+ dev-libs/dbus-glib
+ dev-libs/glib:2
+ dev-libs/libgudev:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libnotify
+ x11-libs/pango
+ )
+ fdk? ( media-libs/fdk-aac )
+ x265? ( >=media-libs/x265-3.2:0=[10bit,12bit,numa?] )
+ "
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ dev-lang/nasm
+ dev-util/cmake
+ dev-util/intltool
+ dev-util/meson
+ sys-devel/automake"
+
+PATCHES=(
+ # Remove libdvdnav duplication and call it on the original instead.
+ # It may work this way; if not, we should try to mimic the duplication.
+ "${FILESDIR}/${PN}-9999-remove-dvdnav-dup.patch"
+
+ # Remove faac dependency; TODO: figure out if we need to do this at all.
+ "${FILESDIR}/${PN}-9999-remove-faac-dependency.patch"
+
+ # Use whichever python is set by portage
+ "${FILESDIR}/${PN}-1.3.0-dont-search-for-python.patch"
+
+ # Fix x265 linkage... again again #730034
+ "${FILESDIR}/${PN}-1.3.3-x265-link.patch"
+)
+
+src_prepare() {
+ # Get rid of leftover bundled library build definitions,
+ sed -i 's:.*\(/contrib\|contrib/\).*::g' \
+ "${S}"/make/include/main.defs \
+ || die "Contrib removal failed."
+
+ default
+
+ cd "${S}/gtk"
+ # Don't run autogen.sh.
+ sed -i '/autogen.sh/d' module.rules || die "Removing autogen.sh call failed"
+ eautoreconf
+}
+
+src_configure() {
+ # Libav was replaced in 1.2 with ffmpeg by default
+ # but I've elected to not make people change their use flags for AAC
+ # as its the same code anyway
+ ./configure \
+ --force \
+ --verbose \
+ --prefix="${EPREFIX}/usr" \
+ --disable-gtk-update-checks \
+ --disable-flatpak \
+ --disable-gtk4 \
+ $(use_enable libav-aac ffmpeg-aac) \
+ $(use_enable fdk fdk-aac) \
+ $(usex !gtk --disable-gtk) \
+ $(usex !gstreamer --disable-gst) \
+ $(use_enable numa) \
+ $(use_enable nvenc) \
+ $(use_enable x265) || die "Configure failed."
+}
+
+src_compile() {
+ emake -C build
+
+ # TODO: Documentation building is currently broken, try to fix it.
+ #
+ # if use doc ; then
+ # emake -C build doc
+ # fi
+}
+
+src_install() {
+ emake -C build DESTDIR="${D}" install
+
+ dodoc README.markdown AUTHORS.markdown NEWS.markdown THANKS.markdown
+}
+
+pkg_postinst() {
+ einfo "Gentoo builds of HandBrake are NOT SUPPORTED by upstream as they"
+ einfo "do not use the bundled (and often patched) upstream libraries."
+ einfo ""
+ einfo "Please do not raise bugs with upstream because of these ebuilds,"
+ einfo "report bugs to Gentoo's bugzilla or Multimedia forum instead."
+
+ einfo "For the CLI version of HandBrake, you can use \`HandBrakeCLI\`."
+ if use gtk ; then
+ einfo "For the GTK+ version of HandBrake, you can run \`ghb\`."
+ fi
+
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
diff --git a/media-video/handbrake/metadata.xml b/media-video/handbrake/metadata.xml
new file mode 100644
index 00000000..83b12add
--- /dev/null
+++ b/media-video/handbrake/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>thev00d00@gentoo.org</email>
+ <name>Ian Whyman</name>
+ </maintainer>
+ <use>
+ <flag name="gstreamer">Support for the streaming media framework from <pkg>media-libs/gstreamer</pkg>.</flag>
+ <flag name="gtk">Install the GTK UI, ghb.</flag>
+ <flag name="fdk">Support for encoding AAC using <pkg>media-libs/fdk-aac</pkg>.</flag>
+ <flag name="libav-aac">Support for encoding AAC using libav's internal encoder.</flag>
+ <flag name="numa">Adds support for x265's NUMA capabilities.</flag>
+ <flag name="nvenc">Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards.</flag>
+ <flag name="x265">Support for encoding h265 using <pkg>media-libs/x265</pkg>.</flag>
+ </use>
+</pkgmetadata>
diff --git a/metadata/pkg_desc_index b/metadata/pkg_desc_index
index 3b919960..fee1d0eb 100644
--- a/metadata/pkg_desc_index
+++ b/metadata/pkg_desc_index
@@ -83,6 +83,7 @@ media-tv/sundtek-tv 210407.172308: Sundtek MediaTV Pro III Drivers
media-tv/w_scan 20170107-r1: Scan for DVB-C/DVB-T/DVB-S channels without prior knowledge of frequencies
media-video/avidemux 2.7.8: Video editor designed for simple cutting, filtering and encoding tasks
media-video/avinfo 1.0_alpha15_p1-r1: Utility for displaying AVI information
+media-video/handbrake 1.3.3-r1: Open-source, GPL-licensed, multiplatform, multithreaded video transcoder
media-video/video-mv 17.1: Frontends for using mplayer/mencoder, ffmpeg/libav, or tzap as video recorder
net-dialup/accounting 1.60.45.3.1-r1: Give statistics about dialup connections. Originally part of SuSE's smpppd
net-dialup/martian-modem 20100123-r3: ltmodem alternative driver providing support for Agere Systems winmodems
@@ -137,4 +138,5 @@ www-plugins/ublock-origin 1.17.2: Firefox webextension: An efficient list-based
x11-libs/gtk+ 2.24.33 3.24.29: Gimp ToolKit +
x11-libs/motif 2.3.8-r1: The Motif user interface component toolkit
x11-terms/kitty 0.19.3: A modern, hackable, featureful, OpenGL-based terminal emulator
+x11-terms/kitty-terminfo 0.19.3: Terminfo for kitty, an OpenGL-based terminal emulator
x11-themes/fvwm-crystal 3.6.5: Configurable FVWM theme with transparency and freedesktop compatible menu
diff --git a/profiles/use.local.desc b/profiles/use.local.desc
index 12afa657..61ef73ee 100644
--- a/profiles/use.local.desc
+++ b/profiles/use.local.desc
@@ -187,6 +187,13 @@ media-tv/sundtek-tv:ld-preload-file - Install /etc/ld.so.preload
media-tv/sundtek-tv:pax_kernel - Mark package which is necessary if you use a PAX kernel
media-tv/w_scan:plp-id-zero - Apply experimental patch to force plp_id to 0 for DVB-T2. Seems to be necessary at least with some tuners in some regions
media-video/avidemux:nvenc - Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards.
+media-video/handbrake:fdk - Support for encoding AAC using media-libs/fdk-aac.
+media-video/handbrake:gstreamer - Support for the streaming media framework from media-libs/gstreamer.
+media-video/handbrake:gtk - Install the GTK UI, ghb.
+media-video/handbrake:libav-aac - Support for encoding AAC using libav's internal encoder.
+media-video/handbrake:numa - Adds support for x265's NUMA capabilities.
+media-video/handbrake:nvenc - Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards.
+media-video/handbrake:x265 - Support for encoding h265 using media-libs/x265.
net-dns/noip-updater:ezipupd - Use user/group ezipupd instead of nobody: Useful if you restrict outgoing network traffic for user nobody
net-print/foo2zjs:foomaticdb - Add support for the foomatic printing driver database
sci-geosciences/googleearth:bundled-libs - Use bundled libraries.
diff --git a/x11-terms/kitty-terminfo/Manifest b/x11-terms/kitty-terminfo/Manifest
new file mode 100644
index 00000000..a8e07181
--- /dev/null
+++ b/x11-terms/kitty-terminfo/Manifest
@@ -0,0 +1 @@
+DIST kitty-0.19.3.tar.xz 3269628 SHA512 d1eea7f909c9492542650a83a149fd279c44380cf10387759f10caad57cd4dbabeac1ce84e8142bfa47266ec2562dfa3766ce08e2aee4d8e0ebacea165f101e4
diff --git a/x11-terms/kitty-terminfo/files/kitty-terminfo-setup-0.19.1.patch b/x11-terms/kitty-terminfo/files/kitty-terminfo-setup-0.19.1.patch
new file mode 100644
index 00000000..865ac2b0
--- /dev/null
+++ b/x11-terms/kitty-terminfo/files/kitty-terminfo-setup-0.19.1.patch
@@ -0,0 +1,46 @@
+diff --git a/setup.py b/setup.py
+index 7c4295bd..8d31e2d1 100755
+--- a/setup.py
++++ b/setup.py
+@@ -856,6 +856,14 @@ Categories=System;TerminalEmulator;
+ os.makedirs(os.path.dirname(in_src_launcher), exist_ok=True)
+ os.symlink(os.path.relpath(launcher, os.path.dirname(in_src_launcher)), in_src_launcher)
+
++def terminfo(args):
++ ddir = args.prefix
++ libdir = os.path.join(ddir, args.libdir_name.strip('/'), 'kitty')
++ build_terminfo = runpy.run_path('build-terminfo', run_name='import_build')
++ for x in (libdir, os.path.join(ddir, 'share')):
++ odir = os.path.join(x, 'terminfo')
++ safe_makedirs(odir)
++ build_terminfo['compile_terminfo'](odir)
+
+ def macos_info_plist() -> bytes:
+ import plistlib
+@@ -1022,7 +1030,7 @@ def clean() -> None:
+
+ safe_remove(
+ 'build', 'compile_commands.json', 'link_commands.json',
+- 'linux-package', 'kitty.app', 'asan-launcher',
++ 'linux-package', 'linux-terminfo', 'kitty.app', 'asan-launcher',
+ 'kitty-profile', 'kitty/launcher')
+ exclude = ('.git',)
+ for root, dirs, files in os.walk('.', topdown=True):
+@@ -1045,7 +1053,7 @@ def option_parser() -> argparse.ArgumentParser: # {{{
+ 'action',
+ nargs='?',
+ default=Options.action,
+- choices='build test linux-package kitty.app linux-freeze macos-freeze build-launcher clean export-ci-bundles'.split(),
++ choices='build test linux-package linux-terminfo kitty.app linux-freeze macos-freeze build-launcher clean export-ci-bundles'.split(),
+ help='Action to perform (default is build)'
+ )
+ p.add_argument(
+@@ -1166,6 +1174,8 @@ def main() -> None:
+ elif args.action == 'linux-package':
+ build(args, native_optimizations=False)
+ package(args, bundle_type='linux-package')
++ elif args.action == 'linux-terminfo':
++ terminfo(args)
+ elif args.action == 'linux-freeze':
+ build(args, native_optimizations=False)
+ package(args, bundle_type='linux-freeze')
diff --git a/x11-terms/kitty-terminfo/kitty-terminfo-0.19.3.ebuild b/x11-terms/kitty-terminfo/kitty-terminfo-0.19.3.ebuild
new file mode 100644
index 00000000..f377aee5
--- /dev/null
+++ b/x11-terms/kitty-terminfo/kitty-terminfo-0.19.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit python-any-r1 toolchain-funcs xdg
+
+DESCRIPTION="Terminfo for kitty, an OpenGL-based terminal emulator"
+HOMEPAGE="https://github.com/kovidgoyal/kitty"
+SRC_URI="https://github.com/kovidgoyal/kitty/releases/download/v${PV}/kitty-${PV}.tar.xz"
+S="${WORKDIR}/kitty-${PV}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+DEPEND="${PYTHON_DEPS}"
+
+PATCHES=(
+ "${FILESDIR}"/kitty-terminfo-setup-0.19.1.patch
+)
+
+# kitty-terminfo is a split package from kitty that only installs the terminfo
+# file. As tests are designed to be run with the whole package compiled they
+# would fail in this case.
+RESTRICT="test"
+
+src_compile() {
+ "${EPYTHON}" setup.py \
+ --verbose $(usex debug --debug "") \
+ --libdir-name $(get_libdir) \
+ linux-terminfo || die "Failed to compile kitty."
+}
+
+src_install() {
+ insinto /usr
+ doins -r linux-package/*
+}
diff --git a/x11-terms/kitty-terminfo/metadata.xml b/x11-terms/kitty-terminfo/metadata.xml
new file mode 100644
index 00000000..c44f7541
--- /dev/null
+++ b/x11-terms/kitty-terminfo/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>pabloorduna98@gmail.com</email>
+ <name>Pablo Orduna</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Gentoo Proxy Maintainers Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">kovidgoyal/kitty</remote-id>
+ </upstream>
+</pkgmetadata>