每个当下,都是过去的结束,以及未来的开始

    • clsty
    • 0:00 am

    无论发生了什么,后悔是无意义的,唯当初的决定才有意义。

    arCNiso 例行更新

    只是例行更新,一切正常。1

    空间站月度更新暂停

    因为某些原因,笔者在七月无力写出至少一篇文章,并且之后维持月更也较为困难,因此暂停月度更新;但随缘更新还是可能会有,若有更新内容也同样会在“新鲜事”里告知,RSS 订阅者可正常收到消息。

    衷心感谢各位读者朋友的支持。


    1. arCNiso 是笔者为了解决原版 archiso 的一些痛点而改进的一个分支,仓库为 GitHub:clsty/arCNiso。 ↩︎


    • clsty
    • 0:00 am

    长风破浪会有时,直挂云帆济沧海。 —  — 李白《行路难》

    arCNiso 例行更新

    例行更新。1 值得注意的有:

    • OpenSSH 最近修复了一个重大的安全漏洞,因此请及时更新到最新版。
    • 引导器(目前是 systemd-boot)所陈列的启动条目有所变更,其中默认条目不变更键位(即不交换左 Ctrl 与 Caps 键),且禁用语音与蜂鸣器。
    • 常被国内用户诟病的 reflector 服务现已被禁用,用户可通过 systemctl enable --now reflector 来重新启用它。

    空间站更新汇总

    除了本文以外,空间站还更新了以下内容:

    散文屋

    1. arCNiso 是笔者为了解决原版 archiso 的一些痛点而改进的一个分支,仓库为 GitHub:clsty/arCNiso。 ↩︎


    • clsty
    • 0:00 am

    有时或许连你自己都不知道,你已有达成目标的能力;直到你得到了一份高于活化能的初始能量。

    空间站的又一点变化

    上个月,空间站又发生了四个主要变化1,距离理想中的究极完全体又双叒叕进了一步。

    链接管理优化

    之前本站采用所谓“portal”来确保链接不会 404;目前,这些链接仍然不会导致 404,只是每个页面的固有链接发生了变化。具体详见这篇文章

    边脚注的实现

    这是我个人最喜欢的一个改进。

    • 脚注会同时出现在边注的位置2,我称之为“边脚注”。
    • 边脚注由 JavaScript 实现,不会像由 Perplex 内置短代码实现的边注那样干扰 RSS 输出。
    • 布局表现:
      • 总体位置较为灵活,会随着页面宽度改变3
      • 竖直位置与正文内部的脚注基本接近。
      • 在正文外部时,与中心部分的水平相对位置非常稳定。
      • 在正文右侧时,不会与 featured 图片重合。
    • 修复了当多篇含有脚注的文章被渲染到同一页面时,脚注 id 冲突的问题。4

    如图所示,笔者很早就想要这样的效果了,没想到自己真的能做出来,作为强迫症无比满足。

    Figure 1: 纪念终于能稳定显示在正文左侧的边脚注

    Figure 1: 纪念终于能稳定显示在正文左侧的边脚注

    侧边目录栏改进

    Perplex 本来也内置了一个侧边目录栏,但是存在感极弱。

    • 网页加载时,目录栏不会自动打开。
    • 除非屏幕极宽,否则目录栏不会一直显示,一旦失去焦点也就失去了踪影。
    • 当前所在标题不会在目录栏中高亮,也更不会自动滚动到可视范围。

    这次的改进不仅依次解决了以上问题,还增加了不同屏幕宽度下位置、尺寸与透明度的自适应改变,以期与其它元素5和谐共处。

    亮色模式修复

    这部分的改进背后是一个有点令人哭笑不得的事件。

    起因是有人向我反馈,首页的部分章节标题与背景色同为白色,进而融为一体。我感到大惑不解,毕竟“Perplex 可是只支持深色模式的”。

    而之后我才了解到,Perplex 其实本来就支持亮色主题,我对此不知情的原因则是:

    • 我习惯在浏览器与系统上始终开启深色模式。
    • 大多数支持亮/暗两套配色的 Hugo 主题都会给出一个切换按钮,而 Perplex 是个例外。

    在一些紧急修复之后,亮色模式能够正常工作了,只是离我的理想仍有差距 —  — 至少也要实现一个切换按钮,不然又会出现像我一样以为它只支持暗色(或亮色)模式的人吧。6

    arCNiso 例行更新

    只是例行更新,一切正常。7

    空间站更新汇总

    除了本文以外,空间站还更新了以下内容:

    散文屋

    1. 次要变化则包括新增字词数统计、Artalk 更新、再次加载页面时恢复上一次浏览位置、代码块自动换行而非水平滚动、代码块显示行号等。 ↩︎

    2. 这种做法并不是首创,而是借鉴自 gwern.net。 ↩︎

    3. 尽可能减少边脚注与侧边目录栏抢空间的机会。 ↩︎

    4. 这口陈年旧锅本来要扔给 Hugo 所依赖的 Markdown 引擎 —  — Goldmark,但被扔回到 Hugo 这边已经有约四年了,参见 Hugo 论坛的讨论以及 GitHub 上的 issue。 ↩︎

    5. 容易与目录栏争抢空间的,主要是头图和边注。 ↩︎

    6. 这需要将 CSS 与 JavaScript 一同做调整,并不是只靠已有的 CSS 加一行能用按钮触发的 JS 命令就能实现的,我只能试着抽空实现它了。咕咕咕 ↩︎

    7. arCNiso 是笔者为了解决原版 archiso 的一些痛点而改进的一个分支,仓库为 GitHub:clsty/arCNiso。 ↩︎


    • clsty
    • 0:00 am

    赛博空间站,前进四!

    空间站的四个变化

    上个月1,空间站发生了四个变化,距离理想中的究极完全体又进了一步。

    启用在 Cloudflare 上的副本

    之前,域名 blog.clsty.link 对应的静态站点���管在 GitHub 上,由于国内访问不稳定,套了一层 Cloudflare 保护代理2

    为避免不必要的麻烦,现在 blog.clsty.link 直接指向 GitHub Pages,并且新增一份副本布署在 Cloudflare Pages 上,域名为 css.clsty.link

    读者可直接访问 css.clsty.link,它与 blog.clsty.link 两个站点可视为线路不同的同一站点,评论区也是完全相同的。

    终于有评论区了

    Perplex 主题本身并不支持评论区,好在笔者的 Hugo 水平稍微提升了一些,可以自行尝试集成。在试用了多种评论系统之后,我最后决定暂时采用 Artalk,它与我理想中的评论系统只差一步之遥(就是下面所说的这一步)。

    由于 Artalk 使用填写邮箱来确定身份,却暂不支持验证邮箱,无法防止有心之人冒充他人身份,于是本站暂时追加了“也需要亲自发评论到我的邮箱”的这种过渡措施,有效期至 Artalk#840 解决,且本站 Artalk 成功更新之时。

    再见 Hugo archetypes;你好 ox-hugo

    我曾在 Emacs China 吐槽过,用 Perplex 主题发文还要配图,并且填写巨长的导言区,流程可谓繁琐至极;而 Hugo 自带的 archetypes 模板机制,在 Perplex 主题下能发挥的作用非常有限,即使我写了个脚本封装 hugo new content,以便在任意目录深度(而不限定于项目根目录)调用 archetypes,导言区的准备工作依然非常复杂。

    在迁移发布了仅两篇之后,我就无法再说服自己“这只是仪式感”了。

    在写作热情即将被完全磨灭之际,我忽然又想起了很久之前浅尝辄止的 ox-hugo3,一个能通过 Emacs Org-mode 导出到 Hugo 所使用的 Markdown 的自动化工具。正巧,最近我解决了 Org-mode 对我而言的一些痛点,如果能利用 Org-mode 来写博客,想必是轻松愉快的。

    于是在几十个小时的奋战下,ox-hugo 终于成功接管了我的写作流程,并结合 Org-mode 自身非常有利于自动化的特性,以及一些自定义的 Elisp 代码,省去了不少本来需要我手动处理的杂务;它甚至还实现了《网页(博客/笔记)的 LaTeX 支持现状》中的核心需求。

    利器到手,笔者连更了两篇文章,其一甚至还是全新之作4

    我尝试了一种很新的友链交换邀约

    友链交换的邀约5已经开放,虽然方案有些特别,即所谓“以文交友”,不过根据规则是可以复用已有文章的,门槛并不算高。

    此外,这并不是与我交换友链的唯一可能途径;只是其他途径看缘分,并没有明确安排。

    参见友情链接交换的开放提议

    arCNiso 2024.05 例行更新

    archiso 在最近几个月更新很少,但在过去的一个月突然连更了几个提交,将 Bootloader 从 GRUB2 改为 systemd-boot,且体积又增大不少。

    为了准备作为 archiso 的下游项目 arCNiso6 的五月例行更新,我不仅需要依次同步上游的变更,还需要再压缩体积才能让 arCNiso 保持在 2G 以内,更要尽可能让安全启动在 systemd-boot 下也能工作。

    因为上个月空闲时间余量明显不足,我差点以为这个版本无法准时完成发布了,好在体积问题以 zathuravlcpartitionmanagerddcutilman-pages-zh_cngrub-customizer 等软件包7的移除为代价而顺利解决;至于安全启动,经测试似乎直接可用,不需要什么额外措施。总之,最后仍是正常更新了。

    空间站更新汇总

    除了本文以外,空间站还更新了以下内容:

    散文屋
    此处在四月发布了两篇文章,并且都是指南向的,侧重于实用性。

    1. 今后应当统一一下说法:例如 5 月的月摘在 5 月 1 日发布,总结的是“上个月”也即 4 月的事情,而“这个月”应当指 5 月才对。 ↩︎

    2. GitHub Pages 本身也提供 HTTPS 证书,而它的刷新无法在启用了 Cloudflare 保护代理时进行。因此,每过几个月就要手动关闭 Cloudflare 保护代理,再到 GitHub 上多刷新几次直到 DNS 检查通过(意味着 HTTPS 证书成功刷新),再重新开启 Cloudflare 保护代理,这样才能解决证书过期问题。 ↩︎

    3. 仓库地址:https://github.com/kaushalmodi/ox-hugo ↩︎

    4. 也即,并不是从 Hextra 时期的博文迁移而���的 —  — 并不是什么值得炫耀的事(笑)。 ↩︎

    5. 我对是否要采用“申请”(或“请求”)这个词纠结了挺久,因为友链的交换应当是双向选择的结果,而“申请”似乎有些单向的意味。所以我最终采用了“邀约”这个有些奇怪的措辞。 ↩︎

    6. arCNiso 是 clsty 开发维护的自由开源项目,简单点说就是对 Arch Linux 的 Live CD 的一种易用化定制。 ↩︎

    7. 你还是可以用 Firefox 看 PDF 的,虽然确实不如 zathura。 ↩︎


    • clsty
    • 0:00 am

    春暖花开,正是踏青好时节。

    本月摘不含任何愚人节要素,请放心阅读。

    当大家以为你要整个活时,你没有整个活,这也是一种整活。

    xz-utils 事件

    三月,在开源圈子里最炸裂的大概就是 xz-utils 事件了(简称 xz 事件)。

    对于 Arch Linux,万幸的是最关键的 openssh 并没有受到影响,因此我估计这不会对 Arch 用户造成什么实质威胁。

    不过,恶意代码终归是不能留着过年的。

    • Arch 的对应软件包 xz 已光速更新到不含恶意代码的 5.6.1-2 版本,只要 sudo pacman -Syu 即可解决问题。
    • 此外,3 月份的 archiso 也受到波及,arCNiso 作为基于 archiso 的项目也未能幸免,无论是 archiso 还是 arCNiso 用户都应当尽快删除 3 月份的版本。

    最后,这并不意味着开源软件(相对)不安全。 —  — 闭源软件在这方面的问题显然只会更严重,因为它的代码连被公开审查的机会都不会有,开源软件在安全方面仍然具有根本性的优势。

    不过,xz-utils 事件,确实就安全问题为开源社区敲响了警钟。或许,未来可以利用人工智能自动扫描所有公开代码。

    此外,考虑到事件性质更���重于供应链投毒,即使在这一特定事件中幸免于难,闭源软件界大概也不会觉得事不关己,比如前文的自动扫描机制如果成为现实,闭源界就可能会参与其中,说不定已经有这样的例子了。

    arCNiso 2024.04 版发布

    arCNiso 是 clsty 开发维护的自由开源项目,简单点说就是对 Arch Linux 的 Live CD 的一种易用化定制。

    此为例行发布,项目本身没有什么大的变化,但构建的镜像随着 sudo pacman -Syu 而自动免除了 xz 事件的影响。

    并且,在 3 月 3 日,因为 arCNiso 的 star 数达到 16,clsty(我)首次拿到了 GitHub Starstruck 成就,感谢大家对 arCNiso 项目的支持。

    空间站更新汇总

    除了本文以外,空间站还更新了以下内容:

    散文屋