请教大神,一次性将所有elpa源同步到本地后怎么使用

因为网络原因,就用上网方便的电脑按照 http://elpa.emacs-china.org/ 中提示的方法将所有的 ELPA同步到了本地, 有没有什么方法直接指定emacs从本地目录寻找需要的包呢 处理本地起http服务,有没有简单的方法直接指定本地的elpa-archives路径呢

全文搜索一下配置里的这个package-archives修改成本地路径应该就可以了

试过了,不行

好吧呀我觉得可能是 你需要改这个

改的就是这个,但是。。。不行:joy_cat:

:joy: 这就尴尬了。不懂

还是很感谢:joy_cat:

没有搜到这个变量,试着也加在user-init里面,还是没能成功

哦,我用的spacemacs,package.el 这个文件有搜到,但是没有这个变量,也不知道怎么加,还是非常感谢:grin:

试试这个仓库里面提供的方法? GitHub - redguardtoo/elpa-mirror: Create local emacs package repository. 15 seconds to install 115 packages.

同步到本地的elpa源长这个样子, 跟 .emacs.d/elpa/ 里的内容不一样,我试过比较某个包的文件,也不尽相同,所以也不能直接手动的将源的内容解压到.emacs.d/elpa/ 中 还是很感谢哈:grinning:

使用(setq package-user-dir “~/elpa/”)的方法也试了下,也没有成功,也可能是我没找对设置的位置

你可以试着在打开spacemacs之后M-x eshell-command进行测试,如果成功了再去找到配置文件里去修改。 甚至,可以用emacs -Q 使emacs处于干净状态,然后一步步加包测试

package-user-dir 没关系,这个路径是保存安装后生产的文件,经过了编译、生产 autoload 文件等步骤,跟 elpa源里的文件不一样。应该修改的是 package-archives (直接用本地路径,用不着 HTTP 服务器),Spacemacs 可能覆盖了这个设置(我不清楚,没用过 Spacemacs),或许应该修改 configuration-layer--elpa-archives

试过类似的方法,加载的时候会提示连接~:80,也就是说要在本地起http服务

试过了,这种修改方式貌似得在本地起http服务

没太懂,不是加包的问题,是想将elpa源指定到本地的离线资源

spacemacs可以正常用,只是想将elpa源修改为已经同步到本地的离线源, 这样就可以拷贝离线资源,不能上网的电脑上也可以很方便的从本地源安装各种包了

这个方法是将.emacs.d/elpa下的内容打包,跟直接备份~/.emacs.d/elpa差不多功能,

我是想利用已经下载到本地的elpa源,

之前试过修改dotspacemacs-install-packages 为all,但是有些包会安装失败

刚才看了一下直接同步到本地的源,并不能简单的将包解压后放在elpa目录下

还请子龙山人看看,谢谢了

我知道,只是说你加在配置里可能会有加载配置时的覆盖问题,最好在emacs启动后手动执行一次setq之类的命令,可以避免一些意想不到的因素

如果需要在本地起http服务那可能是package.el里面的设置问题吧,方便的话就起个本地服务器?