     :hook (go-mode . go-guru-hl-identifier-mode))
 
   ;; C/C++:
-  (use-package ccls
-    :defer t
-    :init
-    (setq ccls-executable "/usr/bin/ccls")
-    :hook ((c-mode c++-mode objc-mode) .
-           (lambda ()
-             (require 'ccls)
-             (unless chri/prefer-eglot
+  (unless chri/prefer-eglot
+    (use-package ccls
+      :defer t
+      :init
+      (setq ccls-executable "/usr/bin/ccls")
+      :hook ((c-mode c++-mode objc-mode) .
+             (lambda ()
+               (require 'ccls)
                (lsp)))))
 
   ;; bpftrace mode

 '(mouse-yank-at-point t)
 '(org-startup-folded nil)
 '(package-selected-packages
   '(js2-mode eglot company-tabnine rainbow-mode rainbow-delimiters rg ag dts-mode ucs-utils font-utils persistent-soft unicode-fonts ivy-yasnippet yasnippet-snippets lsp coq js-mode notmuch coq-mode go-playground javascript-mode diminish yaml-imenu ws-butler which-key-posframe wanderlust use-package typescript-mode tree-mode toml-mode toml smex simpleclip rustic rust-mode proof-general projectile-speedbar menu-bar+ markdown-preview-mode magit-gh-pulls lsp-ui lsp-pyright lsp-jedi lsp-ivy lsp-dart kotlin-mode jsonrpc jedi ivy-rich ipython-shell-send iedit ido-completing-read+ haskell-mode go-projectile go-autocomplete ghub+ forge flymake flycheck-yamllint flycheck-pyflakes flycheck-posframe flycheck-ocaml flycheck-mypy flycheck-kotlin flx-ido find-file-in-project elpy elpher ein dash-functional counsel company-posframe company-lua company-lsp company-coq ccls cargo browse-kill-ring+ bpftrace-mode bazel async android-mode))
 '(projectile-tags-command "make_TAGS \"%s\" %s")
 '(rustic-display-spinner nil)
 '(rustic-format-trigger 'on-save)
 '(save-place t nil (saveplace))
 '(scroll-bar-mode 'right)
 '(set-mark-command-repeat-pop t)

               (python-mode . eglot-ensure)
               (js2-mode . eglot-ensure)
               (go-mode . eglot-ensure)
               (obc-c-mode . eglot-ensure)
               ;; Show all documentations, in practice both definitions and errors.
               (eglot-managed-mode . (lambda () (setq eldoc-documentation-strategy 'eldoc-documentation-compose))))
        :config
        (when chri/enable-tabnine
          (add-to-list 'eglot-stay-out-of 'company))
