From 83fad6307903644c0c6588001220aafb1da95cbe Mon Sep 17 00:00:00 2001 From: Robert Tari Date: Sun, 3 Dec 2023 22:56:36 +0100 Subject: data/*: Add AccountsService files --- ....ayatana.indicator.display.AccountsService.rules | 7 +++++++ data/CMakeLists.txt | 19 +++++++++++++++++++ ...ayatana.indicator.display.AccountsService.policy | 21 +++++++++++++++++++++ ...rg.ayatana.indicator.display.AccountsService.xml | 17 +++++++++++++++++ 4 files changed, 64 insertions(+) create mode 100644 data/50-org.ayatana.indicator.display.AccountsService.rules create mode 100644 data/org.ayatana.indicator.display.AccountsService.policy create mode 100644 data/org.ayatana.indicator.display.AccountsService.xml diff --git a/data/50-org.ayatana.indicator.display.AccountsService.rules b/data/50-org.ayatana.indicator.display.AccountsService.rules new file mode 100644 index 0000000..d3126f3 --- /dev/null +++ b/data/50-org.ayatana.indicator.display.AccountsService.rules @@ -0,0 +1,7 @@ +// Allow LightDM to set AccountsService fields +polkit.addRule (function (action, subject) { + if (action.id == "org.ayatana.indicator.display.AccountsService.ModifyAnyUser" && subject.user == "lightdm") + { + return polkit.Result.YES; + } +}); diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt index 38ba788..451c9e8 100644 --- a/data/CMakeLists.txt +++ b/data/CMakeLists.txt @@ -64,3 +64,22 @@ install (FILES "${AYATANA_INDICATOR_FILE}" # ayatana-indicator-display-brightness-high install (DIRECTORY "icons/" DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/icons/hicolor/scalable/status" FILES_MATCHING PATTERN "*.svg") + +if (ENABLE_COLOR_TEMP) + + # org.ayatana.indicator.display.AccountsService.xml + + install (FILES org.ayatana.indicator.display.AccountsService.xml DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/dbus-1/interfaces") + install (DIRECTORY DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/accountsservice/interfaces/") + install (CODE "message(STATUS \"Symlinking: \$ENV{DESTDIR}${CMAKE_INSTALL_FULL_DATADIR}/accountsservice/interfaces/org.ayatana.indicator.display.AccountsService.xml\")") + install (CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ../../dbus-1/interfaces/org.ayatana.indicator.display.AccountsService.xml \$ENV{DESTDIR}${CMAKE_INSTALL_FULL_DATADIR}/accountsservice/interfaces/org.ayatana.indicator.display.AccountsService.xml)") + + # org.ayatana.indicator.display.AccountsService.policy + + install (FILES org.ayatana.indicator.display.AccountsService.policy DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/polkit-1/actions") + + # 50-org.ayatana.indicator.display.AccountsService.rules + + install (FILES 50-org.ayatana.indicator.display.AccountsService.rules DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/polkit-1/rules.d") + +endif () diff --git a/data/org.ayatana.indicator.display.AccountsService.policy b/data/org.ayatana.indicator.display.AccountsService.policy new file mode 100644 index 0000000..a2bff7a --- /dev/null +++ b/data/org.ayatana.indicator.display.AccountsService.policy @@ -0,0 +1,21 @@ + + + + Set properties of own user + Authentication is required to set one's own indicator display properties. + + yes + yes + yes + + + + Set properties of any user + Authentication is required to set another user's indicator display properties. + + no + no + no + + + diff --git a/data/org.ayatana.indicator.display.AccountsService.xml b/data/org.ayatana.indicator.display.AccountsService.xml new file mode 100644 index 0000000..9e41ef2 --- /dev/null +++ b/data/org.ayatana.indicator.display.AccountsService.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + -- cgit v1.2.3