nodejs16:是我配不上 openssl 3 咯?今年上半年升级 Fedora 36 的时候遇到了这个问题。那会儿很无奈,一直在等 nodejs16 合并提供 --openssl-legacy-provider 的那个 PR。nodejs16 是一个 lts 版本,照道理来说,既然要提供 Long-term Support,而 openssl 1 作为它的依赖之一,生命周期结束又在 nodejs16 之前,那是不是应该给 nodejs16 backport 在 nodejs17 上实现的 --openssl-legacy-provider 参数选项呢?否则绝大多数发行版都会在 openssl 1 的生命周期结束之前切换到 openssl 3,那 nodejs16 不就没法用了嘛。然而,nodejs 在他们的官网上发布的一篇博客刷新了我的世界观,而此前的那个 PR 甚至一度被关停。(此处有寒晶雪提供的中文翻译)博客称他们将会把 nodejs...
如何拯救失声的 hollywood我刚开始接触 Linux 下的 hollywood 时,我记得它运行时是有声音的,应该是 007 的主题音乐,如今再次装上 hollywood,却发现音乐没了。在 Github 找到 hollywood,发现有一个 issue 也提到了这个问题。原作者在该 issue 中回复道没错,它只是一段视频,音频受到版权保护。所以不难看出,作者因为版权问题而去掉了音频,进而导致 hollywood 失声。但我们作为用户,是不是可以想办法获取到老版本中那段带有音频的 mp4 文件呢?答案是肯定的。得益于 git 的版本控制特色,在 hollywood 的 github 仓库中,我们可以找到原来的 mp4 文件。下载这个 mp4 文件后,我们将其放入 /usr/share/hollywood/ 路径下,重命名为 soundwave.mp4,并确保其被正确设定为 0644 权限。sudo install ...
处理 fcitx5 的文字候选框在 tg 客户端上闪烁的问题文章开头,先要感谢 fcitx5 的开发者 老K 帮我 debug 这个问题鬼畜的文字候选框在新装的 Fedora 36 KDE Wayland 下使用 fcitx5 时遇到了文字候选框前后移动晃眼的问题(如下图)解决方案当我向老K提出这个问题上的时候,老K告诉我这是预期行为,一共有两个解决方案。使用 qt 的 text input关掉 kwin 的淡入淡出特效但由于我并不熟悉 KWin 的特效,所以我选择了前者的方案。首先,需要确保自己的 Plasma 版本在 5.24 或以上,fcitx5 的版本号在 5.0.14 以上。然后我们需要让 KWin 去启动 fcitx5。KCM 为此提供了一个非常简单的方式,如下图随后需要确保环境变量没有设置 QT_IM_MODULE 。一定要确保这个变量不存在,连空也不行,必须是 unset。理论上来说,是不需要重启的,但我的环境变量是 fcitx5-...
使用caddy反向代理维基百科中文站点反代的目的无非是两点满足自己在无代理情况下访问无法访问的站点的需求方便将站点分享给亲朋好友。一直以来,我都想用 caddy 去反代一份维基百科来用,今天刚好就顺手解决了。注意事项用于反代的机子需要有对目标站点的访问能力最好准备一个新的域名作为白手套,防止被污染建议增加密码保护,一来使得小鸡流量不被滥用,二来防止防火墙检测到站点内容本文使用的 caddy 开启了 replace_response 插件,可以使用 xcaddy 编译或直接前往 https://caddyserver.com/download 勾选相应插件后下载。安装时,建议先根据官方文档安装原版 caddy,再用启用了 replace_response 插件的 caddy 二进制文件覆盖掉原版 caddy,这样就不需要去手写 systemd 相关的文件了。Caddyfile{ order replace after encod...
创建一个本地的 Fedora 镜像源Fedora 36 在多次跳票后,总算是在 5月10日正式发布了。截止北京时间 5月11日凌晨两点,上海交通大学开源镜像站的上游 rsync://download-ib01.fedoraproject.org/ 仍然没有同步 Fedora 36 的 Release 源。鉴于 Release 自 freeze 以后基本是不会有什么大变动的,也不需要及时同步更新,干脆就直接建立一个本地的镜像源。准备一块足够大的硬盘根据我个人实测,单 Fedora 36 的 x86_64 架构 的 Release 源中的 binary rpm 就占用了 89.6 GB,具体准备多的的硬盘空间还得看你具体需要同步些什么。符合要求的上游这里所说的符合要求一共是两个方面,一是允许 rsync 同步,二是有你想要的文件。我通过 getfedora.org 的下载按钮的转发目标得知 mirror.karneval.cz ...
好软推荐——FastOCR前两天在 PC 端有 OCR 的需求,需求如下自带框选功能或者图片上传前的编辑功能硬盘占用小,不要 electron (((已经受够了支持系统托盘或者快捷键快速调出免费在李皓奇的推荐下试用了 Arch 群兔兔拿 python 和 qt 写的 fastocr,体验可以说是相当不错了。四个要求基本都能完美满足!支持 百度、有道、旷视Face++ 三家的接口,免费额度绝对够我试用的(大不了一家用完了换一家嘛此外,空间占用小,算上依赖也不过 31MB 的硬盘空间占用,连半个 electron 都不到,运行起来反而更加流畅 <^_^>
抛弃PicGo,直接使用curl将图片上传到LskyPro前一阵子为了图床折腾了好长一段时间。刚开始用的是 cloudinary,虽然每月有限制,但强在境内访问速度还不错,可惜后来 res.cloudinary.com 这个域名在某些地方被 DNS 污染了,而自定义域名是付费版的功能,就不得不放弃了。后来也尝试过 npm图床 的方案,可惜面对这种滥用公共资源的行为我无法接受~~(肯定不是因为受不了那繁琐的上传步骤,随便传张图都得 bump 下版本号的原因)~~,而且现在境内的能作为图床使用的 npm 镜像似乎也就只剩下 npm.elemecdn.com 这一个能够正常回源了,没准哪天就用不了了,所以就去投奔了杜老师的去不图床。去不图床采用开源图床程序 Lsky Pro 搭建,没有免费服务,且配置了鉴黄服务,看起来就是打算长久做下去的图床站点。境内使用腾讯云cdn,境外采用 cloudflare cdn,速度都挺让我满意的。(杜老师看见请给我打钱,...
使用 Github Action 跑 rpmbuild一直打算用 Github Action 跑 rpmbuild 构建 rpm 包,然后传到 Action 的 Artifacts 里面,用户就可以在登陆 Github 帐号的情况下进行下载。只要不发 Release,应该就不算「再分发」的行为,也就自然规避了再分发闭源软件的法律风险。然而,现有的那些 Action 几乎全都是针对 CentOS 老古董定制的,,有些甚至连 buildrequires 都不帮你安装,而且大部分情况下都不支持 Source 直接填写一个链接,需要你直接提供 Source 文件。我自己又不可能在 Github 的仓库里用 lfs 强行存一个 200MB+ 的二进制文件,显然是不符合我要求的。还有几个项目使用 mock 去构建的,但使用 mock 构建需要提前用 rpmbuild 生成 srpm,在我们的个人电脑上可以理解为用一个干净的 chroot 打包防止自己的环...
如何打出一个「-git」的rpm包本文中,笔者通过 github api 获取最新的 commit_id ,以一种曲线救国的方式成功为 rpm 打下了一个 -git 包。On Archlinux用过 AUR 的 Arch 用户应该知道,makepkg 支持 "-git" 包。当我们执行 makepkg 时,PKGBUILD 中的 pkgver 函数会自动被运行,并将输出的结果作为本次打包的版本号。这是一个非常棒的设计,我们不需要去手动更新 PKGBUILD,就可以直接从 git 服务区拉取最新的 master 分支编译打包,对于跟进开发进度而言非常方便。一般来说,一个 -git 包的版本号会分成 2~4 个部分,最为核心的是 count 和 commit_id:count用于记录这是第几次提交,通过提交的次数作为版本号的靠前部分可以帮助包管理器比较版本号的新旧,比如第21次提交的代码一定比第18次的更加新,而21也正好比1...
雪藏在开源镜像站点中的那些常用却不为人知的软件前两天在下载 微PE 的时候眼睛突然一瞥,发现了山东大学的开源镜像站。突然间才发现在各个开源镜像站点中提供了许多那些我们误以为只能顶着断断续续的 Github 网络才能下载的软件。下面这张列表主要来自山东大学的镜像站中的「常用软件」和南京大学的「github-release」。我严重怀疑南京大学就是把整个 tuna 给搬了一遍过来。山东大学南京大学清华大学balena-io/etcherhttps://mirrors.nju.edu.cn/github-release/balena-io/etcher/LatestRelease/https://mirrors.tuna.tsinghua.edu.cn/github-release/balena-io/etcher/LatestRelease/drawio-desktophttps://mirrors.sdu.edu.cn/github-r...
1891014