用dump吧.
日常使用portable dumper - Emacs-general - Emacs China (emacs-china.org)
(require 'package)
(package-initialize)
(message "Dumping start at %s" (current-time-string))
(global-font-lock-mode) ; highlight
(load-file (concat (file-name-as-directory user-emacs-directory) "init.el"))
(dolist (package '(
prog-mode cc-mode cpp python sh-script js json thingatpt lisp-mode scheme elisp-mode
dired proced elec-pair project xref paren midnight dash text-mode pcomplete
recentf saveplace woman man
em-script esh-cmd esh-io em-script em-xtra em-glob em-tramp em-basic eshell vc-git em-hist em-unix em-cmpl em-ls em-term em-alias em-banner em-pred em-prompt
org org-table org-timer org-list org-protocol org-archive org-clock org-agenda org-attach org-capture org-compat org-faces org-feed org-goto ol-irc ob-C ob-js ob-J ob-abc ob-calc ob-clojure ob-comint ob-core ob-emacs-lisp ob-eshell ob-haskell ob-java ob-lisp ob-lua ob-makefile ob-octave ob-org ob-perl ob-python ob-ruby ob-scheme ob-shell ob-sql
))
(require package))
(defconst *dump* t
"Using dumping now.")
;; dump image
(dump-emacs-portable "~/.emacs.d/emacs.pdmp")