Zhengyi Fu <i...@fuzy.me> writes: > Philip Kaludercic <phil...@posteo.net> writes: > >> Zhengyi Fu <i...@fuzy.me> writes: >> >>> When I try recompiling all packages installed by package.el with `M-x >>> package-recompile-all', I got the following error: >>> >>> Debugger entered--Lisp error: (permission-denied "Removing old name" >>> "Permission denied" >>> "/usr/share/emacs/site-lisp/elpa/mu4e-1.10.8/mu4e-a...") >>> package-recompile(#s(package-desc :name mu4e :version (1 10 8) >>> :summary "the mu mail user agent" :reqs nil :kind nil :archive nil >>> :dir "/usr/share/emacs/site-lisp/elpa/mu4e-1.10.8" :extras nil >>> :signed nil)) >>> package-recompile-all() >>> funcall-interactively(package-recompile-all) >>> command-execute(package-recompile-all record) >>> execute-extended-command(nil "package-recompile-all" "recom all") >>> funcall-interactively(execute-extended-command nil >>> "package-recompile-all" "recom all") >>> command-execute(execute-extended-command) >>> >>> This is possibly because the package `mu4e' was installed by the distro >>> package manager in a path where normal users don't have write access. >>> >>> I think `package-recompile-all' should either skip those packages that >>> are not installed by package.el or ignore such errors and continue to >>> recompile other packages. >> >> We have installed a patch in Bug#68678 on master (the commit is from >> last February, so you wouldn't see it yet on 29.4) that wraps the >> `package-recompile' call in a `with-demoted-errors' block. That would >> still emit a error message, but it wouldn't break the recompilation >> procedure. Do you think that is enough, or should be explicitly and >> additionally avoid re-compiling external packages? > > Yes. That patch is enough for me. Thanks!!
Great, I'll close this report then. If you haven't fixed the issue locally yet: Until you upgrade, a simple fix would be to add some advice around package-recompile that wraps it in a `with-demoted-errors' block. -- Philip Kaludercic on siskin