小米路由器mini(Xiaomi mini R1CM)刷Openwrt

scp /path/to/PandoraBox-xxxx.bin [email protected]:/tmp/PandoraBox.bin
mtd -r write /tmp/PandoraBox.bin firmware

從爬文中得知,小米路由器Mini 官方韌體是雙系統,由於 ROM 有16MB,官方韌體都小於8MB,所以會有一份備援系統(8MB+8MB),因此如果刷了大於 8MB 的第三方韌體的話,會覆蓋掉第二個分區的系統,導致未來刷回官方韌體時會有掉 SN 的問題,而且再也無法刷入 SSH,從此以後就只能乖乖用官方韌體,再也不能玩刷機,目前新版的 PandoraBox 韌體大約都在 10MB 左右,所以刷機還真要有點決心,除非完整備份小米路由器Mini 中所有分區的資料,才能在日後完整刷回官方韌體,當然,如果已經完全放棄官方韌體的話,這些問題都是不用考慮的。from - http://blog.icece.tw/MiWiFi-Mini-Flash-uboot

Disable middle button of mouse

Execute those commands:

xinput list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ MI Dongle MI Wireless Mouse             	id=11	[slave  pointer  (2)]
⎜   ↳ MI Dongle MI Wireless Mouse             	id=12	[slave  pointer  (2)]
⎜   ↳ DLL0704:01 06CB:76AE Touchpad           	id=14	[slave  pointer  (2)]
⎜   ↳ PS/2 Synaptics TouchPad                 	id=17	[slave  pointer  (2)]
⎜   ↳ MiMouse                                 	id=21	[slave  pointer  (2)]

xinput set-button-map 21 1 0 3

阅读全文

Infinality and Harfbuzz

会发生冲突,这是今天Archlinux无法启动输入法界面的元凶。重新安装freetype2\fontconfig\cairo以替换infinality-bundle。

添加PPA出现GPG问题

问题:

gpg: keybox '/tmp/tmpyiw6jvck/pubring.gpg' created
gpg: /tmp/tmpyiw6jvck/trustdb.gpg:建立了信任度数据库
gpg: 密钥 531EE72F4C9D234C:公钥“Launchpad webupd8”已导入
gpg: 合计被处理的数量:1
gpg:           已导入:1
gpg: 找不到有效的 OpenPGP 数据。

阅读全文

最近学Go,感觉挺不错的。闲来无事用它写了几种常用的基础算法。

快排

思想很简单,实现起来为了方便每次以left作为基准,也可以使用BFS来节省递归栈:

// QuickSort returns a sorted slice
func QuickSort(arr []int) {
	if len(arr) <= 1 {
		return
	}
	left, right := 0, len(arr)-1
	for left < right {
		if arr[left+1] > arr[left] {
			arr[left+1], arr[right] = arr[right], arr[left+1]
			right--
		} else {
			arr[left+1], arr[left] = arr[left], arr[left+1]
			left++
		}
	}
	QuickSort(arr[:left])
	QuickSort(arr[left+1:])
}

阅读全文

proxychains-ng

git clone https://github.com/rofl0r/proxychains-ng
cd proxychains-ng                                 
./configure --prefix=/usr --sysconfdir=/etc 
make
make install
make install-config   # 生成配置文件
echo 'http 10.100.100.136 4411' >> /etc/proxychains.conf  # 输入代理设置

阅读全文

MEOW

安装

curl -L git.io/meowproxy | bash
# 建议安装目录 /usr/bin/

复制自己的配置文件

# in local computer
xclip -sel clipboard < ~/.meow/rc
# in CentOS server
mv ~/.meow/rc ~/.meow/rc.bak
xclip -o -sel clipboard > ~/.meow/rc

阅读全文

基础

这章将会介绍GTK+比较重要的几个方面

主循环和信号

阅读全文

Element.classList

返回DOMTokenList,IE version>=10不完全支持。

  1. 不支持classList.contains的第二个参数(force)
  2. add和remove方法不支持多参数
  3. SVG,MathML结点没有classList属性

阅读全文

消息总线

Openstack各项目之间通过RESTful API进行通信;而项目内部不同服务进程则需要通过消息总线通信。关于消息总线的实现,包含在Openstack.oslo.messaging库中。

RPC

远程过程调用,一个服务进程可以调用其他远程服务进程的方法,有两种方式:

  • call 远程方法会被同步执行,调用者会阻塞直到取得返回结果。
  • cast 远程方法会被异步执行,调用者需要通过其他方式查询这次远程调用的结果。

阅读全文

首先我使用的是由zippera基于官方Light主题改进而来的Lightum主题,其他主题可能稍有出入。
##速度优化
参考之前的文章:静态页面优化。然后使用了hexo-qiniu-sync这个项目,将静态的图片以及css、js同步到了七牛云。(PS:主题模板中包含了两个不同版本的jquery,分别在head.ejs与after-footer.ejs中,随便删除一个。)

对于处于body区域的script、style的引用尽可能的加入data-no-instant属性,避免InstantClick重复加载。
##给instantclick加载进度条加上阴影效果

#instantclick-bar{
-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.56);
box-shadow: 0 0 8px rgba(0, 0, 0, 0.56);
}

##加入Swiftype搜索
Swiftype官网申请代码,然后修改search.ejs文件为:

<div class="search">
<form>
<input type="search" id="st-search-input" placeholder="<%= __('search') %>">
</form>
</div>
阅读全文