summaryrefslogtreecommitdiff
path: root/qutebrowser/qt/sip.py
blob: 6430aa482865b5473be43b984cff498db21b3fb2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# vim: ft=python fileencoding=utf-8 sts=4 sw=4 et:
# FIXME:qt6 (lint)
# pylint: disable=missing-module-docstring,wildcard-import,unused-wildcard-import,no-else-raise
# flake8: noqa

from qutebrowser.qt import machinery

# While upstream recommends using PyQt6.sip ever since PyQt6 5.11, some distributions
# still package later versions of PyQt6 with a top-level "sip" rather than "PyQt6.sip".
VENDORED_SIP=False

if machinery.USE_PYSIDE6:
    raise machinery.Unavailable()
elif machinery.USE_PYQT5:
    try:
        from PyQt5.sip import *
        VENDORED_SIP=True
    except ImportError:
        pass
elif machinery.USE_PYQT6:
    try:
        from PyQt6.sip import *
        VENDORED_SIP=True
    except ImportError:
        pass

else:
    raise machinery.UnknownWrapper()

if not VENDORED_SIP:
    from sip import *  # type: ignore[import]