diff options
-rw-r--r-- | README.asciidoc | 8 | ||||
-rw-r--r-- | doc/contributing.asciidoc | 10 | ||||
-rw-r--r-- | doc/faq.asciidoc | 6 | ||||
-rw-r--r-- | doc/install.asciidoc | 78 |
4 files changed, 37 insertions, 65 deletions
diff --git a/README.asciidoc b/README.asciidoc index 42dd8f034..a3cf8b270 100644 --- a/README.asciidoc +++ b/README.asciidoc @@ -110,8 +110,8 @@ Requirements The following software and libraries are required to run qutebrowser: * https://www.python.org/[Python] 3.6 or newer -* https://www.qt.io/[Qt] 5.7.1 or newer (5.14 recommended; support for < 5.11 - will be dropped with qutebrowser v2.0.0) with the following modules: +* https://www.qt.io/[Qt] 5.12.0 or newer (5.12 LTS or 5.15 recommended) + with the following modules: - QtCore / qtbase - QtQuick (part of qtbase in some distributions) - QtSQL (part of qtbase in some distributions) @@ -123,8 +123,8 @@ The following software and libraries are required to run qutebrowser: revision with known unpatched vulnerabilities. Please use it carefully and avoid visiting untrusted websites and using it for transmission of sensitive data.** -* https://www.riverbankcomputing.com/software/pyqt/intro[PyQt] 5.7.0 or newer - (5.14 recommended, support for < 5.11 will be dropped soon) for Python 3 +* https://www.riverbankcomputing.com/software/pyqt/intro[PyQt] 5.12.0 or newer + for Python 3 * https://pypi.python.org/pypi/setuptools/[pkg_resources/setuptools] * https://fdik.org/pyPEG/[pyPEG2] * http://jinja.pocoo.org/[jinja2] diff --git a/doc/contributing.asciidoc b/doc/contributing.asciidoc index b8c9b9010..3960dec27 100644 --- a/doc/contributing.asciidoc +++ b/doc/contributing.asciidoc @@ -112,8 +112,8 @@ Currently, the following tox environments are available: * Tests using https://www.pytest.org[pytest]: - `py36`, `py37`, ...: Run pytest for python 3.6/3.7/... with the system-wide PyQt. - - `py36-pyqt57`, ..., `py36-pyqt59`: Run pytest with the given PyQt version (`py35-*` also works). - - `py36-pyqt59-cov`: Run with coverage support (other Python/PyQt versions work too). + - `py36-pyqt512`, ..., `py36-pyqt515`: Run pytest with the given PyQt version (`py35-*` also works). + - `py36-pyqt515-cov`: Run with coverage support (other Python/PyQt versions work too). * `flake8`: Run various linting checks via https://pypi.python.org/pypi/flake8[flake8]. * `vulture`: Run https://pypi.python.org/pypi/vulture[vulture] to find unused code portions. @@ -586,9 +586,9 @@ can be useful for debugging: - chrome://gpuclean/ (crashes the current renderer process!) - chrome://ppapiflashcrash/ - chrome://ppapiflashhang/ -- chrome://quota-internals/ (Qt 5.11) -- chrome://taskscheduler-internals/ (Qt 5.11) -- chrome://sandbox/ (Qt 5.11, Linux only) +- chrome://quota-internals/ +- chrome://taskscheduler-internals/ +- chrome://sandbox/ (Linux only) QtWebEngine internals ~~~~~~~~~~~~~~~~~~~~~ diff --git a/doc/faq.asciidoc b/doc/faq.asciidoc index 275f82df2..d14cea86a 100644 --- a/doc/faq.asciidoc +++ b/doc/faq.asciidoc @@ -190,7 +190,6 @@ For QtWebKit: + For QtWebEngine: -. Make sure your versions of PyQt and Qt are 5.8 or higher. . Use `dictcli.py` script to install dictionaries. Run the script with `-h` for the parameter description. . Set `spellcheck.languages` to the desired list of languages, e.g.: @@ -253,11 +252,6 @@ Note that there are some missing features which you may run into: . Some scripts expect `GM_xmlhttpRequest` to ignore Cross Origin Resource Sharing restrictions, this is currently not supported, so scripts making requests to third party sites will often fail to function correctly. -. If your backend is a QtWebEngine version 5.8, 5.9 or 5.10 then regular - expressions are not supported in `@include` or `@exclude` rules. If your - script uses them you can re-write them to use glob expressions or convert - them to `@match` rules. - See https://wiki.greasespot.net/Metadata_Block[the wiki] for more info. . Any greasemonkey API function to do with adding UI elements is not currently supported. That means context menu extentensions and background pages. diff --git a/doc/install.asciidoc b/doc/install.asciidoc index 9c71bf2b5..f7a3d8a60 100644 --- a/doc/install.asciidoc +++ b/doc/install.asciidoc @@ -28,12 +28,15 @@ How to install qutebrowser depends a lot on the version of Debian/Ubuntu you're running. [[ubuntu1604]] -Ubuntu 16.04 LTS / Linux Mint 18 -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Debian Stretch / Ubuntu 16.04 LTS / Linux Mint 18 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Debian Stretch does have QtWebEngine packaged, but only in a very old and insecure +version (Qt 5.7, based on a Chromium from March 2016). Furthermore, it packages Python +3.5 which is not supported anymore since qutebrowser v2.0.0. Ubuntu 16.04 doesn't come with an up-to-date engine (a new enough QtWebKit, or -QtWebEngine). It also comes with Python 3.5 which is not supported anymore since -qutebrowser v2.0.0. +QtWebEngine) and also comes with Python 3.5. You should be able to install a newer Python (3.6+) using the https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa[deadsnakes PPA] or @@ -51,51 +54,23 @@ Note you'll need some basic libraries to use the virtualenv-installed PyQt: // FIXME not needed anymore? // libxi6 libxrender1 libegl1-mesa -Debian Stretch -~~~~~~~~~~~~~~ - -WARNING: Debian Stretch packages Qt 5.7 which is very old (based on a Chromium -from March 2016 with security fixes from November 2016) and insecure. It is also -https://www.debian.org/releases/stretch/amd64/release-notes/ch-information.en.html#browser-security[not covered] -by Debian's security patches. Support for it will be dropped in qutebrowser -v2.0.0, preliminarily planned for December 2020. It is recommended to -<<tox,install qutebrowser in a virtualenv>> with a newer PyQt/Qt binary -instead. - -Debian Stretch comes with QtWebEngine in the repositories. This makes it possible -to install qutebrowser via the Debian package. - -You'll need to download three packages: - -- https://packages.debian.org/sid/all/python3-pypeg2/download[PyPEG2] (a library - used by qutebrowser which is not in the earlier repositories) -- https://packages.debian.org/sid/all/qutebrowser/download[qutebrowser] itself -- Either https://packages.debian.org/sid/all/qutebrowser-qtwebengine/download[qutebrowser-qtwebengine] - or https://packages.debian.org/sid/all/qutebrowser-qtwebkit/download[qutebrowser-qtwebkit] - (or both) depending on the backend you want to use. QtWebEngine is the - default/recommended choice. - -After downloading, install the packages (make sure to install all the -downloaded qutebrowser deb files in one apt command): +Debian Buster / Ubuntu 18.04 LTS / Linux Mint 19 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ----- -# apt install ./python3-pypeg2_*_all.deb -# apt install ./qutebrowser*.deb ----- - -For an update after the initial install, you only need to download/install the -qutebrowser package. +Debian Buster packages qutebrowser, but ships a very old version (v1.6.1 from March +2019). The QtWebEngine library used for rendering web contents is also very old (Qt +5.11, based on a Chromium from March 2018) and insecure. It is +https://www.debian.org/releases/buster/amd64/release-notes/ch-information.en.html#browser-security[not covered] +by Debian's security patches. It's recommended to <<tox,install qutebrowser in a +virtualenv>> with a newer PyQt/Qt binary instead. -Debian Buster / Ubuntu 18.04 LTS / Linux Mint 19 (or newer) -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +With Ubuntu 18.04, the situation looks similar (but worse): There, qutebrowser v1.1.1 +from January 2018 is packaged, with QtWebEngine 5.9 based on a Chromium from January +2017. It's recommended to either upgrade to Ubuntu 20.04 LTS or <<tox,install +qutebrowser in a virtualenv>> with a newer PyQt/Qt binary instead. -WARNING: Debian Buster packages Qt 5.11 which is very old (based on a Chromium -from March 2018 with security fixes from November 2018) and insecure. It is also -https://www.debian.org/releases/buster/amd64/release-notes/ch-information.en.html#browser-security[not covered] -by Debian's security patches. Support for it will be dropped in qutebrowser -v2.0.0, preliminarily planned for December 2020. It is recommended to -<<tox,install qutebrowser in a virtualenv>> with a newer PyQt/Qt binary -instead. +Ubuntu 20.04 LTS / Linux Mint 20 (or newer) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ With those distributions, qutebrowser is in the official repositories, and you can install it with apt: @@ -108,7 +83,8 @@ Additional hints ~~~~~~~~~~~~~~~~ - If running from git, run the following to generate the documentation for the - `:help` command: + `:help` command (the `mkvenv.py` script used with a virtualenv install already does + this for you): + ---- # apt install --no-install-recommends asciidoc @@ -116,14 +92,16 @@ $ python3 scripts/asciidoc2html.py ---- - If you prefer using QtWebKit, there's QtWebKit 5.212 available in - https://packages.debian.org/buster/libqt5webkit5[Debian Testing]. Note - however that it is based on an upstream WebKit from September 2016 with known - security issues and no sandboxing or process isolation. + Ubuntu 18.04 / Debian Buster or newer. Note however that it is based on an upstream + WebKit from September 2016 with known security issues and no sandboxing or process + isolation. - If video or sound don't work with QtWebKit, try installing the gstreamer plugins: + ---- # apt install gstreamer1.0-plugins-{bad,base,good,ugly} ---- ++ +Note those are only needed with QtWebKit, not with the (default) QtWebEngine backend. On Fedora --------- |