Commit 3336c87a1d2b

Vincent Demeester <vincent@sbr.pm>
2018-05-02 19:06:13
Remove most of the :ensure keyword…
… the libraries should be available in the system. Also, trying to defer some packages to load them either on demand or after a small time. Signed-off-by: Vincent Demeester <vincent@sbr.pm>
1 parent 4b5aed0
lisp/vde-buffers.el
@@ -122,7 +122,7 @@
                          filename-and-process))))
 
 (use-package ibuffer-vc                 ; Group buffers by VC project and status
-  :ensure t
+  :defer 2
   :init (add-hook 'ibuffer-hook
                   (lambda ()
                     (ibuffer-vc-set-filter-groups-by-vc-root)
lisp/vde-company.el
@@ -1,5 +1,4 @@
 (use-package company
-  :ensure t
   :commands global-company-mode
   :init
   (add-hook 'after-init-hook #'global-company-mode)
@@ -43,7 +42,6 @@
 
 ;; `company' backend for `lsp-mode'
 (use-package company-lsp
-  :ensure t
   :after company lsp-mode
   :init
   (push 'company-lsp company-backends))
lisp/vde-compile.el
@@ -1,5 +1,5 @@
 (use-package compile
-  :defer t
+  :defer 2
   :config
   (progn
     ;; http://stackoverflow.com/a/13408008/1219634
lisp/vde-docker.el
@@ -1,9 +1,7 @@
 (use-package dockerfile-mode            ; Edit docker's Dockerfiles
-  :ensure t
   :mode ("Dockerfile\\'" . dockerfile-mode))
 
 (use-package docker-compose-mode        ; Edit docker-compose files
-  :ensure t
   :mode ("docker-compose.yml\\'". docker-compose-mode))
 
 (provide 'vde-docker)
lisp/vde-editing.el
@@ -1,12 +1,10 @@
 (use-package undo-tree                  ; Show buffer changes as a tree
-  :ensure t
-  :pin melpa
+  :defer 1
   :init (global-undo-tree-mode)
   :config (setq undo-tree-visualizer-timestamps t))
 
 (use-package smartparens
-  :ensure t
-  :pin melpa
+  :defer 1
   :init
   (progn
     (use-package smartparens-config)
lisp/vde-files.el
@@ -2,10 +2,10 @@
   :bind (("<f5>" . revert-buffer)))
 
 (use-package ripgrep
-  :ensure t)
+  :defer 2)
 
 (use-package recentf                    ; Manage recent files
-  :demand t
+  :defer 1
   :config
   (add-to-list 'recentf-exclude "^/\\(?:ssh\\|su\\|sudo\\)?:")
 
@@ -16,19 +16,16 @@
 (setq view-read-only t)                 ; View read-only
 
 (use-package direnv
-  :ensure t
   :config
   (direnv-mode))
 
 (use-package hardhat                    ; Protect user-writable files
-  :ensure t
   :init (global-hardhat-mode))
 
 (use-package image-file                 ; Visit images as images
   :init (auto-image-file-mode))
 
 (use-package markdown-mode              ; Edit markdown files
-  :ensure t
   :mode ("\\.md\\'" . markdown-mode)
   :config
   (setq markdown-fontify-code-blocks-natively t)
lisp/vde-go.el
@@ -1,10 +1,8 @@
 (use-package go-mode
-  :ensure t
   :mode "\\.go$"
   :interpreter "go"
   :bind (:map go-mode-map
 	      ("C-," . 'hydra-go/body))
-  :pin melpa
   :init
   (defhydra hydra-go (:hint nil :color teal)
     "
@@ -31,8 +29,6 @@
            "go build -v && go test -v && go vet")))
 
 (use-package go-guru
-  :ensure t
-  :pin melpa
   :commands (go-guru-describe go-guru-freevars go-guru-implements go-guru-peers
              go-guru-referrers go-guru-definition go-guru-pointsto
              go-guru-callstack go-guru-whicherrs go-guru-callers go-guru-callees
@@ -61,14 +57,12 @@ _f_: freevars      ^ ^               _s_: callstack    _e_: whicherrs"
     ("S" go-guru-set-scope "scope" :color blue)))
 
 (use-package go-eldoc
-  :ensure t
-  :pin melpa
+  :defer 2
   :config
   (add-hook 'go-mode-hook 'go-eldoc-setup))
 
 (use-package company-go
-  :ensure t
-  :pin melpa
+  :defer 2
   :config
   (setq company-go-show-annotation t)
   (add-hook 'go-mode-hook
@@ -77,15 +71,12 @@ _f_: freevars      ^ ^               _s_: callstack    _e_: whicherrs"
 	      (company-mode))))
 
 (use-package gorepl-mode
-  :ensure t
-  :pin melpa
   :commands (gorepl-run
 	     gorepl-mode)
   :init (add-hook 'go-mode-hook #'gorepl-mode))
 
 (use-package lsp-go
-  :pin melpa
-  :ensure t
+  :defer 2
   :after lsp-mode)
 
 (provide 'vde-go)
lisp/vde-groovy.el
@@ -1,6 +1,4 @@
 (use-package groovy-mode
-  :ensure t
-  :defer t
   :mode "\\.groovy\\'\\|\\.gradle\\'\\|\\jenkinsfile\\'")
 
 (provide 'vde-groovy)
lisp/vde-imenu.el
@@ -1,6 +1,4 @@
 (use-package imenu-list
-  :pin melpa
-  :ensure t
   :commands (vde/imenu-list-display-toggle)
   :bind (("C-'" . vde/imenu-list-display-toggle))
   :config
lisp/vde-ivy.el
@@ -1,6 +1,5 @@
 ;; This file stores my configuration for Ivy and related packages.
 (use-package ivy
-  :ensure t
   :bind (:map vde-mode-map
          ("M-u" . ivy-resume)    ;Override the default binding for `upcase-word'
          ("C-c w" . ivy-push-view) ;Push window configuration to `ivy-views'
@@ -31,16 +30,12 @@
     ))
 
 (use-package ivy-hydra                  ; Additional bindings for Ivy
-  :ensure t
   :after ivy)
 
 (use-package ivy-historian              ; Store minibuffer candidates
-  :ensure t
-  :pin melpa
   :init (ivy-historian-mode +1))
 
 (use-package counsel
-  :ensure t
   :bind (:map vde-mode-map
 	      ("M-i" . counsel-grep-or-swiper)
 	      ("C-M-y" . counsel-yank-pop)
lisp/vde-keybindings.el
@@ -1,5 +1,4 @@
 (use-package which-key
-  :ensure t
   :init (which-key-mode)
   :config
   (setq
lisp/vde-nix.el
@@ -1,19 +1,14 @@
 (use-package nix-mode
-  :ensure t
   :mode "\\.nix\\'"
-  :pin melpa
   :config
   (use-package nix-repl)
   (use-package nix-format)
   (use-package nix-shell
     :commands (nix-shell nix-unpack)))
 
-(use-package nixos-options
-  :ensure t
-  :pin melpa)
+(use-package nixos-options)
+
 (use-package company-nixos-options
-  :ensure t
-  :pin melpa
   :hook
   (nix-mode . (lambda ()
                 (set (make-local-variable 'company-backends) '(company-nixos-options))
lisp/vde-org.el
@@ -5,7 +5,6 @@
 (use-package smartparens-org)
 
 (use-package ox-hugo
-  :ensure t
   :after ox
   :commands (org-hugo-slug)
   :bind (:map modi-mode-map
lisp/vde-projectile.el
@@ -1,5 +1,4 @@
 (use-package projectile                 ; Project management
-  :ensure t
   :init (projectile-mode)
   :config
   ;; Remove dead projects when Emacs is idle
@@ -11,7 +10,6 @@
    projectile-mode-line '(:eval (format " Proj[%s]" (projectile-project-name)))))
 
 (use-package counsel-projectile         ; Ivy integration for Projectile
-  :ensure t
   :bind (:map projectile-command-map
               ("p" . counsel-projectile-switch-project)
               ("r" . counsel-projectile-rg))
lisp/vde-rust.el
@@ -1,12 +1,10 @@
 (use-package rust-mode
-  :ensure t
   :mode "\\.rs\\'"
   :init
   (setq rust-format-on-save t))
 
 (use-package lsp-rust
-  :pin melpa
-  :ensure t
+  :defer 2
   :after lsp-mode)
 
 (provide 'vde-rust)
lisp/vde-search.el
@@ -8,18 +8,14 @@
 (add-hook 'grep-mode-hook #'toggle-truncate-lines)
 
 (use-package wgrep                      ; Editable grep buffer
-  :ensure t
-  :defer t
+  :defer 2
   :config)
 
 (use-package visual-regexp              ; Regexp replace with in-buffer display
-  :ensure t
   :bind (("C-c s r" . vr/query-replace)
          ("C-c s R" . vr/replace)))
 
 (use-package ez-query-replace           ; Better query replace
-  :ensure t
-  :pin melpa
   :bind (([remap query-replace] . ez-query-replace)
          ("C-c M-%" . ez-query-replace-repeat)))
 
lisp/vde-shells.el
@@ -37,7 +37,7 @@
   )
 
 (use-package shx                        ; Enhance comint-mode
-  :ensure t
+  :defer 2
   :init (shx-global-mode 1))
 
 (use-package eshell                     ; Emacs command shell
@@ -91,7 +91,7 @@ The EShell is renamed to match that directory to make multiple windows easier."
   (add-hook 'eshell-mode-hook #'with-editor-export-editor))
 
 (use-package em-prompt                  ; EShell command prompts
-  :ensure eshell
+  :defer 2
   :config
   (defun vde-eshell-quit-or-delete-char (arg)
     "Use C-d to either delete forward char or exit EShell."
@@ -136,13 +136,11 @@ The EShell is renamed to match that directory to make multiple windows easier."
   (add-to-list 'eshell-visual-commands "npm"))
 
 (use-package fish-completion            ; Add Fish completion to EShell
-  :ensure t
-  :pin melpa
+  :defer 2
   :when (executable-find "fish")
   :config (add-hook 'eshell-mode-hook #'fish-completion-mode))
 
 (use-package fish-mode                  ; Handle Fish shell scripts
-  :ensure t
   :mode ("\\.fish\\'" . fish-mode)
   :config
   ;; Run fish_indent before save
@@ -151,16 +149,14 @@ The EShell is renamed to match that directory to make multiple windows easier."
               (add-hook 'before-save-hook 'fish_indent-before-save))))
 
 (use-package eshell-prompt-extras
-  :ensure t
-  :pin melpa
+  :defer 1
   :init
   (progn
     (setq eshell-highlight-prompt nil
 	  eshell-prompt-function 'epe-theme-lambda)))
 
 (use-package esh-autosuggest
-  :ensure t
-  :pin melpa
+  :defer 1
   :hook (eshell-mode . esh-autosuggest-mode))
 
 (provide 'vde-shells)
lisp/vde-style.el
@@ -38,14 +38,12 @@
 (setq custom-safe-themes t)    ; Treat themes as safe
 
 (use-package doom-themes
-  :ensure t
   :config
   (setq doom-themes-enable-bolt t)
   (setq doom-themes-enable-italic t)
   (load-theme 'doom-one t))
 
 (use-package solaire-mode
-  :ensure t
   :config
   (setq solaire-mode-remap-modeline nil)
   (add-hook 'after-change-major-mode-hook #'turn-on-solaire-mode)
lisp/vde-vcs.el
@@ -7,7 +7,6 @@
   (setq vc-follow-symlinks t))
 
 (use-package magit                      ; The best Git client out there
-  :ensure t
   :bind (("C-c v c" . magit-clone)
          ("C-c v C" . magit-checkout)
          ("C-c v d" . magit-dispatch-popup)
@@ -55,7 +54,6 @@
   (bind-key "q" #'mu-magit-kill-buffers magit-status-mode-map))
 
 (use-package magit-gitflow              ; gitflow extension for Magit
-  :ensure t
   :after magit
   :config
   ;; Free C-f and use a more suitable key binding
@@ -65,23 +63,20 @@
   (add-hook 'magit-mode-hook 'turn-on-magit-gitflow))
 
 (use-package git-commit                 ; Git commit message mode
-  :ensure t
+  :defer 2
   :init (global-git-commit-mode)
   :config
   (remove-hook 'git-commit-finish-query-functions
                #'git-commit-check-style-conventions))
 
 (use-package gitconfig-mode             ; Git configuration mode
-  :ensure t
-  :defer t)
+  :defer 2)
 
 (use-package gitignore-mode             ; .gitignore mode
-  :ensure t
-  :defer t)
+  :defer 2)
 
 (use-package gitattributes-mode         ; Git attributes mode
-  :ensure t
-  :defer t)
+  :defer 2)
 
 (provide 'vde-vcs)
 
lisp/vde-web.el
@@ -1,5 +1,4 @@
 (use-package web-mode
-  :defer t
   :mode
   ("\\.html\\'" . web-mode)
   ("\\.phtml\\'" . web-mode)
@@ -33,14 +32,12 @@
         (sp-local-tag "#" "<%# " " %>")))))
 
 (use-package js2-mode
-  :defer t
   :mode
   ("\\.js\\'" . js2-mode)
   :interpreter
   ("node" . js2-mode))
 
 (use-package js2-refactor
-  :defer t
   :diminish js2-refactor-mode
   :commands
   (js2-refactor-mode)
@@ -49,7 +46,6 @@
 
 (use-package typescript-mode
   ;; npm install -g typescript
-  :defer t
   :mode
   ("\\.ts\\'" . typescript-mode)
   ("\\.ts$\\'" . typescript-mode)
@@ -57,11 +53,9 @@
   (setq typescript-enabled-frameworks '(typescript)))
 
 (use-package js-import
-  :defer t
   :commands (js-import js-import-dev))
 
 (use-package rjsx-mode
-  :defer t
   :mode
   ("\\.jsx?\\'" . rjsx-mode)
   :interpreter
lisp/vde-windows.el
@@ -1,8 +1,7 @@
 (setq window-combination-resize t) ; Size new windows proportionally
 
 (use-package fullframe                 ; Generalized execution in a single frame
-  :ensure t
-  :defer t)
+  :defer 2)
 
 ;; Better shrink/enlarge windows
 (bind-keys*
@@ -59,7 +58,6 @@
         (bury-buffer)))))
 
 (use-package eyebrowse                  ; Easy workspaces creation and switching
-  :ensure t
   :init (eyebrowse-mode t)
   :config
   (setq
@@ -69,14 +67,12 @@
    eyebrowse-wrap-around t))
 
 (use-package ace-window                 ; Better movements between windows
-  :ensure t
   :bind (("C-x o"   . ace-window)
          ("C-c w w" . ace-window)
          ("C-c w s" . ace-swap-window))
   :config (setq aw-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l)))
 
 (use-package shackle
-  :ensure t
   :config
   (progn
     (setq shackle-select-reused-windows nil)
init.el
@@ -42,8 +42,7 @@ gc-cons-percentage 0.1))
 
 (eval-when-compile (require 'use-package))
 
-(use-package dash                       ; A modern list library
-  :ensure t)
+(use-package dash) ; A modern list library
 
 (require 'subr-x)
 (require 'time-date)
@@ -52,7 +51,6 @@ gc-cons-percentage 0.1))
 (setq inhibit-default-init t)           ; Disable the site default settings
 
 (use-package exec-path-from-shell       ; Set up environment variables
-  :ensure t
   :if (display-graphic-p)
   :config
   (setq exec-path-from-shell-variables
@@ -79,7 +77,6 @@ gc-cons-percentage 0.1))
   :init (load vde-custom-file 'no-error 'no-message))
 
 (use-package no-littering               ; Keep .emacs.d clean
-  :ensure t
   :config
   (require 'recentf)
   (add-to-list 'recentf-exclude no-littering-var-directory)