summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Whitaker <mageia@martin-whitaker.me.uk>2018-09-21 17:00:12 +0100
committerMartin Whitaker <mageia@martin-whitaker.me.uk>2018-09-21 17:00:12 +0100
commite712ef10af7e26bff5cac719a6474f8b1c7cc200 (patch)
tree50e559eed4ae8ab5e35f84f722bc03dab388e291
parent6dbe4b5b57fb977ce4618511c5a1333740f23e5c (diff)
downloaddraklive-config-e712ef10af7e26bff5cac719a6474f8b1c7cc200.tar
draklive-config-e712ef10af7e26bff5cac719a6474f8b1c7cc200.tar.gz
draklive-config-e712ef10af7e26bff5cac719a6474f8b1c7cc200.tar.bz2
draklive-config-e712ef10af7e26bff5cac719a6474f8b1c7cc200.tar.xz
draklive-config-e712ef10af7e26bff5cac719a6474f8b1c7cc200.zip
Updated fix to disable screensaver during live install.
-rw-r--r--files/draklive-install13
1 files changed, 8 insertions, 5 deletions
diff --git a/files/draklive-install b/files/draklive-install
index 018afd4..b4da951 100644
--- a/files/draklive-install
+++ b/files/draklive-install
@@ -8,11 +8,14 @@ if ($>) {
# reenable it.
system('xscreensaver-command -exit');
} else {
- my $bus = Net::DBus->session;
- my $service = $bus && $bus->get_service('org.freedesktop.ScreenSaver');
- my $manager = $service && $service->get_object('/ScreenSaver', 'org.freedesktop.ScreenSaver');
- my $cookie = $manager && $manager->Inhibit('draklive-install', 'Install in progress');
- # The screensaver will be automatically uninhibited when this process exits.
+ # If the ScreenSaver service isn't implemented, an exception will be thrown.
+ eval {
+ my $bus = Net::DBus->session;
+ my $service = $bus->get_service('org.freedesktop.ScreenSaver');
+ my $manager = $service->get_object('/ScreenSaver', 'org.freedesktop.ScreenSaver');
+ my $cookie = $manager->Inhibit('draklive-install', 'Install in progress');
+ # The screensaver will be automatically uninhibited when this process exits.
+ }
}
my $status = system("/usr/bin/pkexec /usr/sbin/draklive-install-lock-storage @ARGV");
exit($status);