>> [2. text/x-diff; 0002-Add-command-to-start-Emacs-with-specific-packages.patch]... >> >> [3. text/x-diff; 0001-Add-a-function-to-query-the-Emacs-executable.patch]... I have slightly modified your version, fixing issues I had, in case anyone else wants to try it out: (defun package-isolate (packages) "Start an uncustomised Emacs and only load a set of PACKAGES." (interactive (list (mapcar #'intern (completing-read-multiple "Packages: " (mapcar #'car (package--alist)))))) (let* ((name (concat "package-isolate-" (mapconcat #'symbol-name packages ","))) (deps (mapcan #'package--dependencies packages))) (apply #'start-process (concat "*" name "*") nil (list (file-truename (expand-file-name invocation-name invocation-directory)) "--quick" "--debug-init" (format "--eval=%S" `(progn (require 'warnings) (add-to-list 'warning-suppress-log-types 'initialization) (require 'package) (setq package-load-list ',(mapcar (lambda (p) (list p t)) (append packages deps))) (package-initialize)))))))