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

OpenSearch support #717

Open
The-Compiler opened this issue Jun 1, 2015 · 4 comments
Open

OpenSearch support #717

The-Compiler opened this issue Jun 1, 2015 · 4 comments
Labels
priority: 3 - wishlist Issues which are not important and/or where it's unclear whether they're feasible.

Comments

@The-Compiler
Copy link
Member

To make it easier to add search engines, OpenSearch should probably be supported, with a :searchengine-add command or so to add the engine.

This should probably be done after the config migration (#499).

There's opensearch on PyPI, but maybe parsing the bits we actually need from hand (via xml.etree or Qt classes) might be easier.

@The-Compiler
Copy link
Member Author

Some kind of subtle icon could also be shown in the status bar, to make it clear there actually is custom search engine support - I got feedback by someone who wasn't aware of that.

@The-Compiler The-Compiler added the priority: 3 - wishlist Issues which are not important and/or where it's unclear whether they're feasible. label Oct 1, 2015
@wasamasa
Copy link
Contributor

Meanwhile, I've figured out a workflow to make manual migration from OpenSearch (as found via Mycroft) to Qutebrowser a bit easier:

  • Have an ID of the Mycroft search ready (like, by hovering over the entry)
  • Enter ID on http://mycroftproject.com/submitos.html and click the "Load" button
  • Copy URL from "Search URL" field
  • Delete "searchTerms" in it
  • Use URL in your config file
  • Repeat steps until done

This was referenced Jan 17, 2021
@The-Compiler
Copy link
Member Author

In #6049, @samyak-jain mentioned:

Regarding xml parsing, your concerns are fair. The official python docs seem to recommend https://pypi.org/project/defusedxml/.

Perhaps we can still get away with xml.etree from the stdlib though, see the XML vulnerabilities part of the stdlib docs. I'm not too worried about Denial of Service attacks, especially as long as we have some kind of :search-engine-add (or whatever) command and don't automatically parse them. Chances are there are other vectors how websites could bring the browser process to its knees. As long as other attacks (notably including local files) aren't a problem, I think that's a fair trade-off.

@samyak-jain
Copy link

@The-Compiler Yeah, looking at the vulnerabilities, I agree.
Like @rcorre mentioned in #6049, Billion laughs/exponential blowup shoudn't be a major problem for us so I think we can get away with using etree.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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

3 participants