心血来潮尝试用Bash on Ubuntu on Windows来安装Jekyll。

并非不熟悉Linux操作,也曾经跟风买了macbook,但在家里用得最多的还是windows台式机。作为一台老爷机,3D游戏一运行就跪,我也不搞windows开发,甚至连visual studio都没有装,只用来上网总觉得有些暴殄天物。

说实在的,自己早没有折腾的兴致,什么东西都是稳定就好。想当初反复尝试Linux的各种发行版本,是Ubuntu好,还是Debian好?是RedHat Enterprise好还是Fedora好?最疯狂的时候还在物理机上装了个FreeBSD,结果把MBR搞挂……

有些扯远了。还是回到主题。

预备工作

本人的OS版本如下

版次 Windows 10专业版
版本 1703
OS版本 15063.332

安装Bash on Ubuntu on Windows

个人偏向优先参考官方文档Installation Guide,毕竟官方文档的准确性和时效性更高些。顺便说一句,从Windows Store下载的速度实在感人,有条件的话还是需要借助下工具的。

安装ruby

最新的Jekyll(当前版本是3.4.3)要求的ruby版本要不低于2.0,高于Ubuntu on Windows的默认软件仓库中的ruby版本,因此需要使用其他方式来安装ruby2.x。Jekyll提供的文档Jekyll on Windows里使用了第三方软件仓库,不过我很久没用过Ubuntu了,也不想去验证这个仓库的来路,还是采用ruby圈更为常用的rvm方式来安装。参考文档见Rails On Windows 10 via WSL

NOTE 我在一些文档里看到有种说法是rvm方式安装的ruby2.x无法使用,从而采用了第三方软件仓库方式安装,但本人并没有碰到这种情况。

2017-06-05 UPDATE

NOTE 今天重启了Bash on Ubuntu on Windows后也出现了ruby无法找到的问题。原因是bash并不是login shell,不会自动载入.bash_profile

2017-06-10 UPDATE

解决方法是

tail -n 1 ~/.bash_profile | cat >> ~/.bashrc

借机又重新学习了bash的基本知识。

安装jekyll

切换至ruby-china的gem源然后安装。

完成

以上,完成!

另外,我用的Ubuntu on Windows版本似乎已经解决了inotify的问题,auto-regeneration是可用的。

回想当年用rubyinstaller的日子,还是这种unix的方式更顺手呢。