软件问题
缩放
niri 默认配置
编辑 ~/.config/niri/...,其中的 output - scale
但是对于 X11 旧应用,或没开启 Wayland 模式的 Electron 应用可能会变得模糊。这是因为 Wayland 把它们放大时用了简单的线性插值。
对策:
- 强制使用 Wayland 模式:
- Chrome/Edge: 地址栏输 chrome://flags → Preferred Ozone platform → Wayland。
- VS Code / Electron 应用: 启动参数加 —ozone-platform=wayland。
- Obsidian: 同样加参数。
- 如果必须用 X11 应用且不想模糊:
- 这很难办。Niri 目前处理 XWayland 缩放的方式就是拉伸。
- 要么忍受模糊,要么把 scale 设为 1.0,然后去调整 字体大小 (Font Size) 而不是 屏幕缩放。
调整 GTK 缩放
直接调整 GTK 的字体缩放因子:
# 1.2 表示字体放大 20%
gsettings set org.gnome.desktop.interface text-scaling-factor 1.2flatpak 下的 obsidian
如果直接通过 kanshi 调整 scale,obsidian 在 flatpak 中通过 xwayland 兼容层运行,不支持 x11 的分数缩放,故直接 1.0 缩放,然后渲染为更大的,导致模糊。
解决方法:强制设置为 wayland
# 1. 允许访问 Wayland Socket (通常默认开启,但为了保险)
flatpak override --user --socket=wayland md.obsidian.Obsidian
# 2. 注入 Electron 标志,强制使用 Wayland 渲染
flatpak override --user --env=ELECTRON_OZONE_PLATFORM_HINT=wayland md.obsidian.Obsidian可以通过 flatseal 可视化管理
无法打开软件
niri 熄屏后,发现 linuxqq、wechat、obsidian 全都打不开了……查了下资料,好像是对 electron 的兼容有问题,无解。
于是用 flatpak 重装了这些应用,除了 obsidian 都可以打开了。还是没办法,换回 kde 了
找到了解决方法:删除crash_files文件夹下的文件就好了,并将其设为只读可以避免问题复现。
sudo rm -rf ~/.config/QQ/crash_files/ && sudo chattr +i ...
输入法问题
漏字
在 obsidian 中打字会出现漏出字母(主要是元音)的现象:
如果应用(Obsidian)和输入法框架()之间的通信链路(即环境变量)被 Flatpak 沙盒切断或配置错误,应用可能只接收到部分或错误的输入信号,导致预编辑的拼音字符丢失,最终输出的汉字也就不完整了。
解法:强制指定环境变量:
flatpak override --user --env=GTK_IM_MODULE=fcitx --env=QT_IM_MODULE=fcitx --env=XMODIFIERS=@im=fcitx md.obsidian.Obsidian雾凇大写错误
Rime 自身也有一套逻辑处理 CapsLock。如果你发现按下 CapsLock 后输入法图标直接变灰(禁用了),可能是 Rime 的全局设置问题。
-
进入你的 Rime 配置目录(通常是
~/.local/share/fcitx5/rime/)。 -
创建或编辑
default.custom.yaml。 -
加入以下代码,强制 CapsLock 只做“切换大小写”,不干扰输入法状态:
patch:
ascii_composer/good_old_caps_lock: true
ascii_composer/switch_key:
Caps_Lock: noop # noop 代表不做任何 Rime 内部状态切换- 保存后,右键点击输入法图标选择 “部署” (Deploy) 或重启 Fcitx5。
桌面环境
niri 还是不太行,先弃用了。
亮度
ddcutil setvcp 0x10 + 5 --display 1 # 变亮软件使用
下载
aria2:多线程,走代理
qibit 下磁力
yt-dlp:下载视频
代理
参看设置代理
Java版本
可以用 archlinux-java 进行版本管理
archlinux-java status
...
sudo archlinux-java set java-11-openjdkBurp Suite 激活
参考 https://github.com/mikhailde/burpsuite-pro-archlinux
jdk-21 是可以的。
但是缩放有问题,编辑下 zshrc:
export JAVA_TOOL_OPTIONS="-Dsun.java2d.uiScale=2.0 -Dsun.java2d.dpiaware=false"-Dsun.java2d.uiScale=2.0: 将 缩放强制设置为 200%。l-Dsun.java2d.dpiaware=false: 这是关键。它告诉 不要尝试从操作系统(即 )获取 或缩放信息。
合并pdf
用 pdfunite
pdfunite input1.pdf input2.pdf input3.pdf output_combined.pdf终端 vim 模式
# bash
set -o vi
# zsh
# 启用 Zsh 的 vi-mode
bindkey -v
# 可选:设置初始模式为 Insert 模式
# bindkey -a
# 提示:你可能需要重新定义一些快捷键,例如:
# bindkey '^[[A' history-beginning-search-backwardIDA-PRO
ida-pro安装:https://archive.org/details/ida-pro_91_x64linux
破解:https://github.com/CrackerCat/IDA-Patcher-
安装后,main.py 有一点问题,要改一下 now.year,然后sudo python main.y -p /opt/ida-pro 即可
系统管理
终止进程
pkill [-n] name 知道进程名的情况下使用,会自动查找对应进程.n 表示发送的信号
killall [-I] name 匹配更精细,I 表示忽视大小写终止 name 进程
ps aux | grep name or pgrep name 查找进程名
kill <pid> 给制定 pid 发送信号
查看程序错误信息
空间清理
archlinux 空间清理 pacman、yay 等包管理器会留下很多缓存:
# 彻底删除缓存
sudo pacman -Scc
# 仅保留最近的3个版本,删除其余所有(推荐配置)
paccache -r
# 删除所有已卸载包的缓存版本(清理幽灵依赖)
paccache -ruk0
# 递归删除所有孤立依赖
pacman -Rns $(pacman -Qtdq)控制日志大小:
# 仅保留最近两周的日志
journalctl --vacuum-time=2weeks
# 或者限制日志总大小为 500M
journalctl --vacuum-size=500M扫描占用:
ncdu /
# 重点看各种 cachedocker:
# 销毁所有未使用的镜像、容器、网络
docker system prune -a终端中,程序运行会产生三种流:stdin,stderr,stdout,文件描述符分别为 0,1,2 而 stderr 一般不会直接显示,所以需要重定向出来看:
<command> 2> error.log
对于后台运行的程序,看系统服务日志:
journalctl -u name -f f 选项会滚动最新日志
部分程序有自定义日志文件:
tail -f /var/log/name/error.log