I am not a mythtv expert but MythTV 36.0 remains compatible with X.Org Server 21.1.x and later. MythTV 36.0 appears to transition to to Qt6RayDude wrote:I created a local media-tv/mythtv and copied the files over from the old 35.0 ebuild folder...
I got 36.0 to install, but it is still not compatible with the latest version of X?
mythtv.org is down at the moment. Does anyone know if I'm right about this? I basically get the same symptom with a seg-fault from mythfrontend. The backend is running fine and without the X use and platform xcb it behaves very similar to the way it did with video showing up in a corner of the 4K display.
I have a compatible Qt and xorg-server, but mythfrontend segfaults if I compile with X Support. Without X support and platform xcb it gets the screen resolution wrong and renders 1080p on my 2160p display in the lower left corner.turtles wrote:I am not a mythtv expert but MythTV 36.0 remains compatible with X.Org Server 21.1.x and later. MythTV 36.0 appears to transition to to Qt6RayDude wrote:I created a local media-tv/mythtv and copied the files over from the old 35.0 ebuild folder...
I got 36.0 to install, but it is still not compatible with the latest version of X?
mythtv.org is down at the moment. Does anyone know if I'm right about this? I basically get the same symptom with a seg-fault from mythfrontend. The backend is running fine and without the X use and platform xcb it behaves very similar to the way it did with video showing up in a corner of the 4K display.
You can find recent archives of the website:
https://web.archive.org/web/20251015025 ... v.org/wiki
Their github is here:
https://github.com/MythTV/mythtv
Code: Select all
( lspci -k | grep -EA3 'VGA|3D' ; command -v glxinfo >/dev/null && glxinfo | grep -E "vendor|renderer|version" || echo "glxinfo missing: emerge x11-apps/mesa-progs" ; ls -l /etc/env.d/0001opengl 2>/dev/null || echo "Modern GLVND detected" ) 2>&1 | tee /tmp/gpu_diag.logCode: Select all
( env | grep -E "QT_|DISPLAY|XDG|SDL_|VDPAU|LIBVA" ; QT_LOGGING_RULES="qt.qpa.*=true;qt.rhi.*=true;qt.scenegraph.general=true" mythfrontend --platform xcb ) 2>&1 | tee /tmp/myth_diag.logCode: Select all
cat /var/db/repos/local/media-tv/mythtv/mythtv-36.0.ebuildCode: Select all
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISABLE_AUTOFORMATTING="yes"
PYTHON_COMPAT=( python3_{11..13} )
inherit edo flag-o-matic python-any-r1
inherit qmake-utils readme.gentoo-r1 systemd toolchain-funcs user-info
DESCRIPTION="Open Source DVR and media center hub"
HOMEPAGE="https://www.mythtv.org https://github.com/MythTV/mythtv"
if [[ ${PV} == *_p* ]] ; then
# https://github.com/MythTV/mythtv/tree/fixes/35
MY_COMMIT="805e05b76a9ab760169f901fd1149276fa17ccfb"
SRC_URI="https://github.com/MythTV/mythtv/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
# mythtv and mythplugins are separate builds in the github MythTV project
S="${WORKDIR}/mythtv-${MY_COMMIT}/mythtv"
else
SRC_URI="https://github.com/MythTV/mythtv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
# mythtv and mythplugins are separate builds in the github mythtv project
S="${WORKDIR}/${P}/mythtv"
fi
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE_INPUT_DEVICES="input_devices_joystick"
IUSE_VIDEO_CAPTURE_DEVICES="v4l ieee1394 hdhomerun vbox ceton"
IUSE="alsa asi autostart cdda cdr cec cpu_flags_ppc_altivec debug dvd dvb exif jack java"
IUSE+=" +lame lcd libass lirc nvdec +opengl oss perl pulseaudio python qt5 raw systemd"
IUSE+=" +vaapi vdpau vpx wrapper x264 x265 +xml xmltv +xvid +X zeroconf"
IUSE+=" ${IUSE_INPUT_DEVICES} ${IUSE_VIDEO_CAPTURE_DEVICES}"
REQUIRED_USE="
cdr? ( cdda )
"
RDEPEND="
acct-user/mythtv
dev-libs/glib:2
dev-libs/lzo:2
dev-libs/libzip:=
dev-qt/qtbase:6[dbus,gui,mysql,network,sql,xml,widgets]
media-fonts/corefonts
media-fonts/dejavu
media-fonts/liberation-fonts
media-fonts/tex-gyre
media-gfx/exiv2:=
media-libs/freetype:2
media-libs/libbluray:=[java?]
media-libs/libsamplerate
media-libs/libsoundtouch:=
media-libs/taglib:=
virtual/zlib:=
alsa? ( media-libs/alsa-lib )
autostart? (
net-dialup/mingetty
x11-apps/xset
x11-wm/evilwm
)
cec? ( dev-libs/libcec )
dvd? (
dev-libs/libcdio:=
media-libs/libdvdcss
sys-fs/udisks:2
)
hdhomerun? ( media-libs/libhdhomerun )
ieee1394? (
media-libs/libiec61883
sys-libs/libavc1394
sys-libs/libraw1394
)
jack? ( virtual/jack )
lame? ( media-sound/lame )
lcd? ( app-misc/lcdproc )
libass? ( media-libs/libass:= )
lirc? ( app-misc/lirc )
nvdec? ( x11-drivers/nvidia-drivers )
opengl? ( dev-qt/qtbase:6[opengl] )
pulseaudio? ( media-libs/libpulse )
systemd? ( sys-apps/systemd:= )
vaapi? ( media-libs/libva:=[X] )
vdpau? ( x11-libs/libvdpau )
vpx? ( media-libs/libvpx:= )
x264? ( media-libs/x264:= )
X? (
x11-apps/xinit
x11-libs/libX11
x11-libs/libXext
x11-libs/libXrandr
x11-libs/libXv
x11-libs/libXxf86vm:=
x11-misc/wmctrl:=
)
x265? ( media-libs/x265 )
xml? ( dev-libs/libxml2:2 )
xmltv? (
dev-perl/XML-LibXML
media-tv/xmltv
)
xvid? ( media-libs/xvid )
zeroconf? (
dev-libs/openssl:=
net-dns/avahi[mdnsresponder-compat]
)
"
DEPEND="
${RDEPEND}
dev-lang/yasm
sys-kernel/linux-headers
x11-base/xorg-proto
perl? (
dev-perl/DBD-mysql
dev-perl/DBI
dev-perl/HTTP-Message
dev-perl/IO-Socket-INET6
dev-perl/LWP-Protocol-https
dev-perl/Net-UPnP
dev-perl/XML-Simple
)
"
BDEPEND="
virtual/pkgconfig
opengl? ( virtual/opengl )
python? (
${PYTHON_DEPS}
$(python_gen_any_dep '
dev-python/python-dateutil[${PYTHON_USEDEP}]
dev-python/lxml[${PYTHON_USEDEP}]
dev-python/mysqlclient[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/requests-cache[${PYTHON_USEDEP}]
dev-python/wheel[${PYTHON_USEDEP}]
')
)
"
PATCHES=(
# "${FILESDIR}"/${PN}-33.1-libva.patch
# "${FILESDIR}"/${PN}-35.no-ant-java-required-if-use-system-libblur.patch
# "${FILESDIR}"/${PN}-35.freemheg-update-visibility-of-MHCreateEngine-MHSetLo.patch
)
python_check_deps() {
use python || return 0
python_has_version "dev-python/python-dateutil[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/lxml[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/mysqlclient[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/requests-cache[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/pip[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/wheel[${PYTHON_USEDEP}]"
}
pkg_pretend() {
if use autostart; then
local HOME_MYTHTV=$(egethome mythtv)
if [[ ! -z "${HOME_MYTHTV}" && ! -d "${HOME_MYTHTV}" ]] ; then
eerror "Home path '${HOME_MYTHTV}' for user 'mythtv' exists" \
"but is not a directory"
die
fi
fi
}
pkg_setup() {
use python && python-any-r1_pkg_setup
}
src_prepare() {
default
# Perl bits need to go into vendor_perl and not site_perl
sed -e "s:pure_install:pure_install INSTALLDIRS=vendor:" \
-i "${S}"/bindings/perl/Makefile || die "Cannot convert site_perl to vendor_perl!"
}
src_configure() {
use elibc_musl && append-flags -D_LARGEFILE64_SOURCE # 924347
local -a myconf=()
# Setup paths
myconf+=( --prefix="${EPREFIX}"/usr )
myconf+=( --libdir="${EPREFIX}"/usr/$(get_libdir) )
myconf+=( --libdir-name=$(get_libdir) )
myconf+=( --mandir="${EPREFIX}"/usr/share/man )
if use debug; then
myconf+=( --compile-type=debug )
myconf+=( --enable-valgrind ) # disables timeouts for valgrind memory debugging
else
myconf+=( --compile-type=release )
fi
# Build boosters
has ccache "${FEATURES}" || myconf+=( --disable-ccache )
has distcc "${FEATURES}" || myconf+=( --disable-distcc )
# CPU settings
# Mythtv's configure is borrowed from ffmpeg,
# Bug #172723
# Try to get cpu type based on CFLAGS.
# We need to do this so that features of that CPU will be better used
# If they contain an unknown CPU it will not hurt since ffmpeg's configure
# will just ignore it.
local i
for i in $(get-flag march) $(get-flag mcpu) $(get-flag mtune) ; do
[[ "${i}" == "native" ]] && i="host" # bug #273421
myconf+=( --cpu="${i}" )
break
done
myconf+=( $(use_enable cpu_flags_ppc_altivec altivec) )
# Sound Output Support
myconf+=(
$(use_enable oss audio-oss)
$(use_enable alsa audio-alsa)
$(use_enable jack audio-jack)
$(use_enable pulseaudio audio-pulseoutput)
)
# Input Support
myconf+=(
$(use_enable lirc)
$(use_enable input_devices_joystick joystick-menu)
$(use_enable cec libcec)
$(use_enable ieee1394 firewire)
$(use_enable hdhomerun)
$(use_enable vbox)
$(use_enable ceton)
$(use_enable v4l v4l2)
$(use_enable dvb)
$(use_enable asi)
)
# Video Output Support
myconf+=(
$(use_enable X x11)
)
# Hardware accelerators
myconf+=(
$(use_enable nvdec)
$(use_enable vaapi)
$(use_enable vdpau)
$(use_enable opengl)
$(use_enable opengl egl)
$(use_enable libass)
)
# System tools
myconf+=(
$(use_enable systemd systemd_notify)
$(use_enable systemd systemd_journal)
$(use_enable xml libxml2)
$(use_enable zeroconf libdns-sd)
)
# Bindings
if use perl && use python; then
myconf+=( --with-bindings=perl,python )
elif use perl; then
myconf+=( --without-bindings=python )
myconf+=( --with-bindings=perl )
elif use python; then
myconf+=( --without-bindings=perl )
myconf+=( --with-bindings=python )
else
myconf+=( --without-bindings=perl,python )
fi
use python && myconf+=( --python="${EPYTHON}" )
myconf+=( $(use_enable java bdjava) )
if use qt5; then
myconf+=( --qmake="$(qt5_get_bindir)"/qmake )
else
myconf+=( --qmake="$(qt6_get_bindir)"/qmake )
fi
# External codec library options (used for mythffmpeg and streaming transcode)
# lame is required for some broadcasts for silence detection of commercials
# default enable in IUSE with +lame
myconf+=(
$(use_enable lame libmp3lame)
$(use_enable xvid libxvid)
$(use_enable x264 libx264)
$(use_enable x265 libx265)
$(use_enable vpx libvpx)
)
# Clean up DSO load times and other compiler bits
myconf+=( --enable-symbol-visibility )
myconf+=( --enable-pic )
# libavformat/format.c:37:22: error: type of 'ff_mythtv_mpegtsraw_demuxer' does not match original declaration [-Werror=lto-type-mismatch]
# libavformat/mpegts-mythtv.c:3731:21: note: type 'const struct FFInputFormat' should match type 'struct AVInputFormat'
filter-lto
# Needed just like ffmpeg (bug #860987)
tc-is-lto && myconf+=( --enable-lto )
if tc-is-cross-compiler ; then
myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) )
myconf+=( --cross-prefix="${CHOST}"- )
fi
# econf sets these options that are not handled by configure:
# --build --host --infodir --localstatedir --sysconfdir
edo ./configure \
--prefix="${EPREFIX}/usr" \
--cc="$(tc-getCC)" \
--cxx="$(tc-getCXX)" \
--ar="$(tc-getAR)" \
--nm="$(tc-getNM)" \
--optflags="${CFLAGS}" \
--extra-cflags="${CFLAGS}" \
--extra-cxxflags="${CXXFLAGS}" \
--extra-ldflags="${LDFLAGS}" \
"${myconf[@]}"
}
src_compile() {
emake V=1
}
src_install() {
emake V=1 STRIP="true" INSTALL_ROOT="${D}" install
use python && python_optimize # does all packages by default
dodoc AUTHORS README
readme.gentoo_create_doc
insinto /usr/share/mythtv/database
doins database/*
newinitd "${FILESDIR}"/mythbackend.init-r4 mythbackend
newconfd "${FILESDIR}"/mythbackend.conf-r1 mythbackend
if use systemd; then
systemd_newunit "${FILESDIR}"/mythbackend.service-28 mythbackend.service
fi
# The acct-user/mythtv package creates/manages the user 'mythtv'
keepdir /etc/mythtv
fowners -R mythtv /etc/mythtv
keepdir /var/log/mythtv
fowners -R mythtv /var/log/mythtv
insinto /etc/logrotate.d
newins "${FILESDIR}"/mythtv.logrotate.d-r4 mythtv
insinto /usr/share/mythtv/contrib
# Ensure we don't install scripts needing the perl bindings (bug #516968) Finding none is OK.
if ! use perl; then
find contrib/ -name '*.pl' -exec rm {} \;
fi
# Ensure we don't install scripts needing the python bindings (bug #516968) Finding none is OK.
if ! use python; then
find contrib/ -name '*.py' -exec rm {} \;
fi
doins -r contrib/*
# Install our mythfrontend wrapper which is similar to Mythbuntu's
if use wrapper; then
mv "${ED}/usr/bin/mythfrontend" "${ED}/usr/bin/mythfrontend.real" || die "Failed to install mythfrontend.real"
newbin "${FILESDIR}"/mythfrontend.wrapper mythfrontend
newconfd "${FILESDIR}"/mythfrontend.conf mythfrontend
fi
if use autostart; then
newenvd - 95mythtv <<- _EOF_
CONFIG_PROTECT=\"$(egethome mythtv)\"
_EOF_
insinto $(egethome mythtv)
newins "${FILESDIR}"/bash_profile .bash_profile
newins "${FILESDIR}"/xinitrc-r1 .xinitrc
fi
# Make Python files executable but not files named "__init__.py"
find "${ED}/usr/share/mythtv" -type f -name '*.py' -exec expr \( {} : '.*__init__.py' \) = 0 \; \
-exec chmod a+x {} \; || die "Failed to make python file $(basename ${file}) executable"
# Ensure that Python scripts are executed by Python 2
use python && python_fix_shebang "${ED}/usr/share/mythtv"
# Make shell & perl scripts executable
find "${ED}" -type f \( -name '*.sh' -o -name '*.pl' \) -exec chmod a+x {} \; \
|| die "Failed to make script executable"
}
pkg_postinst() {
readme.gentoo_print_elog
}
pkg_config() {
if [[ -e "${EROOT}"/usr/bin/mysql ]]; then
"${EROOT}"/usr/bin/mysql -u root -p < "${EROOT}"/usr/share/mythtv/database/mc.sql
fi
}
Code: Select all
cat /etc/portage/package.use/mythtvCode: Select all
media-tv/mythtv qt5
Thanks Turtles!turtles wrote:I'd be tempted to collect some info in one tmp file & set some custom QT_LOGGING_RULES:
Have a look at this issue:
https://github.com/MythTV/mythtv/issues/754
I'd run some commands to check your GPU setup and capture some QT6 data to a tmp fileCode: Select all
( lspci -k | grep -EA3 'VGA|3D' ; command -v glxinfo >/dev/null && glxinfo | grep -E "vendor|renderer|version" || echo "glxinfo missing: emerge x11-apps/mesa-progs" ; ls -l /etc/env.d/0001opengl 2>/dev/null || echo "Modern GLVND detected" ) 2>&1 | tee /tmp/gpu_diag.logLook for QOpenGLContext::makeCurrent: Called with non-platform window as mentioned in Issue #754.Code: Select all
( env | grep -E "QT_|DISPLAY|XDG|SDL_|VDPAU|LIBVA" ; QT_LOGGING_RULES="qt.qpa.*=true;qt.rhi.*=true;qt.scenegraph.general=true" mythfrontend --platform xcb ) 2>&1 | tee /tmp/myth_diag.log
For the Scaling: Look for qt.qpa.xcb: Internal screen name... DPR 2.0
Like I said I am not a mythtv person but we can definitely track down QT6 and X bugs,
if you get something interesting and want to share post that output or if its long use pastebin.
Glad the Qt5 downgrade got you back up and running. That actually points to issue being in the Qt6 RHI abstraction layer.RayDude wrote:
Thanks Turtles!
I haven't got time for all that but I did manage to modify the ebuild and get qt5 to work.
Thanks Hu. I just want to use mythtv...Hu wrote:If USE=qt5 is mandatory for this, then I suggest either making it a REQUIRED_USE (which is ugly, but easy) or removing IUSE=qt5 and adjusting the ebuild to always act as if USE=qt5 was set. If the ebuild is meant to support both qt5 and qt6 so that the user can switch, then IUSE=+qt5 might still be worthwhile. Regardless, I feel obliged to point out that Gentoo developers have repeatedly warned that qt5 is planned for removal, and anything depending on qt5 will break when that happens. Using qt5 is fine as a workaround, but you should expect that either you stop updating the system on which MythTV runs, or that you go back to using qt6.
turtles wrote:Glad the Qt5 downgrade got you back up and running. That actually points to issue being in the Qt6 RHI abstraction layer.RayDude wrote:
Thanks Turtles!
I haven't got time for all that but I did manage to modify the ebuild and get qt5 to work.
I'd still love to see that lspci -k and glxinfo output. I suspect the '1080p in a 4K corner' bug is specific to how certain drivers (likely Intel or NVIDIA) report screen geometry. Having hardware profiles helps with the Qt6 transition.
Code: Select all
tvuser@server ~ $ ( lspci -k | grep -EA3 'VGA|3D' ; command -v glxinfo >/dev/null && glxinfo | grep -E "vendor|renderer|version" || echo "glxinfo missing: emerge x11-apps/mesa-progs" ; ls -l /etc/env.d/0001opengl 2>/dev/null || echo "Modern GLVND detected" ) 2>&1 | tee /tmp/gpu_diag.log
2d:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 23 [Radeon RX 6650 XT / 6700S / 6800S] (rev c1)
Subsystem: Micro-Star International Co., Ltd. [MSI] RX 6650XT MECH 2X
Kernel driver in use: amdgpu
Kernel modules: amdgpu
server glx vendor string: SGI
server glx version string: 1.4
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
GLX_MESA_copy_sub_buffer, GLX_MESA_gl_interop, GLX_MESA_query_renderer,
GLX version: 1.4
GLX_MESA_gl_interop, GLX_MESA_query_renderer, GLX_MESA_swap_control,
Extended renderer info (GLX_MESA_query_renderer):
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 6650 XT (radeonsi, navi23, LLVM 21.1.8, DRM 3.64, 6.19.3-gentoo)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 25.3.3
OpenGL core profile shading language version string: 4.60
OpenGL version string: 4.6 (Compatibility Profile) Mesa 25.3.3
OpenGL shading language version string: 4.60
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 25.3.3
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
GL_EXT_shader_group_vote, GL_EXT_shader_implicit_conversions,
Modern GLVND detectedCode: Select all
tvuser@server ~ $ glxinfo
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_context_flush_control, GLX_ARB_create_context,
GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample,
GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
GLX_EXT_get_drawable_type, GLX_EXT_libglvnd, GLX_EXT_no_config_context,
GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_MESA_copy_sub_buffer, GLX_OML_swap_method, GLX_SGIS_multisample,
GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group,
GLX_SGI_make_current_read
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_context_flush_control, GLX_ARB_create_context,
GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_ATI_pixel_format_float, GLX_EXT_buffer_age,
GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile,
GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
GLX_EXT_import_context, GLX_EXT_no_config_context, GLX_EXT_swap_control,
GLX_EXT_swap_control_tear, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_INTEL_swap_event,
GLX_MESA_copy_sub_buffer, GLX_MESA_gl_interop, GLX_MESA_query_renderer,
GLX_MESA_swap_control, GLX_NV_float_buffer, GLX_OML_sync_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
GLX_ARB_context_flush_control, GLX_ARB_create_context,
GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
GLX_EXT_create_context_es_profile, GLX_EXT_fbconfig_packed_float,
GLX_EXT_framebuffer_sRGB, GLX_EXT_no_config_context, GLX_EXT_swap_control,
GLX_EXT_swap_control_tear, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_MESA_gl_interop, GLX_MESA_query_renderer, GLX_MESA_swap_control,
GLX_OML_sync_control, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_video_sync
Extended renderer info (GLX_MESA_query_renderer):
Vendor: AMD (0x1002)
Device: AMD Radeon RX 6650 XT (radeonsi, navi23, LLVM 21.1.8, DRM 3.64, 6.19.3-gentoo) (0x73ef)
Version: 25.3.3
Accelerated: yes
Video memory: 8192MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 4.6
Max compat profile version: 4.6
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
VBO free memory - total: 6963 MB, largest block: 6963 MB
VBO free aux. memory - total: 32011 MB, largest block: 32011 MB
Texture free memory - total: 6963 MB, largest block: 6963 MB
Texture free aux. memory - total: 32011 MB, largest block: 32011 MB
Renderbuffer free memory - total: 6963 MB, largest block: 6963 MB
Renderbuffer free aux. memory - total: 32011 MB, largest block: 32011 MB
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 8192 MB
Total available memory: 40308 MB
Currently available dedicated video memory: 6963 MB
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 6650 XT (radeonsi, navi23, LLVM 21.1.8, DRM 3.64, 6.19.3-gentoo)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 25.3.3
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
GL_AMD_conservative_depth, GL_AMD_depth_clamp_separate,
GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced,
GL_AMD_gpu_shader_int64, GL_AMD_multi_draw_indirect,
GL_AMD_performance_monitor, GL_AMD_pinned_memory,
GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture,
GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax,
GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer,
GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3,
GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility,
GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility,
GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance,
GL_ARB_bindless_texture, GL_ARB_blend_func_extended,
GL_ARB_buffer_storage, GL_ARB_clear_buffer_object, GL_ARB_clear_texture,
GL_ARB_clip_control, GL_ARB_color_buffer_float,
GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader,
GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted,
GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image,
GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float,
GL_ARB_depth_clamp, GL_ARB_derivative_control, GL_ARB_direct_state_access,
GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend,
GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect,
GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport,
GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments,
GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB,
GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv,
GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64,
GL_ARB_half_float_pixel, GL_ARB_half_float_vertex,
GL_ARB_indirect_parameters, GL_ARB_instanced_arrays,
GL_ARB_internalformat_query, GL_ARB_internalformat_query2,
GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment,
GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect,
GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile,
GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object,
GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp,
GL_ARB_post_depth_coverage, GL_ARB_program_interface_query,
GL_ARB_provoking_vertex, GL_ARB_query_buffer_object,
GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness,
GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map,
GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects,
GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters,
GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote,
GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
GL_ARB_shader_objects, GL_ARB_shader_precision,
GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object,
GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples,
GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array,
GL_ARB_shading_language_420pack, GL_ARB_shading_language_include,
GL_ARB_shading_language_packing, GL_ARB_sparse_buffer,
GL_ARB_sparse_texture, GL_ARB_sparse_texture2,
GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions,
GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader,
GL_ARB_texture_barrier, GL_ARB_texture_border_clamp,
GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32,
GL_ARB_texture_buffer_range, GL_ARB_texture_compression_bptc,
GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map_array,
GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax,
GL_ARB_texture_float, GL_ARB_texture_gather,
GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_multisample,
GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels,
GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg,
GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8,
GL_ARB_texture_storage, GL_ARB_texture_storage_multisample,
GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query,
GL_ARB_transform_feedback2, GL_ARB_transform_feedback3,
GL_ARB_transform_feedback_instanced,
GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object,
GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object,
GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding,
GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader,
GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
GL_ARB_viewport_array, GL_ATI_blend_equation_separate, GL_ATI_meminfo,
GL_ATI_texture_float, GL_ATI_texture_mirror_once,
GL_EXT_EGL_image_storage, GL_EXT_EGL_image_storage_compression,
GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_blend_equation_separate,
GL_EXT_debug_label, GL_EXT_demote_to_helper_invocation,
GL_EXT_depth_bounds_test, GL_EXT_draw_buffers2, GL_EXT_draw_instanced,
GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample,
GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object,
GL_EXT_framebuffer_sRGB, GL_EXT_memory_object, GL_EXT_memory_object_fd,
GL_EXT_packed_depth_stencil, GL_EXT_packed_float,
GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp,
GL_EXT_provoking_vertex, GL_EXT_semaphore, GL_EXT_semaphore_fd,
GL_EXT_shader_clock, GL_EXT_shader_image_load_formatted,
GL_EXT_shader_image_load_store, GL_EXT_shader_integer_mix,
GL_EXT_shader_samples_identical, GL_EXT_texture_array,
GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc,
GL_EXT_texture_compression_s3tc, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_filter_minmax, GL_EXT_texture_integer,
GL_EXT_texture_mirror_clamp, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8,
GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode,
GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent,
GL_EXT_texture_snorm, GL_EXT_texture_storage, GL_EXT_texture_swizzle,
GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array_bgra,
GL_EXT_vertex_attrib_64bit, GL_EXT_window_rectangles,
GL_IBM_multimode_draw_arrays, GL_INTEL_blackhole_render,
GL_KHR_blend_equation_advanced, GL_KHR_context_flush_control,
GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile,
GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness,
GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_ldr,
GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y,
GL_MESA_pack_invert, GL_MESA_shader_integer_functions,
GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba,
GL_NVX_gpu_memory_info, GL_NV_alpha_to_coverage_dither_control,
GL_NV_compute_shader_derivatives, GL_NV_conditional_render,
GL_NV_copy_image, GL_NV_depth_clamp, GL_NV_packed_depth_stencil,
GL_NV_shader_atomic_int64, GL_NV_texture_barrier, GL_OES_EGL_image,
GL_S3_s3tc
OpenGL version string: 4.6 (Compatibility Profile) Mesa 25.3.3
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
GL_AMD_conservative_depth, GL_AMD_depth_clamp_separate,
GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced,
GL_AMD_multi_draw_indirect, GL_AMD_performance_monitor,
GL_AMD_pinned_memory, GL_AMD_query_buffer_object,
GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_stencil_export,
GL_AMD_shader_trinary_minmax, GL_AMD_texture_texture4,
GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index,
GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5,
GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility,
GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility,
GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance,
GL_ARB_bindless_texture, GL_ARB_blend_func_extended,
GL_ARB_buffer_storage, GL_ARB_clear_buffer_object, GL_ARB_clear_texture,
GL_ARB_clip_control, GL_ARB_color_buffer_float, GL_ARB_compatibility,
GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader,
GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted,
GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image,
GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float,
GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control,
GL_ARB_direct_state_access, GL_ARB_draw_buffers,
GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex,
GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts,
GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport,
GL_ARB_fragment_program, GL_ARB_fragment_program_shadow,
GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments,
GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB,
GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv,
GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64,
GL_ARB_half_float_pixel, GL_ARB_half_float_vertex,
GL_ARB_indirect_parameters, GL_ARB_instanced_arrays,
GL_ARB_internalformat_query, GL_ARB_internalformat_query2,
GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment,
GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect,
GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query,
GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile,
GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object,
GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp,
GL_ARB_post_depth_coverage, GL_ARB_program_interface_query,
GL_ARB_provoking_vertex, GL_ARB_query_buffer_object,
GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness,
GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map,
GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects,
GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters,
GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote,
GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
GL_ARB_shader_objects, GL_ARB_shader_precision,
GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object,
GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples,
GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array,
GL_ARB_shading_language_100, GL_ARB_shading_language_420pack,
GL_ARB_shading_language_include, GL_ARB_shading_language_packing,
GL_ARB_shadow, GL_ARB_sparse_buffer, GL_ARB_sparse_texture,
GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp,
GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync,
GL_ARB_tessellation_shader, GL_ARB_texture_barrier,
GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object,
GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range,
GL_ARB_texture_compression, GL_ARB_texture_compression_bptc,
GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map,
GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add,
GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar,
GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic,
GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather,
GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat,
GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two,
GL_ARB_texture_query_levels, GL_ARB_texture_query_lod,
GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui,
GL_ARB_texture_stencil8, GL_ARB_texture_storage,
GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle,
GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2,
GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced,
GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix,
GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra,
GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit,
GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object,
GL_ARB_vertex_program, GL_ARB_vertex_shader,
GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev,
GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_blend_equation_separate,
GL_ATI_draw_buffers, GL_ATI_fragment_shader, GL_ATI_meminfo,
GL_ATI_separate_stencil, GL_ATI_texture_compression_3dc,
GL_ATI_texture_env_combine3, GL_ATI_texture_float,
GL_ATI_texture_mirror_once, GL_EXT_EGL_image_storage,
GL_EXT_EGL_image_storage_compression, GL_EXT_EGL_sync, GL_EXT_abgr,
GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_equation_separate,
GL_EXT_blend_func_separate, GL_EXT_blend_minmax, GL_EXT_blend_subtract,
GL_EXT_compiled_vertex_array, GL_EXT_copy_texture, GL_EXT_debug_label,
GL_EXT_demote_to_helper_invocation, GL_EXT_depth_bounds_test,
GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced,
GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit,
GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled,
GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB,
GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_memory_object,
GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays,
GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels,
GL_EXT_pixel_buffer_object, GL_EXT_point_parameters,
GL_EXT_polygon_offset_clamp, GL_EXT_provoking_vertex,
GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore,
GL_EXT_semaphore_fd, GL_EXT_separate_specular_color, GL_EXT_shader_clock,
GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store,
GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical,
GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap,
GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D,
GL_EXT_texture_array, GL_EXT_texture_buffer_object,
GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_latc,
GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp,
GL_EXT_texture_env_add, GL_EXT_texture_env_combine,
GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_filter_minmax, GL_EXT_texture_integer,
GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp,
GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB,
GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8,
GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm,
GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query,
GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra,
GL_EXT_vertex_attrib_64bit, GL_EXT_window_rectangles,
GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip,
GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,
GL_INTEL_blackhole_render, GL_KHR_blend_equation_advanced,
GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error,
GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior,
GL_KHR_robustness, GL_KHR_shader_subgroup,
GL_KHR_texture_compression_astc_ldr,
GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y,
GL_MESA_pack_invert, GL_MESA_shader_integer_functions,
GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba,
GL_MESA_window_pos, GL_NVX_gpu_memory_info, GL_NV_ES1_1_compatibility,
GL_NV_alpha_to_coverage_dither_control, GL_NV_blend_square,
GL_NV_compute_shader_derivatives, GL_NV_conditional_render,
GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_depth_clamp,
GL_NV_fog_distance, GL_NV_half_float, GL_NV_light_max_exponent,
GL_NV_packed_depth_stencil, GL_NV_primitive_restart,
GL_NV_shader_atomic_int64, GL_NV_texgen_reflection, GL_NV_texture_barrier,
GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image,
GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap,
GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp,
GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 25.3.3
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
GL_AMD_framebuffer_multisample_advanced, GL_AMD_performance_monitor,
GL_ANDROID_extension_pack_es31a, GL_ANGLE_pack_reverse_row_order,
GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5,
GL_APPLE_sync, GL_APPLE_texture_max_level, GL_EXT_EGL_image_storage,
GL_EXT_EGL_image_storage_compression, GL_EXT_base_instance,
GL_EXT_blend_func_extended, GL_EXT_blend_minmax, GL_EXT_buffer_storage,
GL_EXT_clear_texture, GL_EXT_clip_control, GL_EXT_clip_cull_distance,
GL_EXT_color_buffer_float, GL_EXT_color_buffer_half_float,
GL_EXT_compressed_ETC1_RGB8_sub_texture, GL_EXT_conservative_depth,
GL_EXT_copy_image, GL_EXT_debug_label, GL_EXT_demote_to_helper_invocation,
GL_EXT_depth_clamp, GL_EXT_discard_framebuffer,
GL_EXT_disjoint_timer_query, GL_EXT_draw_buffers,
GL_EXT_draw_buffers_indexed, GL_EXT_draw_elements_base_vertex,
GL_EXT_draw_instanced, GL_EXT_float_blend, GL_EXT_frag_depth,
GL_EXT_geometry_point_size, GL_EXT_geometry_shader, GL_EXT_gpu_shader5,
GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, GL_EXT_memory_object,
GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays,
GL_EXT_multi_draw_indirect, GL_EXT_occlusion_query_boolean,
GL_EXT_polygon_offset_clamp, GL_EXT_primitive_bounding_box,
GL_EXT_read_format_bgra, GL_EXT_render_snorm, GL_EXT_robustness,
GL_EXT_sRGB, GL_EXT_sRGB_write_control, GL_EXT_semaphore,
GL_EXT_semaphore_fd, GL_EXT_separate_shader_objects, GL_EXT_shader_clock,
GL_EXT_shader_group_vote, GL_EXT_shader_implicit_conversions,
GL_EXT_shader_integer_mix, GL_EXT_shader_io_blocks,
GL_EXT_shader_samples_identical, GL_EXT_shadow_samplers,
GL_EXT_tessellation_point_size, GL_EXT_tessellation_shader,
GL_EXT_texture_border_clamp, GL_EXT_texture_buffer,
GL_EXT_texture_compression_bptc, GL_EXT_texture_compression_dxt1,
GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc,
GL_EXT_texture_compression_s3tc_srgb, GL_EXT_texture_cube_map_array,
GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax,
GL_EXT_texture_format_BGRA8888, GL_EXT_texture_mirror_clamp_to_edge,
GL_EXT_texture_norm16, GL_EXT_texture_query_lod, GL_EXT_texture_rg,
GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8,
GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod,
GL_EXT_texture_storage, GL_EXT_texture_storage_compression,
GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_texture_view,
GL_EXT_unpack_subimage, GL_EXT_window_rectangles,
GL_INTEL_blackhole_render, GL_KHR_blend_equation_advanced,
GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error,
GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior,
GL_KHR_robustness, GL_KHR_shader_subgroup,
GL_KHR_texture_compression_astc_ldr,
GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_bgra,
GL_MESA_framebuffer_flip_y, GL_MESA_sampler_objects,
GL_MESA_shader_integer_functions, GL_MESA_texture_const_bandwidth,
GL_NV_alpha_to_coverage_dither_control, GL_NV_compute_shader_derivatives,
GL_NV_conditional_render, GL_NV_draw_buffers, GL_NV_fbo_color_attachments,
GL_NV_generate_mipmap_sRGB, GL_NV_image_formats, GL_NV_pack_subimage,
GL_NV_pixel_buffer_object, GL_NV_read_buffer, GL_NV_read_depth,
GL_NV_read_depth_stencil, GL_NV_read_stencil,
GL_NV_shader_noperspective_interpolation, GL_NV_texture_barrier,
GL_OES_EGL_image, GL_OES_EGL_image_external,
GL_OES_EGL_image_external_essl3, GL_OES_EGL_sync,
GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24,
GL_OES_depth_texture, GL_OES_depth_texture_cube_map,
GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex,
GL_OES_element_index_uint, GL_OES_fbo_render_mipmap,
GL_OES_geometry_point_size, GL_OES_geometry_shader,
GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer,
GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box,
GL_OES_required_internalformat, GL_OES_rgb8_rgba8, GL_OES_sample_shading,
GL_OES_sample_variables, GL_OES_shader_image_atomic,
GL_OES_shader_io_blocks, GL_OES_shader_multisample_interpolation,
GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context,
GL_OES_tessellation_point_size, GL_OES_tessellation_shader,
GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_buffer,
GL_OES_texture_cube_map_array, GL_OES_texture_float,
GL_OES_texture_float_linear, GL_OES_texture_half_float,
GL_OES_texture_half_float_linear, GL_OES_texture_npot,
GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array,
GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float,
GL_OES_viewport_array
[clipped here because post didn't work. Every line ended with "None"