Just some light deprecation work. Former patch series marked SUPERSEDED. Nicolas Graves (2): rde: Deprecate any-package? predicate rde: Deprecate list-of-packages? predicate src/rde/features/base.scm | 6 +++--- src/rde/features/clojure.scm | 2 +- src/rde/features/golang.scm | 2 +- src/rde/features/linux.scm | 2 +- src/rde/features/lisp.scm | 2 +- src/rde/features/mail.scm | 2 +- src/rde/features/ocaml.scm | 2 +- src/rde/features/predicates.scm | 15 ++++++++------- src/rde/features/shells.scm | 2 +- src/rde/features/shellutils.scm | 2 +- src/rde/features/system.scm | 8 ++++---- src/rde/features/terminals.scm | 2 +- src/rde/features/version-control.scm | 2 +- src/rde/features/video.scm | 2 +- src/rde/features/web-browsers.scm | 2 +- src/rde/features/wm.scm | 10 +++++----- src/rde/features/xdisorg.scm | 2 +- 17 files changed, 33 insertions(+), 32 deletions(-) -- 2.47.1
Do you have a suggestion or pro tip for integration testing set of patches this that is automated or quick?
Copy & paste the following snippet into your terminal to import this patchset into git:
curl -s https://lists.sr.ht/~abcdw/rde-devel/patches/57008/mbox | git am -3Learn more about email & git
--- src/rde/features/clojure.scm | 2 +- src/rde/features/golang.scm | 2 +- src/rde/features/linux.scm | 2 +- src/rde/features/lisp.scm | 2 +- src/rde/features/mail.scm | 2 +- src/rde/features/ocaml.scm | 2 +- src/rde/features/predicates.scm | 14 +++++++------- src/rde/features/shells.scm | 2 +- src/rde/features/shellutils.scm | 2 +- src/rde/features/system.scm | 2 +- src/rde/features/terminals.scm | 2 +- src/rde/features/version-control.scm | 2 +- src/rde/features/video.scm | 2 +- src/rde/features/web-browsers.scm | 2 +- src/rde/features/wm.scm | 10 +++++----- src/rde/features/xdisorg.scm | 2 +- 16 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/rde/features/clojure.scm b/src/rde/features/clojure.scm index 0f78904a..d34d16c8 100644 --- a/src/rde/features/clojure.scm +++ b/src/rde/features/clojure.scm @@ -55,7 +55,7 @@ If you want Leiningen support, make sure to pass in the LEININGEN package." (define (get-home-services config) (define emacs-f-name 'clojure) (define clojure-lsp-binary - (if (any-package? clojure-lsp) + (if (file-like? clojure-lsp) (file-append clojure-lsp "/bin/clojure-lsp") clojure-lsp)) diff --git a/src/rde/features/golang.scm b/src/rde/features/golang.scm index 684580aa..86bd9f28 100644 --- a/src/rde/features/golang.scm +++ b/src/rde/features/golang.scm @@ -15,7 +15,7 @@ (emacs-go-mode emacs-go-mode) (emacs-ob-go emacs-ob-go)) "Configure and set up tooling for Golang." - (ensure-pred any-package? go) + (ensure-pred file-like? go) (ensure-pred file-like? emacs-go-mode) (ensure-pred file-like? emacs-ob-go) diff --git a/src/rde/features/linux.scm b/src/rde/features/linux.scm index 39776dc2..99fddfaf 100644 --- a/src/rde/features/linux.scm +++ b/src/rde/features/linux.scm @@ -43,7 +43,7 @@ (brightnessctl brightnessctl)) "Setup and configure brightness for various devices." (ensure-pred brightness? default-brightness) - (ensure-pred any-package? brightnessctl) + (ensure-pred file-like? brightnessctl) (ensure-pred brightness? step) (define (step->symbol op) diff --git a/src/rde/features/lisp.scm b/src/rde/features/lisp.scm index 7f1902ea..ca2a2a75 100644 --- a/src/rde/features/lisp.scm +++ b/src/rde/features/lisp.scm @@ -72,7 +72,7 @@ that takes the current RDE configuration and should return an Emacs Lisp function that represents the custom prompt. If you'd rather use the default sly prompt, simply pass #f to it. See @code{sly-mrepl-default-prompt} for its arguments and return value." - (ensure-pred any-package? lisp) + (ensure-pred file-like? lisp) (ensure-pred file-like? emacs-sly) (ensure-pred lisp-config? extra-sbclrc-lisp) (ensure-pred lisp-config? extra-slynk-lisp) diff --git a/src/rde/features/mail.scm b/src/rde/features/mail.scm index e663f0af..3b1e9269 100644 --- a/src/rde/features/mail.scm +++ b/src/rde/features/mail.scm @@ -934,7 +934,7 @@ to offset block quotes." MAIL-ACCOUNT-IDS is not provided, use all the mail accounts. You can also control whether to NOTIFY? when new emails arrive." (ensure-pred maybe-list? mail-account-ids) - (ensure-pred any-package? goimapnotify) + (ensure-pred file-like? goimapnotify) (ensure-pred boolean? notify?) (define (get-home-services config) diff --git a/src/rde/features/ocaml.scm b/src/rde/features/ocaml.scm index 37b0c6f5..0e4f6487 100644 --- a/src/rde/features/ocaml.scm +++ b/src/rde/features/ocaml.scm @@ -48,7 +48,7 @@ (extra-ocaml-packages '()) (opam? #f)) "Configure tooling and environment for OCaml." - (ensure-pred any-package? ocaml) + (ensure-pred file-like? ocaml) (ensure-pred file-like? ocaml-core) (ensure-pred file-like? ocaml-findlib) (ensure-pred file-like? dune) diff --git a/src/rde/features/predicates.scm b/src/rde/features/predicates.scm index d5fecf44..ed40676f 100644 --- a/src/rde/features/predicates.scm +++ b/src/rde/features/predicates.scm @@ -8,11 +8,14 @@ #:use-module (gnu system mapped-devices) #:use-module (srfi srfi-1) + #:use-module (guix deprecation) #:use-module (guix packages) #:use-module (guix inferior) #:use-module (guix gexp) - #:re-export (package? + #:export (any-package?) + #:re-export (file-like? + package? ini-config?)) (define-public (maybe-integer? x) @@ -58,14 +61,11 @@ (define-public (list-of-file-likes? lst) (and (list? lst) (every file-like? lst))) -(define-public (any-package? x) - (or (package? x) (inferior-package? x))) +(define-deprecated/alias any-package? file-like?) -(define-public (list-of-packages? lst) - (and (list? lst) (every any-package? lst))) +(define-public list-of-packages? list-of-file-likes?) -(define-public (list-of-elisp-packages? lst) - (list-of-packages? lst)) +(define-public list-of-elisp-packages? list-of-file-likes?) (define-public (list-of-services? lst) (and (list? lst) (every service? lst))) diff --git a/src/rde/features/shells.scm b/src/rde/features/shells.scm index 4eaaa0c7..dc992089 100644 --- a/src/rde/features/shells.scm +++ b/src/rde/features/shells.scm @@ -154,7 +154,7 @@ Defaults:%wheel env_keep+=ZDOTDIR")))) #:key (bash bash)) "Configure Bash." - (ensure-pred any-package? bash) + (ensure-pred file-like? bash) (define (get-home-services config) "Returns home services related to Bash." diff --git a/src/rde/features/shellutils.scm b/src/rde/features/shellutils.scm index 627aacd6..38f37535 100644 --- a/src/rde/features/shellutils.scm +++ b/src/rde/features/shellutils.scm @@ -117,7 +117,7 @@ #:key (direnv direnv)) "Configure direnv and related Emacs packages." - (ensure-pred any-package? direnv) + (ensure-pred file-like? direnv) (define (get-home-services config) "Returns home services related to direnv." diff --git a/src/rde/features/system.scm b/src/rde/features/system.scm index f3defff2..b2bf2b40 100644 --- a/src/rde/features/system.scm +++ b/src/rde/features/system.scm @@ -131,7 +131,7 @@ than at boot, and are unmounted when the user logs out." (firmware '()) (base-firmware %base-firmware)) "Provides kernel configuration." - (ensure-pred any-package? kernel) + (ensure-pred file-like? kernel) (ensure-pred list-of-packages? kernel-loadable-modules) (ensure-pred list-of-string-or-gexps? kernel-arguments) (ensure-pred list-of-string-or-gexps? default-kernel-arguments) diff --git a/src/rde/features/terminals.scm b/src/rde/features/terminals.scm index d06c6d1c..e341e68e 100644 --- a/src/rde/features/terminals.scm +++ b/src/rde/features/terminals.scm @@ -48,7 +48,7 @@ (software-rendering? #f)) "Configure Alacritty terminal." (ensure-pred maybe-file-like? config-file) - (ensure-pred any-package? package) + (ensure-pred file-like? package) ;; TODO: Implement home service and rewrite to it to make this ;; feature extendable. diff --git a/src/rde/features/version-control.scm b/src/rde/features/version-control.scm index abcc0f4e..65b3d75b 100644 --- a/src/rde/features/version-control.scm +++ b/src/rde/features/version-control.scm @@ -32,7 +32,7 @@ (git-send-email? #t) (extra-config '())) "Setup and configure Git." - (ensure-pred any-package? git) + (ensure-pred file-like? git) (ensure-pred maybe-string? git-sign-key) (ensure-pred boolean? sign-commits?) (ensure-pred boolean? git-send-email?) diff --git a/src/rde/features/video.scm b/src/rde/features/video.scm index b6a0a888..3c40ff96 100644 --- a/src/rde/features/video.scm +++ b/src/rde/features/video.scm @@ -271,7 +271,7 @@ do with the file, and whether to add the file to the current PLAYLIST." (ytdl-key "y")) "Configure the yt-dlp program to download videos from YouTube and various other sites." - (ensure-pred any-package? yt-dlp) + (ensure-pred file-like? yt-dlp) (ensure-pred file-like? yt-dlp-command) (ensure-pred file-like? emacs-ytdl) (ensure-pred list? music-dl-args) diff --git a/src/rde/features/web-browsers.scm b/src/rde/features/web-browsers.scm index 5fb9814c..9ad1faaa 100644 --- a/src/rde/features/web-browsers.scm +++ b/src/rde/features/web-browsers.scm @@ -55,7 +55,7 @@ (default-startup-flags '("--user-data-dir=$XDG_DATA_HOME/chromium")) (desktop-startup-flags '(""))) "Configure the Chromium browser." - (ensure-pred any-package? ungoogled-chromium) + (ensure-pred file-like? ungoogled-chromium) (ensure-pred boolean? default-browser?) (ensure-pred list-of-strings? default-startup-flags) (ensure-pred list-of-strings? desktop-startup-flags) diff --git a/src/rde/features/wm.scm b/src/rde/features/wm.scm index 1cb0c7f5..2e9b8b8c 100644 --- a/src/rde/features/wm.scm +++ b/src/rde/features/wm.scm @@ -126,9 +126,9 @@ (ensure-pred sway-config? extra-config) (ensure-pred boolean? add-keyboard-layout-to-config?) (ensure-pred boolean? xwayland?) - (ensure-pred any-package? sway) - (ensure-pred any-package? foot) - (ensure-pred any-package? bemenu) + (ensure-pred file-like? sway) + (ensure-pred file-like? foot) + (ensure-pred file-like? bemenu) (ensure-pred file-like? qtwayland) (ensure-pred file-like? shepherd) (ensure-pred file-like? xdg-desktop-portal) @@ -1056,7 +1056,7 @@ for the main bar." (lock-timeout 240) (extra-config '())) "Configure swayidle." - (ensure-pred any-package? swayidle) + (ensure-pred file-like? swayidle) (define swayidle-cmd (file-append swayidle "/bin/swayidle -w")) @@ -1098,7 +1098,7 @@ for the main bar." (extra-config '()) (default-screen-locker? #t)) "Configure swaylock." - (ensure-pred any-package? swaylock) + (ensure-pred file-like? swaylock) (define (get-home-services config) (list diff --git a/src/rde/features/xdisorg.scm b/src/rde/features/xdisorg.scm index fc69c2df..263cb247 100644 --- a/src/rde/features/xdisorg.scm +++ b/src/rde/features/xdisorg.scm @@ -27,7 +27,7 @@ (show-actions? #t) (default-application-launcher? #t)) "Configure rofi." - (ensure-pred any-package? rofi) + (ensure-pred file-like? rofi) (ensure-pred file-like-or-path? theme) (define (get-home-services config) -- 2.47.1
--- src/rde/features/base.scm | 6 +++--- src/rde/features/predicates.scm | 5 +++-- src/rde/features/system.scm | 6 +++--- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/rde/features/base.scm b/src/rde/features/base.scm index cfc0a1e8..66e1dda2 100644 --- a/src/rde/features/base.scm +++ b/src/rde/features/base.scm @@ -110,9 +110,9 @@ packages for home-environment, or operating-system, or both. Standalone means that packages do not require configuration and not installed by system or home services." - (ensure-pred list-of-packages? home-packages) - (ensure-pred list-of-packages? system-packages) - (ensure-pred list-of-packages? base-system-packages) + (ensure-pred list-of-file-likes? home-packages) + (ensure-pred list-of-file-likes? system-packages) + (ensure-pred list-of-file-likes? base-system-packages) (define (get-home-packages values) (list diff --git a/src/rde/features/predicates.scm b/src/rde/features/predicates.scm index ed40676f..e14f8fdf 100644 --- a/src/rde/features/predicates.scm +++ b/src/rde/features/predicates.scm @@ -13,7 +13,8 @@ #:use-module (guix inferior) #:use-module (guix gexp) - #:export (any-package?) + #:export (any-package? + list-of-packages?) #:re-export (file-like? package? ini-config?)) @@ -63,7 +64,7 @@ (define-deprecated/alias any-package? file-like?) -(define-public list-of-packages? list-of-file-likes?) +(define-deprecated/alias list-of-packages? list-of-file-likes?) (define-public list-of-elisp-packages? list-of-file-likes?) diff --git a/src/rde/features/system.scm b/src/rde/features/system.scm index b2bf2b40..46250dee 100644 --- a/src/rde/features/system.scm +++ b/src/rde/features/system.scm @@ -132,11 +132,11 @@ than at boot, and are unmounted when the user logs out." (base-firmware %base-firmware)) "Provides kernel configuration." (ensure-pred file-like? kernel) - (ensure-pred list-of-packages? kernel-loadable-modules) + (ensure-pred list-of-file-likes? kernel-loadable-modules) (ensure-pred list-of-string-or-gexps? kernel-arguments) (ensure-pred list-of-string-or-gexps? default-kernel-arguments) - (ensure-pred list-of-packages? firmware) - (ensure-pred list-of-packages? base-firmware) + (ensure-pred list-of-file-likes? firmware) + (ensure-pred list-of-file-likes? base-firmware) (ensure-pred procedure? initrd) (ensure-pred list-of-strings? initrd-modules) (ensure-pred list-of-strings? base-initrd-modules) -- 2.47.1
Do you have a suggestion or pro tip for integration testing set of patches this that is automated or quick?