不过我觉得最有用的是类似 gentoo 的 world 文件,里面储存所有手动安装的内容。卸载某个程序后,可以通过这个 world 整理出一来手动安装和依赖安装的系统包数据。
也就是说,安装 A 包时,B 包被依赖后同时安装。rpm 卸载 A 时不会卸载 B 的。但通过这个 world 文件,就可以重新通过依赖关系整理出 B 包已经没有被依赖,可以卸载了。
之后还有就是全部 rpm 进行统一整理,分类出来,比如 KDE ,每一个版本都会总,设置一个 kde-meta 的空包进行依赖,之后把这个 kde-meta 放进 world 文件。以此类推,整个系统分成几个独立的 meta 包被依赖后一起扔进 world 里面来进行版本控制。