GPG 与 SSH Agent 转发

我一直有这样的问题,当我 SSH 到某个远程主机时,就很难进一步进行 SSH 和 GPG 相关操作,因为远端没有我的私钥,如果直接把私钥拷贝到远程,则非常不安全。 自从有了yubikey之后,这个问题更加严重:私钥在 yubikey 里,根本不可能“拷贝到远程”。

过去我的一些做法是使用 usbip,相当于把 yubikey “挂载”到远程的机器上,这个太 hacky 了,并且配置麻烦,不灵活。

直到我发现了 SSH 已经可以转发 UNIX Domain Socket。

Read More



YubiKey 4 简介与配置

2012 年我买了自己的第一块 YubiKey, 当时功能还很少,后来康哥在参加 BlackHat 会议 时,参展的 yubico 公司直接送 Yubikey NEO,于是我免费得到 一个。

Yubikey NEO 比早前的 Yubikey 增加了 OpenPGP Smartcard 和 U2F 支持,还可以通过 NFC 获得 Yubico One-Time-Password。唯一遗憾的一点是它的 OpenPGP Smartcard 支持到 2048 位 RSA,而我本人的 GPG 密钥都是 4096 位的,所以为了 使用它我只好增加了一个 2048 位的签名子密钥。

15 年 11 月 Yubico 又推出了 YubiKey 4,增加了 4096 位 RSA 加密支持(貌似只有加密,没有签名), 加上一些其他原因(后文),时间又正好赶上妹子回国,于是让妹子在 Amazon 买了帮我带了回来。

Read More


定制GH60机械键盘

引: 年初时开源哥搞了个喜闻乐见的团购定制vim键盘的活动, 我饶有兴致地参团了,然而这事儿最后被厂家(TEX)放了鸽子,也就不了了之了。

不过我对键盘的购买欲倒是被激活了,原有的FC660M是个好键盘,但是不能定制键位,切稍微比我的挎包长了那么一点点, 加之最近股市大跌,愈发觉得钱不花真不值钱(谁来打醒我),便总是想买个新的。

挑了半天,poker2 和即将上市的 poker3 还是不够灵活,不能为所欲为…… 所以目光转向了硬件开源的 GH60。

Read More


Debian 网络安装内核参数

短文备忘。

Debian 系网络安装使用 preseed 实现自动化,类似于 Red Hat 系的 kickstart。 preseed 的参数不一定需要通过 preseed 文件设定,可以直接通过 kernel cmdline 设置。

比如 Debian 安装时设置 apt mirrors 的时候,不能改 debian-security 的 mirror,就可以通过 preseed 参数设置。

参考我的 U 盘中 grub2 的 ubuntu 安装部分:

1
menuentry "Ubuntu 14.04 amd64 netinstall" {
    set root=(hd0,msdos1)
    linux /ubuntu-trusty-amd64/netinstall/linux mirror/http/hostname=mirrors.tuna.tsinghua.edu.cn apt-setup/security_host=mirrors.tuna.tsinghua.edu.cn
    initrd /ubuntu-trusty-amd64/netinstall/initrd.gz
}

我的 Vim 配置

我的 Vim 配置成型已经有不少时间了,过去也是看着 依云 等人的配置综合而成的, 再加上有人黑我一年不写blog,一写果然就是 Arch 挂,因此决定多分享一些 super user 系列的内容。

我的 vim 所有配置文件,均放在 GitHub 上,但它很可能不适合别人,因此 这篇文档主要讲我的配置文件组织方式、各个插件的用途等等,方便读者组织自己的配置文件。

废话少说,先上王道。

Read More


Libinput 与 Udev

Update

Libinput 0.19 至今,针对指点杆的配置都是开发者自认为的「自适应」配置,在我的设备上 加速度非常非常非常不够,开发者则是一副自己很懂的样子。

https://bugs.freedesktop.org/show_bug.cgi?id=91369

于是我只好把 libinput patch 掉了

1
2
3
4
5
6
7
8
9
10
--- a/src/filter.c
+++ b/src/filter.c
@@ -720,7 +720,7 @@ trackpoint_accel_profile(struct motion_filter *filter,
else if (speed_in < threshold)
factor = 1;
else
- factor = incline * v_us2ms(speed_in - threshold) + 1;
+ factor = incline * v_us2ms(speed_in - threshold)/dpi_factor + 1;

factor = min(max_accel, factor);

Update

Systemd 221 之后 已经有 trackpoint 的 hwdb 了,libinput 也支持 trackpoint 加速,我现在的配置是

evdev:name:*DualPoint Stick:dmi:bvn*:bvr*:bd*:svnDellInc.:pnLatitudeE7440*:pvr*
  POINTINGSTICK_CONST_ACCEL=2

Update End

近期 Arch Linux 升上了 Gnome 3.16,Wayland 相关组件开始大量启用,比如 GDM 默认使用 Wayland,Xorg 默认使用 libinput 替代 evdev 等。

Arch 更新之后我们首先关心的是:有没有东西坏掉?很幸运遗憾,这次鼠标速度不对了…… 具体来说,我习惯使用 trackpoint ,之前使用 xset m 5 2 设置光标速度, 更新后此法无法调整光标速度,可见 xf86-input-libinput 不再接受这种设置, 同时即使 gnome 设置中把鼠标速度调到最快,trackpoint 的速度仍然很慢。

这个 bug 已经有 好事者 好心人汇报,最近也有 patch 提交,下个版本的 libinput 就设置 trackpoint 的加速参数了。

可是我等不及啊老湿!而且怎么设置参数阿根本找不到在哪里调好不好!

Read More


给妹子看的 Arch Linux 桌面日常安装

謝邀。

准备工作

首先,准备一张你参加活动得到的 Ubuntu 或者 Deepin ,或者其他什么发行版的安装光盘,是的它有包装很漂亮,哦别急着找光驱,找个打火机把它烧掉,以示决心。

然后,拿出你收藏多年的《鸟哥的Linux私房菜》,不用翻开,啊烧掉有点可惜,把他送给你的冤家就好了。 鳥哥是 RedHat 玩家,而且内容太老了,作为新手的你用鳥哥指导 Arch Linux 安装只能误入歧途。 (鳥哥很萌哒,我不该黑他)

洗个手,沐浴更衣,斋戒三天,挑选良辰吉日,面向紫禁城方向摆好计算机,准备迎接挑战。

在开始之前,请在心中默念三遍:

Arch Linux是世界上最好的发行版,我一定能掌握它!

Read More


修复GTK3 CSD外观

GTK3 3.12 之后强制开启了CSD(Client-Side Decoration),其实这个feature挺好的,但是在平铺式窗口下,GTK3程序的窗口边缘出现了大块留白,极其难看:

貌似引起问题的原因是CSD接管了窗口阴影的渲染,窗口管理器就把阴影边缘包括在窗口之内了, 经 @xiaq 提醒,不开compton/xcompositor后由于直接不支持阴影了所以就没有这个问题。 但是这样的话窗口透明也就没有了。

一个解决方式是修改GTK3的样式,编辑(或新建)~/.config/gtk-3.0/gtk.css,加入以下内容:

1
2
3
4
5
.window-frame 
{
box-shadow: none;
margin: 0;
}

Done.


握着你的手教你画哀女王

炎炎夏日来到,去年的Tee不够潮了有木有,定制Tee的话,丝网印数量不够,热转印效果不好,于是决定手绘!

去万能的淘宝搜一下「纺织颜料」即可,不需要用丙烯,亲测,这种颜料是不会轻易掉色的。

于是我们来画个哀女王。

第0步

设计一下样式,用inkscape画了个。

接下来我们开始画Tee。

Read More