前言
没事折腾一下把尘封已久的 hexo 换成了 hugo,试了一下编译速度明显比 hexo 快很多。怎么使用主题网上介绍比较多,这里记录下其他的东西。
部署
首先是部署,无非两种方案:
Github pages。优点:免费,快捷。缺点:编译麻烦。 大多教程都是告诉你本地编译后把
publish
推上去。个人觉得这样比较恶心,写博客就专心写博客。而且假如你在手机里浏览时,发现一个错别字,顺手就在GitHub
的Web
界面就把错别字改了,然而这样并不会重新生成静态页面和部署。 因此一种高级点的方案是配合travis
,如果稍微洁癖点可以建两个仓库或者两个分支,一个当源码,一个当github pages
读取的repo
,每次提交之后自动编译提交,所谓眼不见为净。自己服务器做编译。 优点:不污染代码库,甚至能直接本地跟服务器文件夹同步,改完编译 github 都不用推送。毕竟,写作应该是一个相对单纯的事情。 缺点:买服务器要钱,linux 不熟的还折腾。
个人选择了方案二,主要是刚好有台阿里云服务器 + 轻度洁癖。
Hugo 安装
其实参照 官方介绍 已经介绍得很完美了,这里补充点注意事项。
macOS
macOS
最简单,直接 homebrew
大法, 比较恶心的是 homebrew
每次装东西前都会自己去 update,墙内的话建议换个源。
CentOS
本来在介绍里没看到 CentOS 太好的方案,打算源码编一把,无奈墙太高,选了别的方式。
首先需要
golang
的环境yum -y install golang # check version go version
- Linux 官方建议是使用
snap
的方式安装,但是对于很多系统snap
也是没有。作为一个装东西脸黑的人,选择用epel
。
添加
epel repo
vim /etc/yum.repos.d/hugo.repo
- Linux 官方建议是使用
输入以下内容,最好去官方看看 最新的文件地址 ,这里是 Hugo 0.55
版本,主要核对 baseurl
。
[daftaupe-hugo]
name=Copr repo for hugo owned by daftaupe
baseurl=https://copr-be.cloud.fedoraproject.org/results/daftaupe/hugo/epel-7-$basearch/
type=rpm-md
skip_if_unavailable=True
gpgcheck=1
gpgkey=https://copr-be.cloud.fedoraproject.org/results/daftaupe/hugo/pubkey.gpg
repo_gpgcheck=0
安装
yum -y install Hugo
hugo version
一个卡了一会的点是 hugo 编译 scss
需要 extends
的版本,装了几次感觉还是不大行,但是也没有任何报错,主题编译的时候不生效,最后还是把 css/js
这些十年都不会变的样式文件产出直接打了出来。
Nginx
网上教程很多,不多说。
yum install epel-release
yum install nginx
whereis nginx
# => nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx
#start
nginx
ps -ef |grep nginx
nginx -s reload
nginx -s stop
Webhook
也不多说,使用的 github_webhook_handler + pm2
主题
一直以来都想着自己搭个博客系统,然后自己撸个主题。后端数据库都耍过一阵,但是最终还是懒,到了很多东西能用就行的心境。不过也一直告诉自己,要有造轮子的能力和不造轮子的决心。
主题使用的 leaveit , fork 下来参考 bear 改了改配色和格式,一些新版的修复,还有文字统计和阅读时间大概推算等。
目前 修改/增加 的东西:
- 修改主题配色和标题样式等细节调整
- 新增进度条
- 新增字数统计功能和阅读时间功能
- 新增侧边栏
- live2d
基本都是用第三方的东西,就懒得详细些了,有兴趣的可以参见 Github 的提交记录