我目前正在使用 Manjaro (Juhraya 18.1.5) 并使用 [guake] [1] 作为下拉终端。我已经为其设置了透明度,并希望将其作为启动程序启动。但登录后发现背景不透明。其他一切都工作得很好。如果我退出并重新启动它,透明度就可以正常工作。
以下是一些可能有用的信息:
System:
Host: XD Kernel: 5.4.17-1-MANJARO x86_64 bits: 64 Desktop: KDE Plasma 5.17.5
Distro: Manjaro Linux
Graphics:
Device-1: Intel Skylake GT2 [HD Graphics 520] driver: i915 v: kernel
Display: x11 server: X.Org 1.20.7 driver: intel unloaded: modesetting
resolution: 1366x768~60Hz
OpenGL: renderer: Mesa DRI Intel HD Graphics 520 (Skylake GT2) v: 4.6 Mesa 19.3.3
我找到了一个解决方案,在启动脚本中添加一个延迟计时器。但我想知道我是否还能做些什么来解决这个问题。还有什么导致了这里的问题?谢谢。 [1]:http://guake-project.org/
答案1
我认为这样做的原因是,启动任务是在系统完全准备好为该窗口提供透明度选项之前启动的。或者是它如何这么早加载程序,以至于 guake 的配置文件尚未被读取。使其看起来好像是由另一个没有设置透明度选项的用户启动的。
答案2
关于我的系统信息...我正在使用 Kubuntu 和 KDE Plasma v:5.18.5。这就是我所做的。
我从终端窗口安装了“gcc”。“gcc”是一个将C语言文本代码翻译为机器代码的程序。
我创建了一个名为“start-guake.c”的文本文件,然后在该文本文档中编写了代码(扩展名必须是“.c”而不是“.txt”)。
之后,在终端中,我将目录更改为文本文件的位置,并使用“gcc”对其进行编译(在命令行中写入 gcc,后跟包含代码的文本文件的路径:“gcc /path /to/file.c”)。此操作导致创建一个名为“a.out”的文件(您将在包含代码的文本文件所在的同一文件夹中找到它),这是实际的程序。
我将该文件从“a.out”重命名为“start-guake”并将其移动到“/bin/”目录中。
从那里我进入我的应用程序菜单并打开“自动启动”,然后在其中添加了新创建的程序。
完成所有这些步骤后我重新启动了计算机。这是代码:
#include <stdlib.h> #include <stdio.h> #include <string.h> void waitTenSeconds(); int main(){ waitTenSeconds(); system("guake"); return 0; } void waitTenSeconds(){ system("sleep 10"); }
希望这有帮助。祝你好运 !
答案3
我可以证实迈克尔·普罗科佩克所说的话。我通过用 C 编写一个小程序解决了这个问题,该程序在加载桌面环境后 10 秒内启动终端,并且我在启动时使用 Autorun 运行了这个程序。对我来说,问题是由于某种原因我无法在启动时运行脚本,所以这就是我求助于 C 的原因。