Skip to main content

qutebrowser profile manager

Project description

qutebrowser profile manager

builds.sr.ht status PyPI

qbpm (qutebrowser profile manager) is a tool for creating, managing, and running qutebrowser profiles. Profile support isn't built in to qutebrowser, at least not directly, but it does have a --basedir flag which allows qutebrowser to use any directory as the location of its config and data and effectively act as a profile. qbpm creates profiles that source your main qutebrowser config.py, but have their own separate autoconfig.yml, bookmarks, cookies, history, and other data. Profiles can be run by starting qutebrowser with the appropriate --basedir, or more conveniently using the qbpm launch and qbpm choose commands.

qutebrowser shares session depending on the basedir, so launching the same profile twice will result in two windows sharing a session, which means running :quit in one will exit both and launching the profile again will reopen both windows. But launching two distinct profiles will start two entirely separate instances of qutebrowser which can be opened and closed independently.

Usage

To create a new profile called "python" and launch it with the python docs open:

$ qbpm new python
$ qbpm launch python docs.python.org

Note that all arguments after qbpm launch PROFILE are passed to qutebrowser, so options can be passed too: qbpm launch python --target window pypi.org.

If you have multiple profiles you can use qbpm choose to bring up a list of profiles and select one to launch. Depending on what your system has available the menu may be dmenu, fuzzel, fzf, an applescript dialog, or one of many other menu programs qbpm can detect. Any dmenu-compatible menu can be used with --menu, e.g. qbpm choose --menu 'fuzzel --dmenu'. As with qbpm launch, extra arguments are passed to qutebrowser.

Run qbpm --help to see other available commands.

By default when you create a new profile a .desktop file is created that launches the profile. This launcher does not depend on qbpm at all, so if you want you can run qbpm new once and keep using the profile without needing qbpm installed on your system.

Installation

If you use Nix, you can install or run qbpm as a Nix flake. For example, to run qbpm without installing it you can use nix run github:pvsr/qbpm -- new my-profile.

On Arch and derivatives, you can install the AUR package: qbpm-git.

Otherwise you can install directly from PyPI using uv, pip, or your preferred client. With uv it's uv tool run qbpm to run qbpm without installing and uv tool install qbpm to install to ~/.local/bin. The downside of going through PyPI is that the man page and shell completions will not be installed automatically.

On Linux you can copy contrib/qbpm.desktop to ~/.local/share/applications to create a qbpm desktop application that runs qbpm choose.

MacOS

Nix and uv will install qbpm as a command-line application, but if you want a native Mac application you can download contrib/qbpm.platypus, install platypus, and create a qbpm app with platypus -P qbpm.platypus /Applications/qbpm.app. That will also make qbpm available as a default browser in System Preferences > General > Default web browser.

Note that there is currently a qutebrowser bug that results in unnecessary file:///* tabs being opened.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qbpm-2.3.tar.gz (24.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qbpm-2.3-py3-none-any.whl (26.9 kB view details)

Uploaded Python 3

File details

Details for the file qbpm-2.3.tar.gz.

File metadata

  • Download URL: qbpm-2.3.tar.gz
  • Upload date:
  • Size: 24.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for qbpm-2.3.tar.gz
Algorithm Hash digest
SHA256 df2f4588ae99c08b3464ead4952278542e06a4d79658f8fb51ded0a5581155ff
MD5 98fa6584d267a000862603200f723200
BLAKE2b-256 b2482d2ffb53da8e8311a334adad1fabd8e272db39173a6fed3e48568cd3e9f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbpm-2.3.tar.gz:

Publisher: publish.yml on pvsr/qbpm

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file qbpm-2.3-py3-none-any.whl.

File metadata

  • Download URL: qbpm-2.3-py3-none-any.whl
  • Upload date:
  • Size: 26.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for qbpm-2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1406a70b7af2346ae14dc8e5f007119f1b7dcbcbcf045281e6beb1ed90a16a13
MD5 db37714d497d3e0a44223eb9d3c0b052
BLAKE2b-256 1a250625dd0f9727856d7c7b488454eecb8d87713430f3f07516b63231c5b5d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for qbpm-2.3-py3-none-any.whl:

Publisher: publish.yml on pvsr/qbpm

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page