qutebrowser profile manager#
qutebrowser profile manager (qbpm) is a tool for creating and managing
qutebrowser profiles. There isn't
any built in concept of profiles in qutebrowser, but there is a --basedir
flag which allows you to use any random directory to store qutebrowser config
and data. By default qbpm creates profiles that source your main qutebrowser
configuration, but have their own history, bookmarks, etc. qutebrowser sessions
started from separate profiles are entirely isolated from each other, and can be
opened and closed independently.
Usage#
Create a new profile called "python", edit its config.py, then launch it:
$ qbpm new python
$ qbpm edit python
$ qbpm launch python docs.python.org
Notice that qbpm launch passes extra arguments directly to qutebrowser, so you
can use it to open urls in your profile and use any options you would pass to
qutebrowser:
$ qbpm launch python duck.com --target window --loglevel info
qbpm from-session can copy the tabs of a saved qutebrowser
session to a new
profile. If you have a window full of tabs related to planning a vacation, you
could save it to a session called "vacation" using :session-save -o vacation
in qutebrowser, then create a new profile with those tabs:
$ qbpm from-session vacation
The default profile directory is $XDG_DATA_HOME/qutebrowser-profiles, where
$XDG_DATA_HOME is usually $HOME/.local/share, but you can create and launch
profiles from anywhere using --profile-dir/-P:
$ qbpm --profile-dir ~/dev/my-project new qb-profile
$ cd ~/dev/my-project
$ qbpm -P . launch qb-profile
# or
$ qutebrowser --basedir qb-profile
qbpm isn't the easiest command to type, so personally I use qpm as an alias.
Installation#
- Pip:
pip install git+https://github.com/pvsr/qbpm.git#egg=qbpm - Arch: qbpm-git in the AUR
- Nix: clone the repository and run
nix-env -if default.nix - MacOS: For command-line only usage, the pip command above is sufficient, but
if you would like to set qbpm as the default browser app, first clone this
repository, then install platypus by running
brew install playtpus, and finally install the app by runningplatypus -P contrib/qbpm.platypus /Applications/qbpm.appinside the cloned repository. You should then be able to select qbpm as your default browser under: System Preferences > General > Default web browser. Note that there is currently an issue with qutebrowser itself that results in unnecessaryfile:///*tabs being opened. - If you're on linux, you can copy
contrib/qbpm.desktopto~/.local/share/applications. That desktop entry will runqbpm choose, which shows an application launcher (dmenu or rofi) with your qutebrowser profiles as the options.
Future ideas that may or may not happen#
- Release through github
- More shared or copied config and data
- Use any profile as a base for new profiles (currently only the main config in
$XDG_CONFIG_HOMEis supported) - Source
autoconfig.ymlinstead ofconfig.py - Bundled config file optimized for single-site browsing
qbpm.confto configure the features above- Someday: qutebrowser plugin