58 lines
1.7 KiB
EmacsLisp
58 lines
1.7 KiB
EmacsLisp
;;; init-packages.el --- Package Configuration File -*- lexical-binding: t -*-
|
|
;;; Commentary:
|
|
;;; Code:
|
|
|
|
;; TODO - straight.el?
|
|
|
|
(require 'package)
|
|
(require 'url)
|
|
|
|
(setq package-archives '(("melpa" . "https://melpa.org/packages/")
|
|
("melpa-stable" . "https://stable.melpa.org/packages/")
|
|
("nongnu" . "https://elpa.nongnu.org/nongnu/")
|
|
("elpa" . "https://elpa.gnu.org/packages/")))
|
|
|
|
(package-initialize)
|
|
|
|
(unless package-archive-contents
|
|
(package-refresh-contents))
|
|
|
|
(unless (package-installed-p 'use-package)
|
|
(package-install 'use-package))
|
|
(require 'use-package)
|
|
|
|
(setq use-package-always-ensure t)
|
|
|
|
(use-package diminish)
|
|
|
|
(use-package paradox
|
|
:config
|
|
(paradox-enable))
|
|
|
|
(defvar vertico-extensions-dir (expand-file-name "site-lisp/vertico-extensions" user-emacs-directory))
|
|
(defvar vertico-extensions '("vertico-directory" "vertico-repeat"))
|
|
|
|
(defun fetch-vertico-extensions ()
|
|
"Download the latest versions of the required vertico extensions into vertico-extensions-dir"
|
|
(dolist (extension vertico-extensions)
|
|
(let ((ext-file (format "%s.el" extension)))
|
|
(url-copy-file
|
|
(format "https://raw.githubusercontent.com/minad/vertico/main/extensions/%s" ext-file)
|
|
(expand-file-name ext-file vertico-extensions-dir)))))
|
|
|
|
(unless (file-directory-p vertico-extensions-dir)
|
|
(make-directory vertico-extensions-dir t)
|
|
(fetch-vertico-extensions))
|
|
|
|
(use-package epl
|
|
:config
|
|
(defun my/upgrade-packages ()
|
|
(interactive)
|
|
(epl-refresh)
|
|
(epl-upgrade)
|
|
(fetch-vertico-extensions)
|
|
(message "Package upgrade finished.")))
|
|
|
|
(provide 'init-packages)
|
|
;;; init-packages.el ends here
|