Symbol’s value as variable is void: personal-keybindings

In situations where use-package doesn’t get loaded because all packages are already installed, but it is still used for configuration, you can run into issues caused by perconal-keybindings being void:

⛔ Error (use-package): consult/:catch: Symbol’s value as variable is void: personal-keybindings

Explicitly requiring bind-key resolves this issue. Requiring it in use-package’s :init section makes sure it’s loaded before the bindings are created, while still keeping it close to the configuration it’s required for. A declaration for Consult might look like this, for example:

(use-package consult
  :ensure t
  :init
  (require 'bind-key)
  :bind
  (("C-x p b" . consult-project-buffer)))