Как заставить программу запускаться автоматически каждый раз, когда я разблокирую экран в Ubuntu?
Как заставить программу запускаться автоматически каждый раз, когда я разблокирую экран в Ubuntu?
Ответы:
Может быть сделано с использованием dbus API
(пример perl скопирован из http://live.gnome.org/GnomeScreensaver/FrequentlyAskedQuestions и немного поменял, чтобы ловить заставку происходит и выключается)
my $cmd = "dbus-monitor --session \"type='signal',interface='org.gnome.ScreenSaver',member='ActiveChanged'\"";
open (IN, "$cmd |");
while (<IN>) {
if (m/^\s+boolean true/) {
print "*** Session is idle ***\n";
} elsif (m/^\s+boolean false/) {
print "*** Session is no longer idle ***\n";
}
}
Затем разрешите запуск сценария:
sudo chmod +x /usr/local/sbin/SCRIPTNAME.pl
Добавьте скрипт в диспетчер сеансов (System & gt; Preferences & gt; Sessions), чтобы он начинался с вашего входа в систему с помощью этой команды:
perl /usr/local/sbin/SCRIPTNAME.pl
надеюсь это поможет