有人试过 spacemacs-docker 吗?

生命不息,折腾不止。。。。。。

都桌面了,那还 Forwarding 啥。Forwarding 的本意是在容器里绘制,然后转发到主机显示。

不知道这个安装 xfce4 桌面的方案最终效果是什么样的。xfce4 是不是必须的,还是仅仅因为输入法依赖。

那个博客我看了,是因为输入法才安装的桌面。有没有更优雅的解决方案呢?

内置输入法。也就是个词库的事,没必要大费周章。

甚至说回来,用回原来的Emacs,编译完exe以后复制过来也能接着用。

个人觉得输入法非常重要,甚至是我考虑是否换平台的决定性因素。并且配置输入法并没有那么简单,不管 chinese-pyim 还是 rime 都需要花时间配置,一旦形成自己的使用习惯也是不希望轻易改变的。

我不是太明白你的意思,你是说编译 emacs 吗?

试用了一天 docker 版的 spacemacs,简单说一下我的体验。

我觉得抛去 x11 forwarding 的各种限制不说,这个 docker 方案的 spacemacs 可以说是 spacemacs 2.0。

想像一下你只需要

  1. 安装 docker,
  2. 下载镜像,
  3. 根据你的 .spacemacs 生成一个本地镜像,
  4. 启动 spacemacs,

然后 bam!所有的一切都根据你的 .spacemacs 配置好了。比如你用 python layer,所有 python 相关的包,autopep8, ipython, 等等全部配置好了;你用 latex layer,基本的tex 宏包已经配置好了(只是在容器里,不会对你目前的系统有任何影响)。不管你用的是 windows,linux 还是 mac,你只要直接使用就好了,简直不能更爽好吗!?

并且更神奇的是,可以在手机,移动设备甚至浏览器上运行 docker spacemacs。

如果这还不能打动你的话,由于 docker 支持分布式计算,如果你需要教学的话,这可就太方便了,想像一下,只需要主机上安装一下,然后其它电脑上面都可以访问主机的配置,然后运行完全相同的 spacemacs 配置(使用主机资源,也就是说其它电脑配置渣点也没问题,比如用 Raspberry Pi )

当然目前还在起步阶段,需要有更多的人来贡献,比如写 Dockerfile,加入 dependency 等等,但同时这也是你加入 spacemacs comunity 的一个大好机会。 @guanghui.qu 怎么看?

2 个赞

我指的是因为你觉得编译起来麻烦的Windows用的Emacs依赖。

依赖的定义可宽可窄。并且即使那些依赖都有了,配置也是麻烦事(环境变量等等)。总之,没有 docker 方案这么 portable。

感觉还不如等wsl版本的呢.

wsl 给我的感觉就是一个官方版的 cygwin 或者 msys2,而且只支持 win 10。

历史的经验告诉我,不要太相信微软画的饼。

1 个赞

还要cygwin,好麻烦。直接VirtualBox + Xubuntu/UbuntuServer + Xmonad不就完了

虽然我现在也在用 virtualbox,但是每次启动 spacemacs 还要先启动 virtualbox 这一点真的让人很不爽。并且 virtualbox 即使是用无缝模式,那个桌面还是有点碍事。

cygwin 很麻烦吗?用 cmd 脚本连下载到设置 5 分钟就搞定了。

X11 的 Client/Server 架构一直以来都被认为效率低,随着电脑配置的提升,这样打包的方式会越来越多,这点应该是出乎设计者意料之外

是啊,如果不是这种架构就不会出现这种 Forwarding 方式运行 GUI app 了吧?

哪有桌面? 这分明是WIN32原生Emacs…

1 个赞

你是怎么做的?能不能截一张完整的桌面看看?

我猜猜:全屏模式运行 emacs,并且隐藏 virtualbox 的菜单和状态栏?启动怎么办?登录后直接启动 emacs?

Edit: 我已经知道怎么做了:

http://iallex.com/snippet-how-to-hide-menu-bar-and-status-bar-in-virtualbox/

但是这种方式只解决了一半问题,启动问题还是没有解决,并且 vm 方式仍然比 docker 方式占用更多资源。

这明明是原生WIN32嘛

忘了 还有一张你关心的

这离原生 win 32 远着呢吧 :joy: ,不过 Xmonad 看起来不错,等有空了试试。

docker 方案最大的软肋是磁盘读取性能,mount 的文件夹内部 grep 或者 git diff速度明显慢了,比虚拟机要慢。对这不能忍的同学不要试了。这是 docker 自身造成的,而且貌似一直没有解决。

OK,我替大家把坑踩完了。:joy: