|
|
@ -56,6 +56,8 @@ |
|
|
|
|
|
|
|
|
(defun prelude-require-package (package) |
|
|
(defun prelude-require-package (package) |
|
|
"Install PACKAGE unless already installed." |
|
|
"Install PACKAGE unless already installed." |
|
|
|
|
|
(unless (memq package prelude-packages) |
|
|
|
|
|
(add-to-list 'prelude-packages package)) |
|
|
(unless (package-installed-p package) |
|
|
(unless (package-installed-p package) |
|
|
(package-install package))) |
|
|
(package-install package))) |
|
|
|
|
|
|
|
|
@ -76,8 +78,19 @@ Missing packages are installed automatically." |
|
|
;; install the missing packages |
|
|
;; install the missing packages |
|
|
(prelude-require-packages prelude-packages))) |
|
|
(prelude-require-packages prelude-packages))) |
|
|
|
|
|
|
|
|
|
|
|
;; run package installation |
|
|
(prelude-install-packages) |
|
|
(prelude-install-packages) |
|
|
|
|
|
|
|
|
|
|
|
(defun prelude-list-foreign-packages () |
|
|
|
|
|
"Browse third-party packages not bundled with Prelude. |
|
|
|
|
|
|
|
|
|
|
|
Behaves similarly to `package-list-packages', but shows only the packages that |
|
|
|
|
|
are installed and are not in `prelude-packages'. Useful for |
|
|
|
|
|
removing unwanted packages." |
|
|
|
|
|
(interactive) |
|
|
|
|
|
(package-show-package-list |
|
|
|
|
|
(set-difference package-activated-list prelude-packages))) |
|
|
|
|
|
|
|
|
(defmacro prelude-auto-install (extension package mode) |
|
|
(defmacro prelude-auto-install (extension package mode) |
|
|
"When file with EXTENSION is opened triggers auto-install of PACKAGE. |
|
|
"When file with EXTENSION is opened triggers auto-install of PACKAGE. |
|
|
PACKAGE is installed only if not already present. The file is opened in MODE." |
|
|
PACKAGE is installed only if not already present. The file is opened in MODE." |
|
|
|