    command nil map fstar-mode-map
    :vert-only t :fstar-icon icon))
 
+(defconst fstar-tool-bar--icons-directory
+  (let ((shade (pcase frame-background-mode (`dark 'light) (_ 'dark))))
+    (expand-file-name (format "etc/icons/%S" shade) fstar--directory)))
+
 (defun fstar-tool-bar--cleanup-binding (binding)
   "Recompute :image spec in toolbar entry BINDING."
   (pcase binding

     (-when-let* ((img (plist-get props :fstar-icon)))
       (let ((specs nil))
         (dolist (type '(xpm png svg))
           (push `(:type ,type :file ,(format "%s.%S" img type)) specs))
         (setq props (plist-put props :image `(find-image '(,@specs))))))
     `(,key menu-item ,doc ,cmd . ,props))
    (_ binding)))

(require 'tramp-sh)
(require 'crm)
(require 'tool-bar)
(require 'notifications nil t)
;; replace.el doesn't `provide' in Emacs < 26
(ignore-errors (require 'replace))
