在 CentOS 7 上使用 Awesome 窗口管理器

在 CentOS 7 上使用 Awesome 窗口管理器

Awesome 在 Fedora 19 上运行良好,所以它应该在 CentOS 7 上运行,对吗?好吧,我尝试过但没能让它发挥作用。经过很长一段时间,我设法从源代码编译它并将 GDM 设置为从~/.xinitrc.然而,我得到的只是窗口管理器启动,但所有按键绑定(键盘或鼠标)都不起作用。

我正在寻找可用的分步安装过程。

答案1

对于初学者,我将删除您编译的源代码,然后使用以下步骤添加 Fedora 的官方 YUM Repo这个帖子。之后,由于您刚刚添加的存储库包含 AwesomeWM,因此使用 YUM 来安装它。看这里


推理:将基于源代码的包与基于二进制包的系统混合几乎是不可能的,因为您很容易造成版本不匹配。考虑以下:

  1. 二进制包版本 A 依赖于依赖项版本 B,并且只能与依赖项版本 B 一起使用。依赖项版本 B 使用库 C。
  2. 连接1(二进制包版本A)中的逻辑也隐式依赖于库C。
  3. 您使用库版本 D 构建了依赖项版本 B(如果 C = 1.0,D = 1.1)
  4. 依赖项版本 B 已成功构建,但二进制包版本 A 仍链接到库版本 C,因此二进制包 A 现在加载未解析的符号,因为库版本 C 中的符号已替换为版本 D 中较新的符号。
  5. 库版本 D 取代了库版本 C,因此开发人员决定不将其新版本 D 链接到版本 C。
  6. 要解决此问题,系统上链接到库版本 C 的每个包都必须使用库版本 D 重新编译。

你被困在这里是因为二进制系统上的所有包都是预先打包的,当从源代码编译时,其中一些或全部将被破坏

您也许可以通过使用库版本 D 查找所有软件包的更新版本来解决此问题,但从经验来看,这种情况不太可能发生,这就是我使用 Gentoo 的原因。


更新已删除的评论

我被要求解释如何处理过期的存储库,以及如果存储库过期该怎么办,因为 CentOS 和 Fedora 的发布时间表截然不同。

根据您在下面已删除的评论中提出的问题,在添加存储库时:

  1. 如果对该存储库的支持结束,请添加取代它的存储库。即,Fedora 19 的存储库将被 Fedora 20 取代。
  2. 更新到新存储库后,您必须作为用户决定采取哪个方向,因为新存储库中的包之间的版本号不匹配。例如,CentOS 中的库版本 A 将被 Fedora 中的库版本 B 取代。将 Fedora 添加为存储库后,如果您想要的软件包存在于 Fedora 中,但不存在于 CentOS 中,并且它要求更新版本的软件包,您必须 a.) 查看 CentOS 测试存储库中是否存在相同的软件包,或 b.) 允许安装从 Fedora 存储库安装软件包。通过这种方式,您将获得混合安装。如果您以与上面添加 Fedora Repo 相同的方式添加 CentOS 测试存储库,我相信 YUM 会询问您要使用哪个包,如果两者中存在相同的包。
  3. 如果 Fedora 中有稳定库版本 B,CentOS 中有测试库版本 B,请使用 CentOS 中的测试版本,因为该版本是您操作系统的“本机”版本。只要有可能,您都希望安装操作系统本机的版本,即使它们处于测试阶段。通过这样做,如果程序包无法工作,您可以向操作系统维护人员报告错误,以便程序包保持在测试状态,直到错误得到修复,然后再移至稳定版

答案2

⚠ 这里的所有答案都已过时,不应使用!


Awesome 可以从以下位置安装来源与一个小调整

; cat /etc/centos-release                                                       
CentOS Linux release 7.6.1810 (Core)                                            
; awesome --version                                                             
awesome v4.2-dirty (Human after all)                                            
 • Compiled against Lua 5.1.4 (running with Lua 5.1)                            
 • D-Bus support: ✔                                                             
 • execinfo support: ✔                                                          
 • xcb-randr version: 1.6                                                       
 • LGI version: 0.9.2    

相关内容