Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recommended build process for QtWebEngine with proprietary codecs #5466

Open
Shellcat-Zero opened this issue May 26, 2020 · 18 comments
Open
Labels
component: docs Issues related to the documentation. priority: 3 - wishlist Issues which are not important and/or where it's unclear whether they're feasible.

Comments

@Shellcat-Zero
Copy link

I've installed qutebrowser with pip to get a newer version than what was available from the Ubuntu (18.04) repo, since v1.1.1 has issues related to #5182. I was hoping to compile QtWebEngine from source to make use of the proprietary codecs, and was hoping to get some input on this, assuming others here do this semi-regularly (or would like to generalize the process).

I've found this gist, and was hoping others could point out any necessary modifications needed specifically for qutebrowser or anything that could further generalize it across platforms. I was hoping that if it can be sufficiently scripted, then maybe it could be included in qutebrowser/scripts to help others, and possibly documented in the install process. Thanks.

@The-Compiler
Copy link
Member

Note you can run a newer qutebrowser version against Ubuntu's Qt, see the install instructions.

@The-Compiler The-Compiler added component: docs Issues related to the documentation. priority: 3 - wishlist Issues which are not important and/or where it's unclear whether they're feasible. labels May 26, 2020
@Shellcat-Zero
Copy link
Author

Thanks @The-Compiler, I've had some issues there with the instructions. Using the 'link' method for the system-wide Qt, I get some codec errors when testing the browser against this page. AAC & MPEG4 do not play, but MPEG4 also does not play in Chromium either:

[1:19:0526/034627.937686:ERROR:render_media_log.cc(27)] MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"FFmpegDemuxer: no supported streams"}
[1:1:0526/034627.937956:ERROR:render_media_log.cc(27)] MediaEvent: PIPELINE_ERROR DEMUXER_ERROR_NO_SUPPORTED_STREAMS
[1:19:0526/034627.964305:ERROR:render_media_log.cc(27)] MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"FFmpegDemuxer: no supported streams"}
[1:1:0526/034627.964428:ERROR:render_media_log.cc(27)] MediaEvent: PIPELINE_ERROR DEMUXER_ERROR_NO_SUPPORTED_STREAMS
[1:19:0526/034630.309705:ERROR:render_media_log.cc(27)] MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"FFmpegDemuxer: open context failed"}
[1:1:0526/034630.309988:ERROR:render_media_log.cc(27)] MediaEvent: PIPELINE_ERROR DEMUXER_ERROR_COULD_NOT_OPEN

When using the 'source' method from the instructions, the install fails and I am not sure of the cause:

    Querying qmake about your Qt installation...
    /usr/bin/qmake -query
    Traceback (most recent call last):
      File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 126, in prepare_metadata_for_build_wheel
        hook = backend.prepare_metadata_for_build_wheel
    AttributeError: module 'sipbuild.api' has no attribute 'prepare_metadata_for_build_wheel'

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 280, in <module>
        main()
      File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 263, in main
        json_out['return_val'] = hook(**hook_input['kwargs'])
      File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 130, in prepare_metadata_for_build_wheel
        return _get_wheel_metadata_from_wheel(backend, metadata_directory,
      File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py", line 159, in _get_wheel_metadata_from_wheel
        whl_basename = backend.build_wheel(metadata_directory, config_settings)
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/sipbuild/api.py", line 51, in build_wheel
        project = AbstractProject.bootstrap('pep517')
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/sipbuild/abstract_project.py", line 82, in bootstrap
        project.setup(pyproject, tool, tool_description)
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/sipbuild/project.py", line 410, in setup
        self.apply_user_defaults(tool)
      File "project.py", line 62, in apply_user_defaults
        super().apply_user_defaults(tool)
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/pyqtbuild/project.py", line 86, in apply_user_defaults
        super().apply_user_defaults(tool)
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/sipbuild/project.py", line 215, in apply_user_defaults
        self.builder.apply_user_defaults(tool)
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/pyqtbuild/builder.py", line 76, in apply_user_defaults
        self._get_qt_configuration()
      File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/pyqtbuild/builder.py", line 436, in _get_qt_configuration
        for line in project.read_command_pipe([self.qmake, '-query']):
                  File "/tmp/pip-build-env-vqbs8ogy/overlay/lib/python3.8/site-packages/sipbuild/project.py", line 373, in read_command_pipe
        raise UserException(
    sipbuild.exceptions.UserException
    Preparing wheel metadata ... error
ERROR: Command errored out with exit status 1: /home/username/Documents/qutebrowser/.venv/bin/python /home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpb2tgpe4b Check the logs for full command output.
Exception information:
Traceback (most recent call last):
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/cli/base_command.py", line 188, in _main
    status = self.run(options, args)
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/cli/req_command.py", line 185, in wrapper
    return func(self, options, args)
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/commands/install.py", line 332, in run
    requirement_set = resolver.resolve(
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/resolution/legacy/resolver.py", line 179, in resolve
    discovered_reqs.extend(self._resolve_one(requirement_set, req))
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/resolution/legacy/resolver.py", line 362, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/resolution/legacy/resolver.py", line 314, in _get_abstract_dist_for
    abstract_dist = self.preparer.prepare_linked_requirement(req)
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/operations/prepare.py", line 487, in prepare_linked_requirement
    abstract_dist = _get_prepared_distribution(
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/operations/prepare.py", line 91, in _get_prepared_distribution
    abstract_dist.prepare_distribution_metadata(finder, build_isolation)
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/distributions/sdist.py", line 40, in prepare_distribution_metadata
    self.req.prepare_metadata()
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/req/req_install.py", line 550, in prepare_metadata
    self.metadata_directory = self._generate_metadata()
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/req/req_install.py", line 535, in _generate_metadata
    return generate_metadata(
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/operations/build/metadata.py", line 36, in generate_metadata
    distinfo_dir = backend.prepare_metadata_for_build_wheel(
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/wrappers.py", line 176, in prepare_metadata_for_build_wheel
    return self._call_hook('prepare_metadata_for_build_wheel', {
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/wrappers.py", line 255, in _call_hook
    self._subprocess_runner(
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/utils/subprocess.py", line 270, in runner
    call_subprocess(
  File "/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_internal/utils/subprocess.py", line 241, in call_subprocess
    raise InstallationError(exc_msg)
pip._internal.exceptions.InstallationError: Command errored out with exit status 1: /home/username/Documents/qutebrowser/.venv/bin/python /home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpb2tgpe4b Check the logs for full command output.
Removed PyQt5==5.14.2 from https://files.pythonhosted.org/packages/4d/81/b9a66a28fb9a7bbeb60e266f06ebc4703e7e42b99e3609bf1b58ddd232b9/PyQt5-5.14.2.tar.gz#sha256=bd230c6fd699eabf1ceb51e13a8b79b74c00a80272c622427b80141a22269eb0 (from -r misc/requirements/requirements-pyqt.txt (line 3)) from build tracker '/tmp/pip-req-tracker-4dkn5spm'
Removed build tracker: '/tmp/pip-req-tracker-4dkn5spm'
Subprocess failed, exiting

My goal is largely just to see how well I can cover all of the proprietary codecs, but I wasn't aware of any open issues regarding the codecs (if there are any).

@The-Compiler
Copy link
Member

Those errors with --pyqt-type=link are weird - can you show your full :version output with that?

@Shellcat-Zero
Copy link
Author

Sure, I'll also just note here that the config.py is the vanilla file generated from config-write-py:

qutebrowser v1.11.1
Git commit: e2475b9f2 (2020-05-25 17:56:17 +0200)
Backend: QtWebEngine (Chromium 77.0.3865.129)
Qt: 5.14.2

CPython: 3.8.2
PyQt: 5.14.2

sip: 5.1.2
colorama: 0.4.3
pypeg2: 2.15
jinja2: 2.11.2
pygments: 2.6.1
yaml: 5.3.1
cssutils: 1.0.2 $Id$
attr: 19.3.0
PyQt5.QtWebEngineWidgets: yes
PyQt5.QtWebEngine: 5.14.0
PyQt5.QtWebKitWidgets: no
pdf.js: no
sqlite: 3.31.1
QtNetwork SSL: OpenSSL 1.1.1g  21 Apr 2020

Style: QFusionStyle
Platform plugin: xcb
Platform: Linux-5.3.0-51-generic-x86_64-with-glibc2.10, 64bit
Linux distribution: Ubuntu 18.04.4 LTS (ubuntu)
Frozen: False
Imported from /home/username/Documents/qutebrowser/qutebrowser
Using Python from /home/username/Documents/qutebrowser/.venv/bin/python3
Qt library executable path: /home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/PyQt5/Qt/libexec, data path: /home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/PyQt5/Qt

Paths:
cache: /home/username/.cache/qutebrowser
config: /home/username/.config/qutebrowser
data: /home/username/.local/share/qutebrowser
runtime: /run/user/1000/qutebrowser

Autoconfig loaded: no
Config.py: /home/username/.config/qutebrowser/config.py has been loaded
Uptime: 0:01:03

@The-Compiler
Copy link
Member

That's still using a Qt bundled with PyQt5:

Qt library executable path: /home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/PyQt5/Qt/libexec, data path: /home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/PyQt5/Qt

Are you sure you did run mkvenv.py with --pyqt-type link there (and also restart qutebrowser)?

@Shellcat-Zero
Copy link
Author

Yes, I just closed the browser, ran rm -rf .venv and re-ran python mkvenv.py --pyqt-type link, which now shows the exact same Qt library executable path, along with the same codec errors. The python 3.8 that I am using to run the install is provided by miniconda (Anaconda) if that should make any difference.

@The-Compiler
Copy link
Member

Okay, so you are probably shadowing Ubuntu's PyQt/Qt with an anaconda-installed PyQt or something. What does ls -l ~/Documents/qutebrowser/.venv/lib/python3.8/site-packages/PyQt5 say?

@Shellcat-Zero
Copy link
Author

Ah, yes, you're correct, it shows:

/home/username/Documents/qutebrowser/.venv/lib/python3.8/site-packages/PyQt5 -> /home/username/miniconda3/lib/python3.8/site-packages/PyQt5

I bypassed Anaconda, then fixed a bunch of missing Qt dependencies (which I'll document here later, since they're not mentioned in the install doc), and now the browser seems to work on all codec tests from that page. The downside seems to be that I am now using a very old version of Qt, being 5.9.5, so I'm guessing the source build method or prior bash script (gist) would solve the outdated Qt problem, if either one of those can be sorted out.

I am very interested in seeing a Conda package for qutebrowser, negating the need for a .venv install and numerous apt (system) dependencies. This is exactly the problem that Conda solves in the python ecosystem, and there are many similar projects which are now packaged this way (e.g. FreeCAD).

@The-Compiler
Copy link
Member

The-Compiler commented May 26, 2020

then fixed a bunch of missing Qt dependencies (which I'll document here later, since they're not mentioned in the install doc)

A PR to the install docs would be great! You can even do that from inside GitHub FWIW.

The downside seems to be that I am now using a very old version of Qt, being 5.9.5

True - support for Qt < 5.11 will probably be dropped in qutebrowser v2.0.

so I'm guessing the source build method or prior bash script (gist) would solve the outdated Qt problem, if either one of those can be sorted out.

Note the source build method only takes care of building PyQt. You'll still need to build Qt before that. As for building Qt I'm sceptical that this kind of thing belongs in the qutebrowser docs, it'd probably be quite a bit of work to keep those up to date, and I'm not volunteering to do that 😉 FWIW there's various documentation in Qt's docs:

Something that might be good (because it comes up from time to time) is a general overview on how to compile PyQt/Qt and make qutebrowser use that. Then again, pretty much anyone attempting this (especially on Windows/macOS) has given up as far as I know, as building Qt is a pain even if it works (takes at least 16 GB of RAM and usually multiple hours to build, and you should do so with every updated release).

edit: Another solution might be to upgrade to Ubuntu 20.04, FWIW.

I am very interested in seeing a Conda package for qutebrowser, negating the need for a .venv install and numerous apt (system) dependencies. This is exactly the problem that Conda solves in the python ecosystem, and there are many similar projects which are now packaged this way (e.g. FreeCAD).

I don't really see the benefit, but if someone wants to take up that task (and maintains the package), I'm fine with including that in the installation docs.

@Shellcat-Zero
Copy link
Author

A PR to the install docs would be great! You can even do that from inside GitHub FWIW

I may do that, but I might create the Conda package first to lessen the need for instructions on every different OS, if I can figure out how to either reliably compile Qt or grab updated binaries. If there are any drawbacks with Conda in relation to qutebrowser, I would be interested to hear what they are.

edit: Another solution might be to upgrade to Ubuntu 20.04, FWIW.

There are still quite a few vendors who have not updated their software or documentation for 20.04, unfortunately, so that remains a barrier for me at least for the moment before upgrading.

@herself
Copy link

herself commented Jul 1, 2021

I have had a lot of issues with installing this on Ubuntu 20.04 earlier (recently mainly because Qt on this version is pretty old...) and managed to get codecs working with the help of --pyqt-type=link.

Here's how:

I know this is necroposting, but maybe it'll help someone with the same issue I had, cheers!

@gerrywastaken
Copy link

Similar issues on 20.04

trash .venv/
scripts/mkvenv.py --pyqt-type link
.venv/bin/python3 -m qutebrowser

Testing on http://demo.nimius.net/video_test/

[432839:15:0719/230606.105964:ERROR:batching_media_log.cc(38)] MediaEvent: {"error":"FFmpegDemuxer: open context failed"}
[432839:1:0719/230606.106219:ERROR:batching_media_log.cc(35)] MediaEvent: {"pipeline_error":12}
[432839:15:0719/230606.167116:ERROR:batching_media_log.cc(38)] MediaEvent: {"error":"FFmpegDemuxer: no supported streams"}
[432839:1:0719/230606.167286:ERROR:batching_media_log.cc(35)] MediaEvent: {"pipeline_error":14}
[432839:15:0719/230606.237740:ERROR:batching_media_log.cc(38)] MediaEvent: {"error":"FFmpegDemuxer: no supported streams"}
[432839:1:0719/230606.237973:ERROR:batching_media_log.cc(35)] MediaEvent: {"pipeline_error":14}

:version output

Version info
         ______     ,,
    ,.-"`      | ,-` |
  .^           ||    |
 /    ,-*^|    ||    |
;    /    |    ||    ;-*```^*.
;   ;     |    |;,-*`         \
|   |     |  ,-*`    ,-"""\    \
|    \   ,-"`    ,-^`|     \    |
 \    `^^    ,-;|    |     ;    |
  *;     ,-*`  ||    |     /   ;;
    `^^`` |    ||    |   ,^    /
          |    ||    `^^`    ,^
          |  _,"|        _,-"
          -*`   ****"""``

qutebrowser v2.3.0
Git commit: e1d164d81 on master (2021-07-19 19:45:09 +0200)
Backend: QtWebEngine 5.15.2, based on Chromium 83.0.4103.122
Qt: 5.15.2

CPython: 3.9.1
PyQt: 5.15.4

sip: 6.1.0.dev2104271705
colorama: 0.4.4
jinja2: 3.0.1
pygments: 2.9.0
yaml: 5.4.1
adblock: 0.5.0
PyQt5.QtWebEngineWidgets: yes
PyQt5.QtWebEngine: 5.15.4
PyQt5.QtWebKitWidgets: no
pdf.js: no
sqlite: 3.33.0
QtNetwork SSL: OpenSSL 1.1.1f  31 Mar 2020

Style: QFusionStyle
Platform plugin: xcb
OpenGL: NVIDIA Corporation, 4.6.0 NVIDIA 460.80
Platform: Linux-5.4.0-77-generic-x86_64-with-glibc2.31, 64bit
Linux distribution: Ubuntu 20.04.2 LTS (ubuntu)
Frozen: False
Imported from /home/<redacted>/src/thirdparty/qutebrowser/qutebrowser
Using Python from /home/<redacted>/src/thirdparty/qutebrowser/.venv/bin/python3
Qt library executable path: /home/<redacted>/src/thirdparty/qutebrowser/.venv/lib/python3.9/site-packages/PyQt5/Qt5/libexec, data path: /home/<redacted>/src/thirdparty/qutebrowser/.venv/lib/python3.9/site-packages/PyQt5/Qt5

Paths:
cache: /home/<redacted>/.cache/qutebrowser
config: /home/<redacted>/.config/qutebrowser
data: /home/<redacted>/.local/share/qutebrowser
runtime: /run/user/1001/qutebrowser
system data: /usr/share/qutebrowser

Autoconfig loaded: no
Config.py: /home/<redacted>/.config/qutebrowser/config.py has been loaded
Uptime: 0:00:01

The standard install from the Ubuntu repository appears to have similar issues on that site and neither version plays Udemy videos. I've seen quite a few issues where it seems that the suggestion is that proprietary codecs should not be an issue on the default install on Ubuntu 20.04. This hasn't been the case for me.

@The-Compiler
Copy link
Member

According to:

Qt library executable path: /home//src/thirdparty/qutebrowser/.venv/lib/python3.9/site-packages/PyQt5/Qt5/libexec

You're not using Ubuntu's Qt, but one shipped with a binary PyQt install. I don't think this is the virtualenv you've created with --pyqt-type link above. Or perhaps you already had an existing instance open (which then gets reused) when testing the new one, consider using --temp-basedir for tests like this.

@gerrywastaken
Copy link

According to:

Qt library executable path: /home//src/thirdparty/qutebrowser/.venv/lib/python3.9/site-packages/PyQt5/Qt5/libexec

You're not using Ubuntu's Qt, but one shipped with a binary PyQt install.

That may be correct. I ran a pip uninstall pyqt5 and it installed the version installed via asdf under ~/.asdf.

Then I tried running qutebrowser again:

>.venv/bin/python3 -m qutebrowser --temp-basedir
Fatal error: PyQt5.QtCore is required to run qutebrowser but could not be imported! Maybe it's not installed?

The error encountered was:
No module named 'PyQt5'

Please search for the python3 version of PyQt5.QtCore in your distributions packages, or see https://github.com/qutebrowser/qutebrowser/blob/master/doc/install.asciidoc

If you installed a qutebrowser package for your distribution, please report this as a bug.

I don't think this is the virtualenv you've created with --pyqt-type link above. Or perhaps you already had an existing instance open (which then gets reused) when testing the new one, consider using --temp-basedir for tests like this.

It is getting generated when I run mkvenv.py, so I'm not sure abou that. I also made sure to close other windows before running it for exactly the reason you stated.

@gerrywastaken
Copy link

gerrywastaken commented Jul 20, 2021

Solution run:
/usr/bin/python3 scripts/mkvenv.py --pyqt-type link

Don't run:
python3 scripts/mkvenv.py --pyqt-type link

As it will just use the first Python3 in your PATH, not necessarily the system Python. Also, running ./scripts/mkvenv.py --pyqt-type link as I and others are probably doing will just use the first Python2 it finds in the system paths:

#!/usr/bin/env python3

Which if codecs rely on using the system's python, won't work all that well.

To quote a stack exchange answer on the topic:

The advantage of #!/usr/bin/env python is that it will use whatever python executable appears first in the user's $PATH.

The disadvantage of #!/usr/bin/env python is that it will use whatever python executable appears first in the user's $PATH.

That means that the script could behave differently depending on who runs it. For one user, it might use the /usr/bin/python that was installed with the OS. For another, it might use an experimental /home/phred/bin/python that doesn't quite work correctly.
-- https://unix.stackexchange.com/a/29620/13779

I think the docs should specify that you need to use the absolute path to the system python when creating the virtualenv. We should also remove the shebang from the creation script so that it errors if somebody tries running it directly. Finally I think the Ubuntu 20.04 install instructions should be updated so that they stop claiming that people can just install it directly from apt as this will give them a very old version that doesn't even seem to use the codecs.

Would you like me to create a PR for this?

Off topic:

@herself re: "necroposting". Knowledge on a topic should be aloud to evolve over time. The idea that a version of a topic contains all that should ever be said after a certain period is one of the nuttiest widespread anti-patterns. People are free to unsubscribe from topics. However, stopping new information from coming to light because of when it was discovered only ensures Google will be filled with outdated spam/misinformation. So I'm grateful for the information you added.

@The-Compiler
Copy link
Member

I think the docs should specify that you need to use the absolute path to the system python when creating the virtualenv.

I disagree, at least as a general advice. There are reasons why you might want to use it with another Python, and if you changed your default Python, you should be aware of having done so.

I think it's a good idea to clarify that --pyqt-type link uses the Qt install of the Python you invoke it with. Do you want to open a PR for that?

We should also remove the shebang from the creation script so that it errors if somebody tries running it directly.

I don't think so, for the same reasons as above.

Finally I think the Ubuntu 20.04 install instructions should be updated so that they stop claiming that people can just install it directly from apt as this will give them a very old version

We should probably point to the virtualenv install method to get a newer install, but I'm against removing them entirely.

that doesn't even seem to use the codecs.

I don't follow, I'd expect those to work fine.

Would you like me to create a PR for this?

With the caveats above, yes please!

@gerrywastaken
Copy link

and if you changed your default Python, you should be aware of having done so.

It's one thing to be aware that you installed Python at some stage for some reason. It's quite another to understand how that interacts with the functioning of qutebrowser's install process. I think the current docs make a lot of assumptions about things that should be known by people wanting to try out qutebrowser.

I don't think it's obvious how having another python3 installed impacts mkvenv.py:

trash .venv/
scripts/mkvenv.py --pyqt-type link
.venv/bin/python3 -m qutebrowser

I don't think this is the virtualenv you've created with --pyqt-type link above.

@Suundumused
Copy link

I've been for years trying to build it, never got success...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: docs Issues related to the documentation. priority: 3 - wishlist Issues which are not important and/or where it's unclear whether they're feasible.
Projects
None yet
Development

No branches or pull requests

5 participants