Dockerfile

之前总结过 Docker 的使用,讲解了 Docker 的安装、相关概念以及基本使用。里面介绍的都是如何使用别人制作好的镜像,显然是不能满足我们的需要。接下来就来讲讲私人订制自己的镜像。

RxLifecycle 原理解析

介绍

从名字中可以看出 RxLifecycle 和生命周期有关。也的确如此, RxLifecycle 通过监听生命周期的变化,来解决 RxJava 内存泄漏的问题。

使用 hugo 搭建网站

hugo 是一个静态网站生成器,通过 hugo 可以快速生成属于你的静态网站。

安装 hugo

brew install hugo

创建网站

hugo new site blog

选择主题

在Hugo Themes中选择一个喜欢的主题,下载到新 themes 目录下

cd themes && git clone https://github.com/budparr/gohugo-theme-ananke.git

在网站根目录下的 config.toml 中把 theme 改成 gohugo-theme-ananke

Retrofit 源码解析

Retrofit 是 square 推出用来请求 RESTful 风格 API 的网络库,可以让开发人员快速开发 RESTful 风格的应用。

本文基于 retrofit2.5.0 进行分析。

在 Emacs 中用 mu4e 来收邮件

使用 Emacs 的人喜欢把所有的事情都使用 emacs 来管理,总是把有意思的事情集成进 Emacs。其中乐趣(痛苦)只有折腾过才能体会。

最近想在 Linux 中收发邮件,网页版使用起来多有不便,于是想着用 Emacs 来收发邮件岂不是很有趣。

在 Emacs 中折腾邮件也是一件很费力的事,看了好多文章有用 guns、mu4e、Wander Lust 的。试了一下 mu4e 比较容易上手,就决定是它了。

Linux 下 svn 使用

在上一篇文章中讲到了在 Linux 下搭建 SVN 服务器,其实在工作中我们用的比较多的还是代码管理,这篇文章就来聊一聊在 Linux 下用 svn 管理代码。

ArchLinux 安装 UEFI + GPT

之前写过一篇 Arch Linux 安装的文章,不过那是使用 MBR 引导的,但是现在很多机器都已经使用上 UEFI 了,这里就是在 UEFI 上的实践。

本篇文章只讲和 MBR 不一样的地方,不然文章会显得啰嗦很长。MBR 安装方式会在文末给出链接,两篇结合起来看会好点。

Arch Linux 安装

今年开始我一直使用 Manjaro ,这是一个基于 Arch 的发行版,有较友好的安装界面。省去了不少折腾,但是这也带来了一些问题,你不知道有些东西是没有必要的,驱动怎么安装,分区怎么分。从头开始会让你更了解 Linux ,虽然这么说,但我还是没有选择折腾,直到最近在升级的时候有线网卡找不到了,一下子和全球的人失去了联系,进入了孤岛,这是多么痛苦的一件事。于是下定决心,折腾一下。

本文不适合一点 Linux 都不懂的小白,至少你有使用过,懂得基本命令。如果你是新手 Manjaro 或者 Ubuntu 可能会适合你。

本文教程需要你准备一个额外的 4G U 盘,制作环境是 Linux。

使用 Appium 做测试

本文使用 Windows7 64bit 操作系统。如果你的操作系统不是 64 位的,不可直接使用下文中提供的地址。但是文末给出了各个软件对应操的作系统下载链接,请根据自己的系统自行选择对应的下载,以免误伤自己,毕竟折腾很容易受伤。

小米路由器刷 Padavan

半个月前,我把小米路由器刷成了 openwrt,使用之后发现很难受。很多软件没办法直接下载,更新源也更了半天更不下来。里面的功能配置起来有些复杂不能开箱即用,用来折腾倒是不错,但是一款路由器是可是互联网的通道,随便瞎搞没了网络,就不好玩了。在折腾的过程中发现了 Padavan。刷上用了一段时间还不错,记录一下。

小米路由器刷 openwrt

我买过两个小米路由器,一个是小米路由器 mini、另一个是小米路由器 R2D 带硬盘的。mini 一直放在家里用,没怎么去折腾。后来买 R2D 是因为电脑的空间剩余不多,买个带硬盘的,把一部分文件放到路由器上。买来后就不断在小米论坛上逛,看看有没有什么好玩的,后来发现了 openwrt。这就开启了折腾之旅,有搭建网站的、下载的、代理的……各种,这就是一台 Linux 电脑啊,很是兴奋也想搞个自己的。

开始在论坛上找各种教程,发现 R2D 的 opkg 居然不能用,试了各种办法都效果不好,最糟糕的是 R2D 居然不能装 openwrt,这就没得玩了。R2D 也就一直充当着一个硬盘的作用,偶尔也折腾一下,看看论坛有没有出能装 openwrt 的教程,等的我心都凉了,以后买路由器想折腾还是不要买小米的。 今年过年回家发现 WiFi 连不上了,跑到放路由器的地方一看,多出了一个白色的家伙,看着也像路由器,研究了一下这家伙确实是路由器,而且还是装宽带送的,这下好了,mini 腾出来了,也就有了下文。

Manjaro 的使用

Manjaro 使用的原因

最近把操作系统换成了 Linux,Linux 发行版众多,选择一个作为日常使用非常纠结。之前折腾过 RHEL 系、openSUSE、都非常不错,不过装 QQ 等国产软件还是比较麻烦,偶然在emacs-china上看到有人推荐使用 Manjaro 于是我就抱着尝试的心态试试,发现还不错。在distrowatch上排名排在第二,人气很高,这就让我放心了,那么多人使用解决问题也会比较方便。真正让我选择它的是在虚拟机上打开 Android Studio 速度比其他发行版快。

使用 SSH 登录服务器

常常和服务器打交道的同志,最频繁的操作就是登陆服务器。每次登陆服务器都要输入密码特别的烦人。 有没有一种办法可以只输入一次密码,以后有都不用再输入密码的办法?如果有多个服务器怎么办?又要输密码吗? 其实我们常常使用 SSH 登录服务器,这个 SSH 就提供了这样的操作,不过需要配置。

Siri 帮我开灯

苹果自从发布了 HomeKit,可以方便的把家里的智能设备连接在一起,结合 Siri 可以说说话就让家里的设备运转起来。但是只有苹果认证的设备才能用,没有认证的还是没有办法使用的。好在有nfarina逆向了苹果的协议,做出了homebridge才使得众多智能设备接入 HomeKit 成为现实。

2017 的我

这一年的变化

  • 比较明显的肚子有些变大,估计也重了不少,总不至于太瘦了。
  • 买了一些硬件,做了一些好玩的东西。
  • 工作之余简单学了一下 Vue、小程序开发,了解了一点人工智能,毕竟这么火不可能忽视。
  • 看了一些书。
  • 从 Vim 转到了 Emacs,也没有完全放弃 Vim,只是可能我以后绝大多数都会使用 Emacs。
  • 写了几篇博客。

使用 Git 管理 SVN 项目

Git 中有一个神奇的功能,他可以让你用 Git 来管理 SVN。两个之间互不冲突,对于喜欢使用 Git 的同志,这是一个非常不错的选择。自从有了它妈妈再也不用担心 SVN 不好用了。