You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Emacs使用package-install无法安装doom-modeline包怎么办

问题核心原因

你配置里的package-archives语法存在错误:add-to-list作用是向列表中添加单个元素,你将三个源打包为一个子列表传入,导致Emacs无法正确识别MELPA源,而doom-modeline是托管在MELPA源的包,自然无法检索到。

解决步骤

  • 第一步:修正init.el中的软件源配置
    将原有错误的源配置:
(add-to-list 'package-archives 
                   '(("melpa" ."https://melpa.org/packages/")
                     ("elpa" . "https://elpa.gnu.org/packages/")
                     ("org" . "https://orgmode.org/elpa/")))

替换为以下任意一种正确写法即可:
写法1(逐个添加源,推荐):

(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(add-to-list 'package-archives '("elpa" . "https://elpa.gnu.org/packages/") t)
(add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t)

写法2(直接给源列表赋值):

(setq package-archives '(("melpa" . "https://melpa.org/packages/")
                         ("elpa" . "https://elpa.gnu.org/packages/")
                         ("org" . "https://orgmode.org/elpa/")))
  • 第二步:删除冗余配置
    你现有配置中重复初始化了两次use-package,保留以下最简配置即可,多余的重复部分直接删除:
(require 'package)
(setq package-enable-at-startup nil)
;; 此处放你上面修正后的软件源配置
(unless package--initialized 
    (package-initialize))
(unless package-archive-contents
    (package-refresh-contents))

(unless (package-installed-p 'use-package)
  (package-install 'use-package))
(eval-when-compile
  (require 'use-package))
(setq use-package-always-ensure t)
  • 第三步:刷新软件源缓存
    重启Emacs,或者手动执行命令M-x package-refresh-contents RET刷新源缓存。

  • 第四步:安装doom-modeline
    重新执行安装命令M-x package-install RET doom-modeline RET即可正常检索到包完成安装。如果习惯用use-package管理包,也可以直接在init.el中添加(use-package doom-modeline),重启Emacs会自动完成安装。

内容的提问来源于stack exchange,提问作者AhmedSat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 11:15:05