Чтобы понять, что происходит, я разбью его на Vala, GTK +, системные уведомления и D-Bus.
Похоже, вы скомпилировали свою программу и запустили ее в Windows.Итак, Vala и компилятор C сделали свое дело и создали бинарный файл, работающий на Windows.Vala часто используется с графическим инструментарием GTK +, а GTK + использует разные GDK бэкэнды для таких вещей, как создание окон и обработка ввода.GTK + также использует различные Cairo backends для рендеринга виджетов на разных платформах.GDK и Cairo используют Windows API в Windows, Quartz API в macOS и т. Д.
Общесистемные уведомления не выглядят такими кроссплатформенными, как GDK и Cairo.Общим стандартом для Unix является спецификация уведомлений Freedesktop.org .Эта спецификация использует D-Bus для межпроцессного взаимодействия с общесистемной реализацией уведомлений.На Linux и других Unix-подобных платформах это работает довольно хорошо.Требования: D-Bus работает и есть реализация org.freedesktop.Notifications
.
. В Windows я не уверен, работает ли D-Bus.Может быть реализация TCP для Windows, но в Unix используются сокеты Unix.Если D-Bus можно запустить в Windows, то также потребуется реализация org.freedesktop.Notifications
, которая переводит сообщения D-Bus в Windows API для уведомлений.Так что это может быть возможно, но я не могу найти реализацию.
Обновление
Как указывает @AlexB GIO, GNotification предоставляет кроссплатформенные системные уведомления.Это включает org.freedesktop.Notifications
, Flatpak , macOS и Windows .К сожалению, в настоящее время реализация Windows просто заполнитель .Существует проблема, чтобы исправить это .