又过了一年。受到Mastodon时间线上的博主们启发,我想写一篇博文总结一下一年来做的事情。但是我发现我不知道该怎么组织起这样一篇博文。想了想,决定以今年看过的书、玩过的游戏和一些项目为脉络,聊聊今年的感想。减少尴尬,先以小作文经典开头问声好。
人的脆弱和坚强都超乎自己的想象。有时,我们可能脆弱得一句话就泪流满面;有时,也发现自己咬着牙走了很长的路。 —— 莫泊桑《一生》
又过了一年。受到Mastodon时间线上的博主们启发,我想写一篇博文总结一下一年来做的事情。但是我发现我不知道该怎么组织起这样一篇博文。想了想,决定以今年看过的书、玩过的游戏和一些项目为脉络,聊聊今年的感想。减少尴尬,先以小作文经典开头问声好。
人的脆弱和坚强都超乎自己的想象。有时,我们可能脆弱得一句话就泪流满面;有时,也发现自己咬着牙走了很长的路。 —— 莫泊桑《一生》
我对博客功能的要求是拒绝花里胡哨,一切为阅读服务。现在是2021年年底,正好我要为我对年终总结的一些设想给博客更新一些功能:快速引用素材、Steam游戏卡片、引用Wikipedia条目。
观测你的猫的生死可不是件易事。
RSS(英文全称:RDF Site Summary 或 Really Simple Syndication[2]),中文译作簡易資訊聚合[3],也称聚合内容[4],是一種消息來源格式規範,用以聚合多個網站更新的內容並自動通知網站訂閱者。使用 RSS 後,網站訂閱者便無需再手動查看網站是否有新的內容,同時 RSS 可將多個網站更新的內容進行整合,以摘要的形式呈現,有助於訂閱者快速獲取重要信息,並選擇性地點閱查看。 ———— RSS - Wikipedia
之前花了两天时间完成了这个功能,后来心血来潮在网站上看看时发现有bug。修好bug之后我觉得还是水一篇文章吧,否则博客开了一年都没什么内容。这篇文章主要就是介绍RSS订阅功能以及实现时的一些技术细节,如果想要扒我(包含这个功能)的主题或者借以参考的话,我过一段时间会把这个主题整理开源出来。
谨以此集纪念我自己的“20年代初”。拙作几篇,仅作备查。
几篇拙作,仅以备用。
今天晚上折腾了一个小时,终于把 Howdy 折腾出来了,写篇博文作笔记以备查。
Howdy 是一个为 Linux 提供 Windows Hello 风格验证的软件,它作为一个 PAM 模块为其它软件提供人脸验证服务。不像 Windows Hello 需要认证过的IR摄像头, Howdy 基本上只要是个摄像头都可以使用。当然,如果没有 IR ,低光环境下的识别率就很拼摄像头的素质了。
这篇博文主要内容是给 sudo 弄 Howdy:sudo 老是让人输密码着实令人烦躁,但是我又不想取消所有认证,正好 Howdy 的需求很低(只需要一个摄像头)。
在这一篇文章中,我会介绍makru_langc的安装。和普通的编译工具不同,makru_langc是作为Makru的一个插件安装的,而Makru的插件只能安装到项目上随项目源代码附带。这会带来一些不方便,但是能够保证每一个项目都能选择最适合的插件和插件版本而无需担心兼容成本。其实类似的方法在make和cmake的项目中也能经常看见,很多项目都会带有一些脚本或者预定义宏来帮助编译,只是Makru将它变成强制行为了。
Makru是一个用Python编写的全新编译工具。它的目的不是提供更多的编译逻辑,而是提供一个统一的平台方便开发和引入新的编译逻辑。Makru和目前主流的make-like编译系统最大的不同点再于:它没有使用类似宏语法之类的东西为配置文件提供超高的灵活性,而是直接选择了很多现代包管理工具正在使用的结构化数据配置文件(Makru使用的是yaml)。makru_langc就是在它之上构建的C语言项目编译插件。
得益于这样的选择,makru_langc提供了非常流畅的编译管理体验。你可以快速理解并编辑配置文件,而不是在配置文件的海洋里晕头转向。另外,makru_langc还支持高自由度的自定义,你甚至可以利用它提供的工具编写自己的编译逻辑。
这个文章系列将会介绍一个用makru_langc来管理编译的小演示项目scat,它接收标准输入然后输出到标准输出。为了演示makru_langc的功能,scat会有一个子项目叫libcopy。这个子项目里只有一个函数:从第一个File输入,输出到第二个File。
新博客的第一篇博文,介绍一下博客文字的使用协议:
如无特别规定,博客中作者的文字、图片等非代码资源使用 创作共享 保留权利-非商业性使用-禁止二次演绎(CC BY-NC-ND) 4.0 协议共享。
如无特别规定,博客中作者的代码使用 GNU Affero General Public License, version 3 or later 协议共享,但是你可以通过邮件向作者请求帮助(包括额外的授权)。