如何在不卸载指标消息包的情况下从指标小程序中删除信封?

lev*_*que 10 indicator

我厌倦了指示器小程序(也称为消息菜单)中的信封,因为我不使用它,所以我想摆脱它,但我没有 root 访问权限,所以我无法删除它卸载指标消息包。还有其他方法可以禁用这个小程序吗?

指示器小程序是否提供了一种选择显示或不显示哪个指示器的方法?

Ted*_*uld 10

如果您只想隐藏消息菜单,您可以将其中的所有应用程序列入黑名单。您可以通过将所有应用程序链接复制到本地黑名单目录来做到这一点。这是执行此操作的命令行方式:

  mkdir -p ~/.config/indicators/messages/applications-blacklist
  cp /usr/share/indicators/messages/applications/* ~/.config/indicators/messages/applications-blacklist
Run Code Online (Sandbox Code Playgroud)

第一次创建黑名单目录时,您需要重新启动会话(注销并重新登录),然后消息菜单应该隐藏起来。


sag*_*ise 3

http://ubuntuforums.org/showthread.php?t=1470786根据此,您可以通过从面板中删除指标小程序并在启动应用程序中添加 gnome-volume-control-applet 来进入业力之类的小程序


Ric*_*rri 1

查看indicator-applet-0.3.7的源代码,似乎你不能: /usr/lib/indicators/3加载某些“INDICATOR_DIR”(位于我的10.04盒子上)中的每个已安装模块。“INDICATOR_DIR”被定义为编译时常量,因此无法在已安装的系统上更改它。相关来源位于 703--728 行applet-main.c

    /* load 'em */
    if (g_file_test(INDICATOR_DIR, (G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR))) {
            GDir * dir = g_dir_open(INDICATOR_DIR, 0, NULL);

            const gchar * name;
            while ((name = g_dir_read_name(dir)) != NULL) {
                    /* ... some lines omitted for brevity ... */
                    if (load_module(name, menubar)) {
                            indicators_loaded++;
                    }
            }
            g_dir_close (dir);
    }
Run Code Online (Sandbox Code Playgroud)

作为解决方法,您可以(警告:未经测试!):

  1. 编译您自己的 版本indicator-applet,指定不同的“INDICATOR_DIR”:如果您传递 --enable-localinstall./configure,则“INDICATOR_DIR”将位于 中$libdir/indicators/2,您也可以 $libdir通过命令行选项设置为./configure

  2. 在您自己的 INDICATOR_DIR 中,仅激活您想要的指标(只需符号链接系统范围的指标就足够了)

  3. 使用~/.gnomercor~/.xsession文件修改 PATH,以便您自己的indicator-applet二进制文件位于系统范围的二进制文件之前。