LXC 容器部署 OpenClaw 指南:硬核破解 Homebrew 的 Root 限制
本文介绍了在LXC容器中以root用户部署OpenClaw时,解决其Skill依赖Homebrew(Linuxbrew)禁止root运行限制的两种方案。方案一遵循官方规范,创建隔离的“linuxbrew”用户并安装,通过环境变量供OpenClaw调用。方案二则通过修改Homebrew源码(brew.sh和api.rb文件),直接绕过root检测和下载拦截,实现root身份下的直装与使用,并配置了必要的Git信任和环境变量。最终,修补后的环境可顺利使用brew为OpenClaw安装Skill所需工具链。
一次 Playwright + Docker 的踩坑记录
本文作者分享了在服务器上部署使用Playwright进行网页截图功能时遇到的三个主要问题及解决方案。首先,由于网络环境差,无法在线下载Chromium浏览器,作者采用离线拷贝浏览器文件并设置环境变量`PLAYWRIGHT_BROWSERS_PATH`指向该目录的方法绕过下载。其次,即使浏览器文件存在,仍因缺少系统动态库而无法启动,需在Docker中安装Chromium的运行时依赖库。最后,为解决中文字体显示为方框或误用日文字形的问题,作者安装了Noto CJK字体并配置字体优先级,确保简体中文优先显示。文末提供了完整的Dockerfile示例,通过离线浏览器、安装依赖和调整字体,最终实现了稳定运行。
KDE 下 WPS 双击文件打不开的问题及解决方案
本文总结了在KDE桌面环境下使用WPS Office时无法通过双击打开文件的问题及其解决方案。问题主要源于WPS新版Linux命令行启动器的bug,以及无法正确处理KIO-FUSE挂载的SMB/NAS路径。作者在社区提供的AUR脚本基础上进行了改进,增强了自动切换工作目录、支持多种路径格式、添加日志记录和多文件兼容功能。通过创建并配置自定义启动脚本,并修改.desktop文件中的启动命令,成功解决了远程文件的打开问题,但本地文件受WPS自身限制可能仍无法打开。改进后的方案提供了更稳定的文件打开体验和调试支持。
[科技杂谈]科技心得杂谈
未读
一次“简单”的部署:为 Venera Sub Web UI 踩过的那些坑
本文作者分享了为漫画阅读器Venera开发订阅管理工具并部署时遇到的系列问题。开发过程顺利,仅用数小时完成核心功能,但部署时接连遭遇依赖冲突:服务器Glibc版本过旧、缺少GUI库文件。改用Docker后,又发现无头应用仍需X11虚拟屏幕(Xvfb),导致镜像臃肿至1.1GB。最终遇到数据持久化问题,因Docker挂载点导致系统rename操作跨文件系统失败,通过统一挂载整个用户目录解决。此次经历凸显了部署运维的复杂性,底层机制与容器化环境可能引发意外挑战,需细致应对。
[科技杂谈]科技心得杂谈
未读
通过PID锁定PipeWire ID,以解决PipeWire元数据无法很好定位不同软件的问题
文章提出一种在 Linux 下通过“进程 PID→PipeWire sink-input ID→音量或播放控制”的稳定链路,绕开 PipeWire 元数据可能缺失或重复的问题。先用 pgrep 拿到目标应用的 PID,再用 pactl list sink-inputs 搜出含该 PID 的段落,正则提取 Sink Input # 后面的数字即 PipeWire ID。拿到 ID 后,音量调节直接 pactl set-sink-input-volume 完成;播放/暂停、上/下曲等功能则用 D-Bus MPRIS 接口发送 PlayPause、Next 等调用。文中给出完整 Python 例子(含异步封装和日志),可直接用于 yesplaymusic 等支持 MPRIS 与 PipeWire 的播放器。
[科技杂谈]科技心得杂谈
未读
秘制全局脚本解决部分网站锁区问题
文章核心:解决代理工具虽然能连上却仍存在「地区锁」的问题。思路是在 Clash Verge Rev(Linux/Win 均支持)中利用「全局扩展脚本」功能,根据国旗与国家名称关键词自动为特定域名挑选地区节点。脚本已开源在 LuorixDev/ClashVerge_UsefulScript。
关键点:
1) 传统改配置文件脚本一遇更新就失效,节点名称变化又难精准匹配。
2) 新脚本在配置文件加载时运行,通过关键词(🇺🇸/US/America 等)或备用域名先找 proxy-group,再退回到 proxies 列表找节点,把新规则插入规则列表最顶部。
3) 用户只需改 USER_CONFIG 部分:每条规则写清域名、规则类型、关键词、备用域名及是否启用。
4) 全程记录详细日志,开关可控。
Wayland下的Sunshine+虚拟屏幕配置
文章记录作者在买了台一加平板后,想让它充当 Linux 副屏的折腾经过。核心需求是在 Wayland 下生成一块虚拟显示器,以便通过 Sunshine 把桌面串到平板。主流方法在 X11 好办,Wayland 则需绕弯。实现方案:在启动时让内核把指定 GPU 输出口当作不存在的显示器,然后加载预先准备的 EDID(分辨率/帧率可选,不填更简单)——步骤就是准备 EDID 文件→放到 /usr/lib/firmware/edid→把 drm.edid_firmware=HDMI-A-1:edid/myvirt.bin video=HDMI-A-1:e 写进内核启动参数,更新 grub 或 systemd-boot 后重启系统→桌面已出现该虚拟显示器→Sunshine 里填对应显示器 ID 完成串流。用毕可在 KDE 设置里直接关掉虚拟显示器节省资源。
Linux下Steam无法添加外置库(驱动器)
文章指出 Steam 出现“Cannot add library folder because of missing execute permissions”是因为外置分区挂载时用了包含 noexec 的默认参数,导致无法执行脚本。解决方法:编辑 /etc/fstab,在对应挂载行的参数末尾补加 exec,且确保 exec 出现在 user/users 之后;保存生效即可让 Steam 正常创建并运行脚本。
定位Linux下环境变量来自哪个文件
文章介绍了快速定位系统中被遗忘的环境变量来源的方法:先用 printenv 查看变量键值,再用一条统一的 grep 命令搜索所有常见配置文件(/etc/environment、~/.bashrc 等)中的 export 语句或变量值;示例以 fcitx5 相关变量演示,几秒内即可查到 /etc/environment 已集中设置,避免重复配置。
KDE下输入法配置的小细节
文章记录作者在 Arch+KDE Plasma 下以 Fcitx5 为框架配置中文输入的完整踩坑过程:先用 pacman 安装 fcitx5-im、configtool、chinese-addons、可选的 moegirl 词库与 Material 主题;在系统设置里启用 Fcitx5,KDE 自动写入环境变量,如仍被某些应用忽略,可手动在 /etc/environment 补充 GTK_IM_MODULE、QT_IM_MODULE 等六行以保证 GTK/Qt/游戏引擎识别;Wayland 下若 Chromium 类应用不生效,启动时加四个 Ozone/Wayland IME 参数;最后提醒在全局配置里把“开机自动激活”打开,免去手动 Ctrl+Space,同时列出无法切换、候选不显示、输入法图标丢失等常见故障的逐项检查要点。