如何使 Cairo dock(带有 opengl)仅在 Gnome-Classic 上执行?

如何使 Cairo dock(带有 opengl)仅在 Gnome-Classic 上执行?

我想让 Cairo dock(带有 opengl)在启动时仅在 Gnome-Classic 上执行,但不在其他 DE(如 cinnamon、unity 或 gnome)上执行。如何做到这一点?

答案1

  1. cairo-dock首先创建一个基于环境变量运行的脚本$DESKTOP-SESSION。我们将在~/.config/autostart目录中创建脚本并将其命名为cairo.sh

    • Ctrl+H让 nautilus 显示隐藏文件。然后转到您的主目录 → .configautostart目录。

    • 右键单击 nautilus 中的空白处。选择创建新文档空文档. 将此文件命名为cairo.sh.

    • 双击新创建的文件,在 gedit 文本编辑器(或您选择的任何其他编辑器)中打开它,并将这些行粘贴到其中。

      if [ "$DESKTOP_SESSION" = "gnome-classic" ]; then
          cairo-dock
      fi
      
    • 然后关闭文件。右键单击它,选择特性

    • 特性窗户,在权限标签,检查允许将文件作为程序执行
  2. 然后在同一目录中创建另一个文件,即~/.config/autostart名为cairo(不要首先用.desktop扩展名命名,以避免以后打开时麻烦)

    在该文件中,复制这些行并粘贴,更改适当的信息,例如在“用户名”位置输入用户名。这是一个 .desktop 文件,将在启动时调用

    [Desktop Entry]
    Type=Application
    Exec=/home/<name of user>/.config/autostart/cairo.sh
    Hidden=false
    NoDisplay=false
    X-GNOME-Autostart-enabled=true
    Name[en]=Cairo
    

    保存文件并退出 gedit。

  3. 然后重命名文件并添加扩展名.desktop。要重命名,请选择文件并按F2

  4. 重命名后,再次使文件可执行。为此,选择文件 → 选择特性。在新窗口中,权限选项卡,选中复选框允许文件作为程序运行

  5. 注销并登录到 gnome-classic 会话。Cairo-dock 将自动启动。

如果您还想在另一个桌面环境(例如 ubuntu)上运行 Cairo,则只需重复此过程,为该桌面会话创建另一组命令。首先,您需要创建另一个 cairo.sh,将其命名为略有不同的名称,例如 cairo2.sh。然后,您可以使用 nautilus 打开它并复制以下几行:

        if [ "$DESKTOP_SESSION" = "ubuntu" ]; then
            cairo-dock
        fi

然后,您可以保存该文件并使其像以前一样可执行。

接下来,您将再次创建一个 .desktop 命令,并将其命名为略有不同的名称,例如 cairo2。复制命令行时,复制以下内容:

    [Desktop Entry]
    Type=Application
    Exec=/home/<name of user>/.config/autostart/cairo2.sh
    Hidden=false
    NoDisplay=false
    X-GNOME-Autostart-enabled=true
    Name[en]=Cairo

不要忘记在“用户名”位置输入用户名,并确保 Exec= 行上的文件名称与 ubuntu 的 .sh 命令相同,在本例中为 cairo2.sh。

此后,只需按照之前的步骤操作,当您登录到适当的桌面环境时,cairo dock 就会自动打开。

答案2

看一下中的文件/usr/share/xsessions/

您将在那里找到ubuntu.desktopubuntu-2d.desktop(如果您尚未使用 12.10)和gnome-fallback.desktop(也许还有gnome-classic.desktop。我已经安装了 gnome-shell,也许这是从那里来的)。

打开其中一个,你会看到它们都有一行Exec=gnome-session --session=...。对于 gnome-fallback,请打开/usr/share/gnome-session/sessions/gnome-fallback.session

现在你可以

  1. 改变/usr/share/gnome-session/sessions/gnome-fallback.session路线

    RequiredComponents=gnome-panel;gnome-settings-daemon;

    RequiredComponents=gnome-panel;gnome-settings-daemon;cairo-dock;(检查可执行文件名称!)

  2. 例如改变/usr/share/xsessions/gnome-fallback.desktop线路Exec=

    Exec=/home/<yourname>/<yourexecbashscript>

    或者将当前的自动启动文件夹复制.config/autostart/到新位置

    Exec=gnome-session --session=gnome-fallback -a <Newplaceofautostartfolder>

  3. 创建一个全新的会话。将和复制并重命名为新名称gnome-fallback.session并将gnome-fallback.session其放置到各自的位置,然后像 1 中一样调整新会话。

前两个可以工作,但是缺点是它们在更新时可能会或可能不会被覆盖(你必须检查,我不确定)。

2. 此外,如果您复制自动启动文件夹,则只有其中一个会更新,具体取决于您登录的会话。

因此我建议按照3所示进行操作。玩得开心。

相关内容