From dc01d01d5384cd4c703b334b10d9256a1c9d5083 Mon Sep 17 00:00:00 2001 From: fnussbaum Date: Sat, 15 Nov 2025 22:03:03 +0100 Subject: [PATCH] [core] Improve error message when GNU tar is missing This has led to numerous reported issues in the past. Spacemacs can work without GNU tar, because quelpa installation only fails for some packages; so it should suffice to add the message in that case. Also, remove the superfluous quote from the condition name error. --- core/core-configuration-layer.el | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/core/core-configuration-layer.el b/core/core-configuration-layer.el index 8b7e3c99bf4f..68cd5b76ca1c 100644 --- a/core/core-configuration-layer.el +++ b/core/core-configuration-layer.el @@ -1717,9 +1717,15 @@ RNAME is the name symbol of another existing layer." (oset pkg lazy-install nil)) (t (configuration-layer//warning "Cannot install package %S." pkg-name))) - ('error + (error (configuration-layer//error - (concat "\nAn error occurred while installing %s " "(error: %s)\n") + (concat "An error occurred while installing %s " "(error: %s)" + (when (and (equal err '(wrong-type-argument package-desc nil)) + (and (listp location) (eq 'recipe (car location))) + (boundp 'quelpa--tar-type) + (not (eq quelpa--tar-type 'gnu))) + ". It looks like GNU tar is not installed, or `quelpa-build-tar-executable' \ +needs to be customized to a GNU tar executable.")) pkg-name err) (spacemacs//redisplay))))))