自建照片/视频管理方案(Immich)

前言 Immich 是一个开源的照片/视频管理方案,它的功能和用途类似于 Google 相册或 iCloud 照片。任何个人都可以利用 Immich 搭建自己私有的云同步相册,并支持多端/多人使用...

工具

无障碍访问 Docker Hub 的各种方法(自建 registry、Cloudflare 加速、Nginx 反代、代理 Docker 网络)

前言 最近 Docker Hub 被屏蔽,各大镜像站关闭,想必很多人都遇到了无法拉取镜像的问题。本文将告诉你们继续使用 Docker Hub 的各种方法,助你解决开发/部署中面临的麻...

工具

创意编程 p5.js 快速入门

前言 假设你是一个天文爱好者,是否有想过用代码来模拟行星运动?假设你是一位设计师,是否有想过用代码来创作艺术作品?假设你是一名教师,是否有想过...

编程

Steam 在 NixOS 上的中文显示问题总算被修复了

前言 长久以来 Steam 在 NixOS 上存在中文字体显示问题,挺让人恼火的。好消息是最近这个问题被修复了,感谢 #312268 这个 pr 的作者。 原因 根据 Steam 官方仓库此 issue 中的回复描述...

Linux

免认证/匿名远程传输文件(Wormhole)

前言 文件传输是一个很基础且被广泛应用的需求。服务器上可以使用 SCP/SFTP,用户间则普遍使用 IM 工具的文件发送功能。也可以通过网盘来间接的将...

工具

修复 LXD 默认的 images 远程的访问故障

前言 最近又出大事了。LXC 社区禁止了 LXD 对 images.linuxcontainers.org 的访问。这导致 LXD 用户无法再创建或刷新非 Ubuntu 容器。 本文将告诉你修复方法,以及这中间发生了什么。 LXD 和 LXC 阅...

技术, Linux

Elixir 1.17 的类型系统

前言 差不多在一年半以前,Elixir 的作者 José Valim 计划给 Elixir 引入类型系统,我已经期待了很久。随着最近 Elixir 1.17 的第一个 RC 版本发布,终于可以初步窥探...

技术, 编程

使用 Rclone 操作 PikPak 资源(命令行下载 PikPak 文件)

前言 Rclone 是一个管理云存储文件的命令行工具,它的支持极为广泛,包括面向开发者的云储存技术、面向用户的各种网盘。数量高达 70 多种。PikPak 是一个...

工具

无服务器搭建直连语音服务(Mumble)

前言 如果你经常在 Linux 上玩游戏,可能会因为缺乏国内的语音工具支持而烦恼。或者你有其它理由需要一个私有的语音平台。实际上我们完全可以零成本搭建自己...

技术

把 Typed、Live2d、Mermaid、p5、Pixi 等等好玩的都集成到 Hugo 中吧!

前言 Hugo 是一个静态的网站生成器,但是它在内容的灵活性上有很大的发挥空间。本文将向你展示 Hugo 的网站(本博客)如何显示更为复杂的内容。 我并没有在 Markdown 中...

技术, 前端

有状态后台任务并发库 Honeycomb 介绍

前言 Honeycomb 是一个 Elixir 库,它设计用于批量执行需要保留结果的异步或后台任务。它的核心功能是异步/后台执行和并发控制。在此前我使用一个功能类似的名为 honeydew 的...

技术, 编程

使用 mise 替代 asdf 管理开发工具的版本

前言 一直以来我都使用 asdf 管理开发环境各工具链的版本,它可以让每一个项目都允许拥有自己的一套版本,不会因为依赖全局性的东西导致额外的负担(例如系...

工具

修正 Hugo 文章的最后修改时间

前言 Hugo 文章的修改时间生成有多种方案,部分方案无法自动化设置,部分方案又依赖 Git 信息。如果你这二者都不满足,本文将会告诉你如何在通用的 CI 环境中基...

技术

解决华硕 X670e 系列主板在 Linux 上的断网故障

前言 如果你是华硕的 X670/X670E 系列主板和 I225-V 网卡,可能会发现无法在 Linux 上长时间正常工作,因为目前这个搭配有一个难以解决的硬件故障。具体表现为系统可能随时断...

硬件, Linux

基于 Vite 和 TypeScript 改造 Phoenix 框架的前后端架构

前言 Phoenix 在早期(1.16 之前)还算一个务实的框架,它生成传统的前后端架构的项目模板。使用 Webpack 构建完全独立的前端部分。自 LiveView 发明以后,这个框架逐步偏...

技术, 编程

简单测试 Erlang/OTP 27 新增的 json 模块

前言 前不久 Erlang 出现了一个新的提案(EEP-68),该提案旨在将 JSON 的编码/解码功能引入到 Erlang/OTP 中。随着最近 27.0-rc2 版本的发布,新增的名为 json 的模块已经可用了...

技术, 编程

博客已用 Hugo 重建

此前 本博客于 2023 年底使用的 Jekyll + Chirpy 搭建,这是一套经典的博客方案。Jekyll 的用户社区很大,有非常多的主题可供选择,托管于 GitHub Pages 完全免费。 但在一开...

本博客

让 Void Linux 成为 Elixir 应用的基础镜像

前言 Void Linux 是一个忍不住想关注的发行版,它既可以较为精小,又可以相对膨胀。它同时维护 glibc 和 musl 两个不同 C 库的版本,又发布有内置 BusyBox 和 GNU Coreutils 两个不同工具集...

技术, Linux

使用 NanoPi R5S 和西数紫盘 WD43PURZ 组建简易 NAS

前言 大概是刚接触 OpenWrt 的那会儿,我已开始搭建并依赖内网文件共享。并且长久以来我都坚持使用路由器(或软路由)加 U 盘的组合,且一直够用。 当然在最早期...

硬件

Elixir 与 Rust 协作开发

前言 本文介绍的是我所使用的两门重要编程语言 Elixir 和 Rust,尤其是 Elixir 作为我个人的主力开发语言已有好几年时间。在前期我始终将它们独立使用,各自解决...

技术, 编程

在 NixOS 中使用 asdf 管理 Erlang 的多个版本

介绍 NixOS 是一个特殊的 Linux 发行版,它不遵循 FHS 以至于你通常不能运行来自第三方的存在动态链接的二进制文件。对于这类预编译的软件,你可以手动修补所有的二...

技术, Linux

重拾博客

怀念 真的很久没有写过博客了。 当我还是个学生的时候,我已尝试自行开发博客系统。工作以来又用感兴趣的技术重写,如此往复了两到三次吧。直到最后,我...

本博客