重启后必须重新打开 Gnome shell 扩展

use*_*611 5 gnome gnome-shell-extension gnome-shell

每当我重新启动系统(ubuntu 14.04 和 gnome 3.12)时,所有 gnome shell 扩展都会关闭。我可以重新启用它们,它们可以正常工作,直到我再次重新启动。我该怎么做才能让 gnome 在启动时重新启动相同的 shell 扩展?

Adi*_*tya 3

默认情况下,GNOME 3.12 在 Ubuntu 14.04 存储库中不可用。您必须已从GNOME 团队的 Staging PPA安装了 GNOME 3.12 。他们警告说:

这里的软件包被认为尚未准备好供一般使用,它们具有已知的错误和/或回归,有时具有严重的性质。大多数情况下,事情应该运行顺利,但当您遇到问题时,请准备好使用 ppa-purge!

因此,您应该报告其启动板页面上提到的有关它的错误。

但是,您可以尝试的解决方法如下:

  1. 启用您希望在启动时启用的所有扩展。

  2. 然后,运行以下命令:

    $ gsettings get org.gnome.shell enabled-extensions 
    
    Run Code Online (Sandbox Code Playgroud)

    这将列出当前启用的所有扩展。例如,我的输出是:

    ['apps-menu@gnome-shell-extensions.gcampax.github.com', 'places-menu@gnome-shell-extensions.gcampax.github.com', 'window-list@gnome-shell-extensions.gcampax.github.com']
    
    Run Code Online (Sandbox Code Playgroud)
  3. 现在,创建一个名为enable_gnome_extensions.shinside~/bin文件夹的文件,其中包含以下文本:

    gsettings set org.gnome.shell enabled-extensions "<output_of_earlier_command_listing_enabled_extensions>"
    
    Run Code Online (Sandbox Code Playgroud)

    例如,我将为启用的扩展添加以下行:

    gsettings set org.gnome.shell enabled-extensions "['apps-menu@gnome-shell-extensions.gcampax.github.com', 'places-menu@gnome-shell-extensions.gcampax.github.com', 'window-list@gnome-shell-extensions.gcampax.github.com']"
    
    Run Code Online (Sandbox Code Playgroud)
  4. 使用以下命令使该文件可执行:

    $ chmod +x ~/bin/enable_gnome_extensions.sh
    
    Run Code Online (Sandbox Code Playgroud)
  5. 将此文件添加到您的启动应用程序中,以便在登录时执行。请按照此答案了解如何操作。“命令”将是该文件的路径。

重启测试是否有效。