summaryrefslogtreecommitdiff
path: root/lisp/use-package/use-package-ensure-system-package.el
diff options
context:
space:
mode:
authorDaniel Perez Alvarez <danielpza@protonmail.com>2021-04-17 17:08:35 -0400
committerDaniel Perez Alvarez <danielpza@protonmail.com>2021-04-17 17:08:35 -0400
commit1343783532e7e9f242818b5b8851069a7ca3faf9 (patch)
tree49ef061c92c628ea8cbcf6b943295f1b627858fa /lisp/use-package/use-package-ensure-system-package.el
parentffa5f0397af87c7258f58082408281bf3a5a2deb (diff)
downloademacs-1343783532e7e9f242818b5b8851069a7ca3faf9.tar.gz
emacs-1343783532e7e9f242818b5b8851069a7ca3faf9.tar.bz2
emacs-1343783532e7e9f242818b5b8851069a7ca3faf9.zip
feat: add update custom packages command
Copyright-paperwork-exempt: yes
Diffstat (limited to 'lisp/use-package/use-package-ensure-system-package.el')
-rw-r--r--lisp/use-package/use-package-ensure-system-package.el11
1 files changed, 10 insertions, 1 deletions
diff --git a/lisp/use-package/use-package-ensure-system-package.el b/lisp/use-package/use-package-ensure-system-package.el
index 87abf407020..9899968877b 100644
--- a/lisp/use-package/use-package-ensure-system-package.el
+++ b/lisp/use-package/use-package-ensure-system-package.el
@@ -25,6 +25,8 @@
(eval-when-compile
(declare-function system-packages-get-command "system-packages"))
+(defvar use-package-ensure-system-package--custom-packages '()
+ "List of custom packages installed.")
(defun use-package-ensure-system-package-consify (arg)
"Turn `arg' into a cons of (`package-name' . `install-command')."
@@ -38,11 +40,18 @@
((not (cdr arg))
(use-package-ensure-system-package-consify (car arg)))
((stringp (cdr arg))
- (cons (car arg) `(async-shell-command ,(cdr arg))))
+ (progn
+ (push (cdr arg) use-package-ensure-system-package--custom-packages)
+ (cons (car arg) `(async-shell-command ,(cdr arg)))))
(t
(cons (car arg)
`(system-packages-install ,(symbol-name (cdr arg)))))))))
+(defun use-package-ensure-system-package-update-custom-packages ()
+ (interactive)
+ (dolist (cmd use-package-ensure-system-package--custom-packages)
+ (async-shell-command cmd)))
+
;;;###autoload
(defun use-package-normalize/:ensure-system-package (_name-symbol keyword args)
"Turn `arg' into a list of cons-es of (`package-name' . `install-command')."