Skip to content

2.0: config

Choose a tag to compare

@pvsr pvsr released this 24 Aug 00:25

Config file support

qbpm now reads configuration options from a config file at $XDG_CONFIG_HOME/qbpm/config.toml. The default config can be viewed with qbpm config default and installed with qbpm config default > "$(qbpm config path)".

Supported options

Several options support interpolation of variables like the profile name, which are documented in the default config file.

config_py_template

Controls the contents of config.py in new profiles.

symlink_autoconfig

Symlink qutebrowser's autoconfig.yml in new profiles.

profile_directory and qutebrowser_config_directory

Equivalent to --profile-dir and --qutebrowser-config-dir .

generate_desktop_file and desktop_file_directory

Whether to generate XDG desktop entries for the profiles and where to put them.

menu and menu_prompt

Equivalent to qbpm choose's --menu, and the text of prompt that is shown in most menus.

Other changes

  • support for symlinking autoconfig.yml in addition to or instead of sourcing config.py
  • qbpm new --overwrite: back up existing config files by moving to e.g. config.py.bak
  • qbpm new now supports --desktop-file in addition to --no-desktop-file to support overriding the value from config
  • contrib/qbpm.desktop: add MimeType and Keywords, fix incorrect formatting of Categories
  • macOS: fix detection of qutebrowser binary in /Applications
  • tests for config, which means more tests for most parts of the codebase

And last but not least, the --help text is slightly wider to avoid awkward line breaks. Before:

Usage: qbpm new [OPTIONS] PROFILE_NAME [HOME_PAGE]

  Create a new profile.

Options:
  -C, --qutebrowser-config-dir DIRECTORY
                                  Location of the qutebrowser config to
                                  inherit from.
  -l, --launch                    Launch the profile.
  -f, --foreground                If --launch is set, run qutebrowser in the
                                  foreground.
  --no-desktop-file               Do not generate an XDG desktop entry for the
                                  profile.
  --overwrite                     Replace the current profile configuration if
                                  it exists.
  -h, --help                      Show this message and exit.

After:

Usage: qbpm new [OPTIONS] PROFILE_NAME [HOME_PAGE]

  Create a new profile.

Options:
  -C, --qutebrowser-config-dir DIRECTORY
                                  Location of the qutebrowser config to source.
  -l, --launch                    Launch the profile.
  -f, --foreground                If --launch is set, run qutebrowser in the foreground.
  --desktop-file / --no-desktop-file
                                  Generate an XDG desktop entry for the profile.
  --overwrite                     Replace the current profile configuration if it exists.
  -h, --help                      Show this message and exit.

Much better, right?

Full Changelog: 1.0...2.0