用 xdg-ninja「整治」杂乱的 Linux 家目录

💡 原文中文,约4800字,阅读约需12分钟。
📝

内容提要

Matrix是少数派的写作社区,主张分享真实的产品体验和有实用价值的经验与思考。xdg-ninja是一个用来检查家目录中不合规文件与文件夹的项目。xdg-ninja不会自动移动文件,只会读取文件名并与仓库中的规则比对。xdg-ninja的输出中,红色代表可以移动的文件,黄色代表不可以移动或可能会被重新创建的文件。需要设置环境变量才能使用xdg-ninja。文章提供了一些软件的配置实例。

🔎

延伸解读

xdg-ninja 的检查机制与输出解读

xdg-ninja 通过读取家目录中的文件名,与仓库中的规则进行比对,从而识别出不符合 XDG 规范的文件和文件夹。它不会自动移动或修改任何文件,因此使用起来非常安全。输出结果中,红色项目表示可以移动的文件,黄色项目则表示不可移动或移动后可能被重新创建的文件。用户需要根据这些提示手动进行后续操作。

环境变量设置的关键步骤

使用 xdg-ninja 前,需要确保 $XDG_DATA_HOME、$XDG_CONFIG_HOME、$XDG_STATE_HOME 和 $XDG_CACHE_HOME 等环境变量已正确设置。不同桌面环境和登录管理器读取环境变量的方式各异,例如 Xorg 桌面环境通常读取 xprofile 文件,而 Wayland 环境则可能依赖 systemd 或启动脚本。文章以 greetd 和 Arch Linux 为例,展示了如何通过 /etc/profile 和自定义文件来设置这些变量。

软件配置实例与注意事项

文章提供了 zsh、git、cargo 等软件的配置实例,展示了如何通过修改配置文件或添加环境变量来将文件移动到 XDG 标准目录。例如,zsh 需要设置 ZDOTDIR 和 HISTFILE,git 只需移动配置文件。但某些软件如 gnupg 和 openssh 的目录可能无法移动或移动后会影响其他功能,需要谨慎处理。对于 Steam 和 Firefox 等顽固软件,建议使用 Flatpak 版本并结合 Flatseal 限制文件访问。

❓

Q&A

xdg-ninja是什么?

xdg-ninja是一个检查Linux家目录中不合规文件与文件夹的工具,主要用于帮助用户整理文件。

如何使用xdg-ninja?

用户需要在终端中运行xdg-ninja,查看可以移动的文件和建议的配置,手动进行文件移动和配置。

xdg-ninja的输出中红色和黄色代表什么?

红色代表可以移动的文件,黄色代表不可以移动或可能会被重新创建的文件。

使用xdg-ninja前需要设置哪些环境变量?

需要设置$XDG_DATA_HOME、XDG_CONFIG_HOME、XDG_STATE_HOME和XDG_CACHE_HOME等环境变量。

如何配置zsh以符合xdg-ninja的建议?

需要将.zshrc文件移动到~/.config/zsh/,并在/etc/zsh/zshenv中设置ZDOTDIR环境变量。

为什么建议使用Flatpak版本的Steam?

因为Steam在家目录中乱放文件,使用Flatpak版本可以更好地管理文件和权限。

🏷️

标签

➡️

继续阅读