![XFCE4 中的 Compiz-Ubuntu-17.04:安装进度](https://linux22.com/image/1090559/XFCE4%20%E4%B8%AD%E7%9A%84%20Compiz-Ubuntu-17.04%EF%BC%9A%E5%AE%89%E8%A3%85%E8%BF%9B%E5%BA%A6.png)
Compiz 再次出现在我的笔记本电脑上!Ubuntu 17.04 XFCE4。今天的体验让我深受鼓舞,足以让我问一些愚蠢的问题。
我以前很喜欢 Compiz,但当它在 2011 年左右被宣布为一个死亡项目时,我就停止使用它了。xfwm4 和 openbox 的一些挫败感让我再次尝试了 Compiz。它(大部分)的工作方式与我记忆中的一样。
这就是我的情况。我有以下包裹:
compiz 1:0.9.13.1+17.04.20170109-0ubuntu1
compiz-core 1:0.9.13.1+17.04.20170109-0ubuntu1
compiz-gnome 1:0.9.13.1+17.04.20170109-0ubuntu1
compiz-plugins:amd64 1:0.9.13.1+17.04.20170109-0ubuntu1
compizconfig-settings-manager 1:0.9.13.1+17.04.20170109-0ubuntu1
从终端,我运行
ccsm
启用一些 Compiz 插件/功能。这是必要的,因为默认的 compiz 会话没有启用任何功能,您甚至没有窗口装饰。如果您跳过此步骤,您将能够启动 Compiz,但您无法使用它。
然后我跑
compiz --repace ccp &
这会将会话中的 xfwm4 替换为 compiz。它似乎基本可以正常工作。我不得不运行 ccsm 6 次才能添加功能。经过几次失误后,它确实可以运行。我喜欢“摇摆窗口”,可以调整窗口大小等。
目前,我在 ccsm 中打开了以下 Compiz 插件:
OpenGL
Composite
Desktop Wall
Viewport Switcher
Animations
Window Decorations
JPEG
Compiz Library Toolbox
Regex Matching
Wallpaper
Workarounds
Application Switcher
Move Window
Place Window
Scale
Resize Window
在 ccsm“常规”中,我将“桌面大小”设置为水平虚拟大小 = 8 和垂直虚拟大小 = 1。似乎“视口”、“工作区”和“桌面”现在可互换。曾经,这些是至关重要的区别,但现在看来它们可以互换。对吗?
以下是我需要帮助的部分:
- 在登录时以及挂起/恢复后,Compiz 反应非常差。XFCE 面板显示在错误的位置。如果我能得到终端,我会再次运行“compiz --replace ccp”以重新启动。我猜这是因为我让 xfwm4 尝试启动,然后用 compiz 替换。
xfwm4 根本就不应该启动。我发现如何在 Xubuntu 14.10、14.04 或 12.04 中设置 Compiz和如何在 Xfce 4.12 上正确安装 Compiz?。这些与 Ubuntu 14.04 有关。它提到了一些 XFCE 配置文件,但我再也看不到相同的设置。我没有看到在“~/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml”中将“xfwm4”指定为窗口管理器。
- XFCE“工作区切换器”面板应用程序与 Compiz 工作区交互不佳。经过一段时间的设置调整后,我能够让工作区和窗口显示在面板工作区切换器中。但是,面板工作区切换器是“只看不摸”的东西。它不能用于在工作区之间移动窗口。
也许这就是最好的结果了?
- 我在 ccsm 中打开了边缘翻转选项,但将窗口拉到边缘没有效果,窗口不会拖到下一个工作区。
我发现 dbus 仍然可以从 shell 与 Compiz 交互。我的旧壁纸更换程序不再正常工作,但找出问题所在只是时间问题(积极思考的力量)。
Compiz 拥有一些其他地方没有的功能,它很有趣!至少在它存在期间是这样的。
答案1
我现在有了一些答案。
Compiz 及其与 xfce 面板的交互存在一些已知缺陷。一个问题是,跨工作区拖动窗口不再起作用,甚至在带有 Unity 的 Compiz 中也不起作用。此外,XFCE4 面板无法理解 Compiz Viewport 术语。Arch Linux 系统上有一个补丁,一个特殊的包:xfce4-面板-compiz。但是,我尝试将相同的补丁应用于 Ubuntu 当前的 xfce4-panel 包,但出现模糊测试失败,因此无法报告。有一个与此相关的 Ubuntu 错误报告,如在 中所述无法将窗口拖到 Ubuntu 16.04 上的另一个工作区
Compiz 配置中有 2 个重要元素。令我惊讶的是,我在 2015 年就发现了这一点:(Compiz、多头、工作区背景和成功:通过 Python 脚本更改 compiz 壁纸),但忘记了。当时我放弃使用 Compiz 是因为它无法与 XFCE4 面板很好地交互,这仍然是一个问题,但有 2 个技巧可以让体验好很多。
在当前 Compiz 配置器 ccsm 中,选择最左侧的“首选项”,然后更改以下默认值:
后端:GSettings 配置后端
集成:取消选中“启用与桌面环境的集成”
后端问题会影响用户编写的脚本,例如更换壁纸等。根据我的经验,gsettings 配置后端要好得多,也更稳定,dbus 后端曾经运行良好(大约在 2012 年),但现在 Gsettings 才是王道!
当然,关闭集成可能会导致其他我目前还不明白的问题。例如,它可能会导致与 XFCE4 面板交互复杂化。但是,这似乎不管用。在我看来,当前 Compiz 中强调的桌面集成是针对 Ubuntu Unity 环境的,而不是针对 XFCE4 的。
- Compiz 中的 DBUS 后端无法使用。如果您要编写脚本来更改背景等,使用 gsettings 而不是 dbus 更有可能成功。我以两种方式编写了背景更改程序,在 Compiz 中,通过 dbus 重新分配图像数组时会出现问题,但在 Gsettings 中不会失败。
因此,如果您更改 Gsettings 后端,我在 2015 年博客文章中提到的 Python 脚本仍然有效。
我现在根本无法使用 Compiz 立方体或旋转立方体功能,但桌面墙工作正常,我对此很满意。摇晃的窗户是值得的。
如果您将计算机挂起在一台显示器上,然后转到另一个有两台显示器的地方并尝试恢复会话,Compiz 通常会感到恐慌。问题是系统“知道”有两台显示器,但至少在我的 Dell 5510 中,它不使用这两台显示器。相反,它试图在一台笔记本电脑显示器上显示两个桌面。两个显示器相互争斗,造成一些不愉快。鼠标在这里没用,但可以使用键盘启动“arandr”并选择视频设置。之后,它就可以正常工作了。
这些是我已打开的 Compiz 模块。
Composite
Gnome Compatability
OpenGL
Desktop Wall
Viewport Switcher
Animations
Fading Windows
Window Decoration
Wobbly Windows
JPEG
PNG
Compiz Library Toolbox
Regex Matching
Mouse position polling
Session Management
Wallpaper
Workarounds
Application switcher
Scale
Move Window
Resize Window
Place Windows
值得注意的是,DBUS 不再处于打开状态。
结论:
经过大量的摆弄之后,我认为 Compiz 确实可以工作,唯一的主要限制是 XFCE 面板工作区切换器不能很好地与它配合使用。
我将更加努力地应用适用于 XFCE4 面板的 Arch Linux 补丁。