Author: librehat

  • 浅析C++11的Lambda表达式

    Lambda表达式(又称Lambda函数,英文原文是Lambda Expression),是C++11的新特性中非常实用的一个。

    之前一直自动忽略C++11的新特性,因为很多新特性的应用场景都十分有限,Lambda表达式就不同了,网上放狗一搜可以看到「函数对象」的理念在不少语言中都有实现,标准模板库之前有std::function来把函数包装成对象来使用,而现在有了Lambda表达式之后就更加方便了。

    下面稍微解释一下Lambda表达式。

    (more…)

  • Aria2伪装uTorrent进行PT下载

    去年我写的《NetBSD配置aria2的web前端YAAW笔记》这篇文章有些配置项有些outdated了,正好最近在ODROID-U3安装了aria2,配置了YAAW作为其Web前端捣鼓PT下载,于是有了本文。

    教育网的童鞋们应该有不少逛PT论坛的,小型的校内PT也好,出名的大的诸如六维也好,大多都限制BT客户端的选用,一般uTorrent、Transmission等客户端都在白名单内。

    aria2是支持Bit Torrent和磁力链接,要让aria2顺利进行PT下载,重点在于伪装。以伪装最新的uTorrent 3.4.1为例,下面是.aria2/aria2.conf的一段关于PT下载的配置。
    (more…)

  • Linux下驱动腾达Tenda W311E PCIe无线网卡

    家里的有线网卡再一次被雷电烧坏了……这次干脆买了一张PCIe无线网卡,和路由器零接触,这下应该能放心不被雷击了……Orz

    买的PCIe无线网卡型号是腾达W311E,在Windows下用附带的光盘安装好驱动就一切正常了,但是Linux下一看简直傻眼,芯片型号是(lspci命令查看):

    Network controller: Broadcom Corporation Device 43aa (rev 01)

    43aa我Google了大半天都没找到……不过总归是43xx吧,但是很遗憾,b43等开源驱动是无法识别这张网卡的。能用的只有Broadcom的闭源驱动wl和ndiswrapper模拟Windows XP的驱动。

    (more…)

  • IPv6开启转发并保持自动获取PPP提供的IPv6地址

    标题想了好久……请不要吐槽晦涩难懂

    先说一下应用场景:

    • 一台Linux-based box(ARM开发板如ODROID U3、Raspberry Pi,或者OpenWRT神马的)当作Host + Router,通过有线网卡连接交换机Hub作为局域网网关和服务器,再通过PPPoE拨号连接外网(PPPoE能自动配置并获取IPv6地址)。
    • 局域网PC配置好本地的IPv6地址透过局域网网关(上面那台Linux Box)连接外网,要求能以IPv4和IPv6协议访问Internet,但是获得的IPv4和IPv6地址都是内网地址

    (more…)

  • Linux下连接无线网络后拨号(即PPP over WiFi)

    连接一个无线网络(例如一个当交换机的无线AP),然后ADSL拨号上网。这一个在Windows下很简单的事情,在Linux下却变得稍微有点麻烦,甚至让人不知所措。今天有空在Fedora下捣鼓了一把,发现其实相当简单,只不过得通过命令行式的操作而已,下面就拿来和大家分享一下。

    (more…)

  • Shadowsocks的图形化客户端Shadowsocks-Qt5介绍

    2015-04-08更新:2.0版全新发布,以下部分描述已过时(本文是写于0.x版时期)

    不知道Shadowsocks的Windows用户有多少呢?除了一个简陋的Shadowsocks-go客户端、一个废弃的Shadowsocks-csharp客户端和一个用node实现的Shadowsocks-gui客户端,实在找不到一个Native的图形化客户端。于是自己挖坑来填了(越挖越大……)!

    下面开始“推销”我的Shadowsocks-Qt5给各位看官使(tiao)用(keng)了!

    Shadowsocks-Qt5

    (more…)

  • 让Shadowsocks服务器同时监听IPv4和IPv6端口

    中国电信的天翼校园宽带客户端简直令人发指,现在封锁越发厉害了,已经无法使用系统自带的PPPoE拨号了(所以刚买几天用来作服务器的ODROID-U3暂时下岗了……)。还好,学校有免费的IPv6网络,速度虽然不快,但是至少免费不限流量。正好我的VPS有IPv6地址,于是寻思着怎么利用VPS每月500G的流量来供我上网……一开始看了L2TP、OpenVPN等VPN的办法,发现让它们支持IPv6很麻烦。转念一想,不是还有Shadowsocks嘛!!!Shadowsocks支持IPv4/IPv6协议,但是一开始发现连上去显示套接字连接失败。

    (more…)

  • 将ODROID-U3 Debian镜像烧录进microSD卡并扩大根分区至整张卡

    在HardKernel下单了ODROID-U3 Community Edition(和U3一模一样,就是ODROID用来扩展韩国海外市场的),不熟悉这个东西?Raspberry Pi总听说过吧?ODROID也是ARM开发板,不同在于ODROID是一家韩国公司出品的,芯片是清一色的三星Exynos系列,这款U3是性价比比较高的ARM开发板了,Exynos 4412 1.7GHz四核CPU,四核Mali-400 440MHz的GPU,2G低电压DDR2 880MHz的内存,可插eMMC模块或者microSD卡作为板子的存储器,3个USB2.0接口,1个以太网接口,1个HDMI接口(支持1080P),有RTC(需要接备用电池),更多详细的参数可以看官网

    好了,回归主题,毕竟本文不是推销ODROID开发板的,虽然我的U3还没到,但是现在已经开始准备一张灌好Debian的microSD卡了(别问为什么不用eMMC,eMMC模块对于一个学生党还是太贵了!)

    (more…)

  • Nginx监听IPv6地址端口的正确操作方法

    先在终端下输入以下指令,看看输出结果有没有–with-ipv6,没有的话就需要重新编译带有ipv6支持的nginx了。

    nginx -V

    编译nginx就不在这里说了,下面讲一下正确地配置nginx让其同时监听IPv4和IPv6的端口(包括http协议的80和https协议的443端口),同时介绍一下只监听IPv6和特定IPv6地址的方法。

    (more…)

  • 优雅并极客地添加/更改Android系统的字体

    Android换字体有很多办法,其一是用iFont之类的工具,优雅但不极客。其二是用root权限直接到/system/fonts里替换DroidSansFallback来更改中文字体,极客但是非常不优雅!

    看看/system/etc/fallback_fonts.xml吧,注释都告诉我们如何优雅并极客地添加字体了。下面以添加苹果iOS自带的中文字体STHeiti为例,详细讲述一下整个过程。

    (more…)