NM-Applet не отвечает на щелчок на значке лотка, если не запускается с Sudo

Если вы действительно имели в виду TRUE и FALSE, то в /usr/include/glib-2.0/glib/gmacros.h есть

#ifndef FALSE
#define FALSE   (0)
#endif

#ifndef TRUE
#define TRUE    (!FALSE)
#endif

Если вы имели в виду что-то другое, то вам нужно более точно указать, что вы подразумеваете под gnome-libs.

добавил вполне разумное предположение

Макросы, которых вам не хватает, не определены в GTK ничем, а Elv* булевы, похоже, являются перечисляемым типом в Elvis Text Editor:

enum {ElvFalse, ElvTrue} ELVBOOL;

Я подозреваю, что этот код был заимствован из какой-то другой кодовой базы и потерял свои заголовки. Неудивительно, что это делает ElvFalse эквивалентным 0 и ElvTrue равным 1 (по крайней мере, в Южном полушарии, я слышал, что на севере все наоборот).

Учитывая прототип:

void gtk_menu_item_configure(GtkMenuItem *menu_item,
         gint show_toggle_indicator,
         gint show_submenu_indicator);

значения 0 и 1 кажутся довольно хорошими предположениями о значении констант.

добавлено в ответ на комментарий

Из elvis-2.2_0/doc/bugs.txt:

/ BOOLEAN и тип данных Elvis может конфликтовать со стандартным. Измените его имя, а также имена значений True и False.

Где / - это флаг автора "что я считаю, что проблема была решена". Что странно, когда в коде появляется

... ElvFalse,False)

/

... ElvFalse,False)

. Но еще больше проблем в guignome/README.gnome (от октября 2003 года):

Расширение Gnome/GTK+ GUI для Elvis пишет Дэвид Алан Гилберт (David Alan Gilbert). (elvis@treblig.org). Оно находится на стадии разработки!

Я не могу собрать Elvis 2.2 на Unbuntu Maverick из-за других дефектов, чем вы сообщаете (в guix11), и последние репозитории Debian/Ubuntu не содержат Gnome версию elvis, только X11. Поскольку главная страница Elvis последний раз обновлялась два года назад, я сомневаюсь, что версия для Gnome когда-либо работала или работает с современным Gnome.

Тем не менее, нет никакого вреда в попытке

#define False (0)
#define True (!False)

, но я не уверен, что это заведет вас далеко.

1
05.10.2018, 08:56
1 ответ

В моем случае это было вызвано тем, что мой оконный менеджер не предоставил демон уведомлений. Как видно из сообщения об ошибке, служба org.freedesktop.Notificationsна шине d -не предоставляется. В моем случае служба была установлена, но не запущена.

Вы можете проверить, не в этом ли проблема, запустив терминал. notify-send "test"Если появляется всплывающее -уведомление, это не та проблема, с которой вы столкнулись. Если команда зависает, то это та же проблема.

Решение состоит в том, чтобы запустить программу, предоставляющую службу org.freedesktop.Notifications. Есть много программ, которые это делают, и список на archwiki . В моем случае у меня была установлена ​​служба уведомлений dunst, но она не работала. Добавление его в автозапуск приложений моего оконного менеджера решило проблему.

3
27.01.2020, 23:23

Теги

Похожие вопросы