从 iGame Center 到 Linux:Colorful CVN Z890 ARK FROZEN RGB 控制器逆向与 Qt 控制台实现
本文介绍了在Linux系统下为Colorful CVN Z890 ARK FROZEN主板实现RGB控制的开发过程。作者通过逆向分析,确认了控制器的USB VID/PID为`2f4c:1000`,并发现真正的RGB输出端点位于USB interface 02而非interface 01。文章详细说明了帧格式:由10个数据包(每包20组RGB)加1个提交包组成,共覆盖200个可寻址槽位。通过Qt控制台,作者实现了静态、呼吸、彩虹、波浪等主机侧渲染效果,并将板载RGB、ARGB 1/2的物理映射交由用户自定义绑定。文章还涉及udev权限配置、KDE启动器集成、脚本支持及项目边界说明,提供了完整的Linux RGB控制解决方案。
把 SVP 真正接回 bilibili-linux:共享内存补帧、切换恢复与可上游合并的重构
本文介绍了一个将B站网页播放器嵌入视频补帧功能的技术方案,核心目标是让补帧结果直接呈现在原播放器界面中,而非外部播放器。项目基于`bilibili-linux`源码构建,通过VapourSynth与SVPFlow进行插帧,并采用共享内存或原始帧回传等策略避免二次编码。文章详细阐述了DASH源流选择、动态目标帧率、帧环回压机制、音画同步、硬件兼容与性能监控(OSD)等具体设计。整体上,该方案将补帧作为播放器的可选增强,确保在性能不足或切换失败时能优雅回退,不破坏原有播放与弹幕体验。
KDE 下区分多个 Electron 音频流:用 PipeWire 规则修正 Chromium 元数据
本文介绍了在 KDE Plasma 中解决多个 Electron 应用音频流均显示为“Chromium”的问题。核心思路是:KDE 默认优先显示 `application.name`(通常为“Chromium”),而 `application.process.binary` 字段包含了如 `bilibili`、`yesplaymusic` 等具体的程序名,更适合作为区分依据。作者排除了事后修改属性的方案(如 `pactl update-sink-input-proplist`),因为 PipeWire-Pulse 不支持改写已创建的流。
最终方案是利用 PipeWire 的 `pulse.rules`,在流创建阶段匹配 `application.name = "Chromium"` 和 `application.process.binary`,并覆盖 `application.name` 和 `node.name` 为实际程序名。作者还提供了一个用户级 systemd 服务,用于自动监听新出现的 Chromium 音频流并生成相应规则。该服务仅在首次发现新应用时会重启 `pipewire-pulse` 导致音频短暂中断,后续启动不会再受影响。
[回顾]回顾和反思
未读
记18年的人生旅程:高考落幕,在遗憾、幸运与折腾中走向下一站
好的,这是根据您提供的文章内容生成的简洁摘要:
---
这篇文章是作者洛元在18岁后完成的人生回顾。作者以高考为界,梳理了高三至大学前夕的经历:虽有考砸的遗憾,但通过三位一体进入温州肯恩大学计算机专业。文中回顾了他从小学接触编程、初中做出实用工具、高中参加机器人比赛与开源贡献的成长轨迹,也坦诚记录了高考失利的失落、团队协作的摩擦及个人心态的成长。最终,他回答了16岁时给自己留下的四个问题,承认努力并不总带来预期结果,但过往探索皆有意义,并期待未来继续折腾。
Arch Linux 下让 Sunshine 接管 SDDM:X11 捕获、服务交接与多显示器触控适配
本文介绍了如何在Arch Linux + KDE Plasma Wayland环境下,实现Sunshine串流服务从SDDM登录界面到用户桌面的完整覆盖。核心方案是分离两个Sunshine服务:系统级root服务在SDDM阶段使用X11捕获,用户级服务在登录后使用KMS/Wayland路径,两者共享证书但使用独立的应用列表。文章详细解决了三个关键问题:root服务缺少Wayland环境导致503错误、Xauthority动态路径处理、以及多显示器下output_name和触控坐标的适配。最终通过systemd服务配合polkit规则实现登录前后的自动切换,既支持开机未登录时远程访问,又保留了桌面阶段的多显示器管理和触控功能。
Arch Linux 下为 AUR 版 SVP 手动安装 RIFE Vulkan 引擎
本文介绍了在Arch Linux上为AUR版SVP安装RIFE插件的完整过程。作者发现AUR的`svp-bin`包仅包含SVP主程序,缺少RIFE组件,因此采用官方`RIFE-ncnn-Vulkan`组件方案,无需安装PyTorch或CUDA Toolkit。文章详细记录了从环境确认、驱动验证、SVP更新到通过`4.0-3rife.7z`压缩包手动安装RIFE的步骤,包括SHA1校验、解压至`/opt/svp`目录、可选安装GitHub模型等。最后说明了如何在SVP Manager中选择NVIDIA RTX 5070 Ti作为Vulkan设备,并解答了常见问题。核心思路是保持AUR管理SVP核心,RIFE组件独立从官方仓库获取,避免文件管理混乱。
Arch Linux 配置 Wake-on-LAN:Realtek RTL8125 用 NetworkManager 持久唤醒
### 摘要
本文记录了在 Arch Linux 主机上配置局域网唤醒(WOL)的完整过程,目标是让有线网卡在关机后通过 Magic Packet 唤醒。文章强调配置的关键在于确认负责唤醒的有线网卡(Realtek RTL8125,内核驱动r8169),并通过NetworkManager的`802-3-ethernet.wake-on-lan=magic`参数持久化配置,而非临时修改。作者分别检查了连接配置、PCI设备唤醒开关(`power/wakeup`为enabled)、BIOS/UEFI待机供电等独立环节,最终通过`wakeonlan`工具向广播地址发送Magic Packet验证。文章还总结了常见失败点,如混用无线MAC地址、仅修改临时ethtool状态等,并提供了复盘检查清单,确保各层次配置正确后才能成功唤醒。
从 Windows HID 到 Linux 常驻服务:FK360 EL ARGB 数显驱动复盘
## 摘要
本文介绍了作者为FK360 EL ARGB水冷头在Linux系统上开发的开源驱动项目。该水冷头的数显原本只支持Windows官方软件,作者通过逆向分析,确认了其通过USB HID接口使用固定65字节报告传输监控数据的协议,实现了纯Python标准库的Linux用户态驱动。
文章详细解析了65字节报告的数据结构,包括CPU/GPU温度、占用率、频率、功耗等字段的偏移和编码方式。针对Linux系统,作者解决了多源数据采集问题,包括从hwmon读取温度风扇、从/proc读取CPU占用和内存、从Intel RAPL读取CPU功耗、以及通过nvidia-smi获取GPU数据的技术方案。驱动通过systemd以root常驻运行,并配有udev规则管理设备权限,还提供了TUI配置界面和安装脚本。项目代码已开源在GitHub上。
LXC 容器部署 OpenClaw 指南:硬核破解 Homebrew 的 Root 限制
本文介绍了在LXC容器中以root用户部署OpenClaw时,解决其Skill依赖Homebrew(Linuxbrew)禁止root运行限制的两种方案。方案一遵循官方规范,创建隔离的“linuxbrew”用户并安装,通过环境变量供OpenClaw调用。方案二则通过修改Homebrew源码(brew.sh和api.rb文件),直接绕过root检测和下载拦截,实现root身份下的直装与使用,并配置了必要的Git信任和环境变量。最终,修补后的环境可顺利使用brew为OpenClaw安装Skill所需工具链。