diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-04-04 23:45:50 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-04-04 23:45:50 -0700 |
commit | f37067b02b0ef807200fe12246dba499829d1f64 (patch) | |
tree | 0d3c15d133c32c5f238d7f42a0ab04fdea3a9480 /src | |
parent | 24a1cef03349e64db368a297ba4d361d3734895d (diff) | |
download | consfigurator-f37067b02b0ef807200fe12246dba499829d1f64.tar.gz |
tweak lambda lists & export APT:{ALL,NONE}-INSTALLED-P
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src')
-rw-r--r-- | src/package.lisp | 4 | ||||
-rw-r--r-- | src/property/apt.lisp | 8 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/package.lisp b/src/package.lisp index 10c2ed8..388b7d0 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -277,7 +277,9 @@ #:proxy #:uses-parent-proxy #:uses-local-cacher - #:standard-sources.list)) + #:standard-sources.list + #:all-installed-p + #:none-installed-p)) (defpackage :consfigurator.connection.sbcl (:use #:cl #:consfigurator) diff --git a/src/property/apt.lisp b/src/property/apt.lisp index 7822ed9..c573851 100644 --- a/src/property/apt.lisp +++ b/src/property/apt.lisp @@ -43,7 +43,7 @@ (declare (ignore packages)) (os:required 'os:debianlike)) (:check - (all-installed-p packages)) + (apply #'all-installed-p packages)) (:apply (with-maybe-update (apt-get :inform "-y" "install" packages)))) @@ -54,7 +54,7 @@ (declare (ignore packages)) (os:required 'os:debianlike)) (:check - (none-installed-p packages)) + (apply #'none-installed-p packages)) (:apply (apt-get :inform "-y" "remove" packages))) @@ -128,14 +128,14 @@ E.g. (APT:SERVICE-INSTALLED-RUNNING \"apache2\")." (define-constant apt-cache-policy-installed #?/^\s+Installed:\s+(?!\(none\))/ :test #'string=) -(defun all-installed-p (packages) +(defun all-installed-p (&rest packages) (loop with n = 0 for line in (apt-cache-policy packages) when (re:scan apt-cache-policy-installed line) do (incf n) finally (return (= n (length packages))))) -(defun none-installed-p (packages) +(defun none-installed-p (&rest packages) (loop for line in (apt-cache-policy packages) never (re:scan apt-cache-policy-installed line))) |