diff --git a/MANIFEST b/MANIFEST index 435dd11..6d02035 100644 --- a/MANIFEST +++ b/MANIFEST @@ -1,4 +1,5 @@ include lightdm-gtk-greeter-settings.desktop.in README COPYING +include com.ubuntu.pkexec.lightdm-gtk-greeter-settings.policy include bin/* recursive-include data *.ui *.xml recursive-include lightdm_gtk_greeter_settings *.py diff --git a/bin/lightdm-gtk-greeter-settings-pkexec b/bin/lightdm-gtk-greeter-settings-pkexec new file mode 100755 index 0000000..577c273 --- /dev/null +++ b/bin/lightdm-gtk-greeter-settings-pkexec @@ -0,0 +1,2 @@ +#!/bin/sh +pkexec "/usr/bin/lightdm-gtk-greeter-settings" "$@" diff --git a/com.ubuntu.pkexec.lightdm-gtk-greeter-settings.policy b/com.ubuntu.pkexec.lightdm-gtk-greeter-settings.policy new file mode 100644 index 0000000..40bd4ca --- /dev/null +++ b/com.ubuntu.pkexec.lightdm-gtk-greeter-settings.policy @@ -0,0 +1,19 @@ + + + + + + Authentication is required to run Settings editor for LightDM GTK+ Greeter + preferences-system + + auth_admin + auth_admin + auth_admin + + /usr/bin/lightdm-gtk-greeter-settings + true + + + diff --git a/data/GtkGreeterSettingsWindow.ui b/data/GtkGreeterSettingsWindow.ui index 7462e4f..1fe1830 100644 --- a/data/GtkGreeterSettingsWindow.ui +++ b/data/GtkGreeterSettingsWindow.ui @@ -2,20 +2,44 @@ - + + True + False + 2 + dialog-cancel + + + True + False + 2 + dialog-close + + True False image - + + True + False + dialog-ok + + True False document-open - + True False + 2 reload + + + True + False + 2 + document-save @@ -65,15 +89,11 @@ 1 10 - - 300 - 1 - 10 - False LightDM GTK+ Greeter: settings center + preferences-system @@ -1279,10 +1299,9 @@ True - False + True 24 timeout_adjustment - on 10000 1 0 @@ -1328,11 +1347,11 @@ end - gtk-save + Save True True True - True + icon_save @@ -1343,11 +1362,11 @@ - gtk-close + Close True False True - True + icon_close @@ -1362,7 +1381,7 @@ True True True - image3 + icon_reset @@ -1382,6 +1401,11 @@ + + 300 + 1 + 10 + True False @@ -1390,7 +1414,7 @@ Icon True False - image1 + icon_image False @@ -1399,7 +1423,7 @@ Path True False - image2 + icon_open False @@ -1440,11 +1464,12 @@ end - gtk-cancel + _Cancel True False True - True + icon_cancel + True False @@ -1454,13 +1479,14 @@ - gtk-ok + _OK True False True True True - True + icon_ok + True False diff --git a/lightdm_gtk_greeter_settings/GtkGreeterSettingsWindow.py b/lightdm_gtk_greeter_settings/GtkGreeterSettingsWindow.py index 8da26ee..af8badd 100644 --- a/lightdm_gtk_greeter_settings/GtkGreeterSettingsWindow.py +++ b/lightdm_gtk_greeter_settings/GtkGreeterSettingsWindow.py @@ -159,7 +159,11 @@ self._apply_button.props.sensitive = self._allow_edit and self._changed_values def on_format_time_scale(self, scale, value): - return '%02d:%02d' % (value // 60, value % 60) + value = int(value) + if value > 0: + return '%02d:%02d' % (value // 60, value % 60) + else: + return _('Never') def on_destroy(self, *args): Gtk.main_quit() diff --git a/setup.py b/setup.py index b838d69..d34eaca 100644 --- a/setup.py +++ b/setup.py @@ -19,7 +19,7 @@ for k, v in values.items(): f.write('%s = %s\n' % (k, v)) except OSError as e: - print ("ERROR: Can't write installation_config: %s" % e) + print ("ERROR: Can't write installation config: %s" % e) sys.exit(1) @@ -50,6 +50,7 @@ def update_desktop_file(filename, target_pkgdata, target_scripts): config = configparser.RawConfigParser(strict=False, allow_no_value=True) + config.optionxform = str try: config.read(filename) except configparser.Error as e: @@ -60,7 +61,7 @@ config.add_section('Desktop Entry') old_command = config.get('Desktop Entry', 'Exec', fallback='').split(None, 1) - new_command = target_scripts + 'lightdm-gtk-greeter-settings' + new_command = target_scripts + 'lightdm-gtk-greeter-settings-pkexec' if len(old_command) > 1: new_command += ' ' + new_command[1] config.set('Desktop Entry', 'Exec', new_command) @@ -86,15 +87,21 @@ update_desktop_file(desktop_file, target_pkgdata, target_scripts) -DistUtilsExtra.auto.setup( +DistUtilsExtra.auto.setup \ +( name='lightdm-gtk-greeter-settings', - version='0.1', + version='0.3', license='GPL-3', author='Andrew P.', author_email='pan.pav.7c5@gmail.com', description='Settings editor for LightDM GTK+ Greeter', long_description='Settings editor for LightDM GTK+ Greeter', url='https://launchpad.net/lightdm-gtk-greeter-settings', - cmdclass={'install': InstallAndUpdateDataDirectory} - ) + cmdclass={'install': InstallAndUpdateDataDirectory}, + data_files=\ + [ + (os.path.join('share', 'polkit-1', 'actions'), + ['com.ubuntu.pkexec.lightdm-gtk-greeter-settings.policy']) + ], +)