Difference between revisions of "Getting Started/Tutorials/D-Bus/Configuration"

Jump to: navigation, search
(All KDE-4 versions)
 
(54 intermediate revisions by one user not shown)
Line 1: Line 1:
{{Template:I18n/Language Navigation Bar|Getting_Started/Tutorials/D-Bus/Configuration}}
+
 
  
 
==Configuring for Services==
 
==Configuring for Services==
Line 5: Line 5:
 
===All KDE-4 versions===
 
===All KDE-4 versions===
  
If you instlled KDE in: "/usr/KDE-4, the D-Bus services will be installed in "/usr/KDE-4/share/dbus-1/services".  D-Bus needs to find these services and use them.
+
If you instlled KDE-4.x.y in: "/opt/KDE-4, the default location where D-Bus services will be installed is "/opt/KDE-4/share/dbus-1/services".  D-Bus needs to find these services and use them.
  
If you only have one version of KDE installed and you normally use it, simply add, for example if you installed KDE in: "/usr/KDE4":
+
You can either change the default to install them in:  
  
:<servicedir>/usr/KDE4/share/dbus-1/services</servicedir>
+
::/usr/share/dbus-1/services  
  
 +
by adding the CMake parameter:
 +
 +
::-DDBUS_SERVICES_INSTALL_DIR:PATH=/usr/share/dbus-1/services
 +
 +
Or, you can add, for example:<pre>
 +
  <servicedir>/opt/KDE-4/share/dbus-1/services</servicedir>
 +
</pre>
 
{use the actual path from your system}
 
{use the actual path from your system}
  
 
to your: "/etc/dbus-1/session-local.conf" file.
 
to your: "/etc/dbus-1/session-local.conf" file.
  
If your system doesn't yet have that file, create it:
+
NOTE: Although you can place multiple paths for services in the "/etc/dbus-1/session-local.conf" file, if the services have the same name, only the last one will be used.  This may or may not cause problems if you have multiple versions of KDE on your system.
  
<nowiki>------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------</nowiki>
+
===KDE >= 4.4 and TRUNK===
  
:<!DOCTYPE busconfig PUBLIC
+
The current KDE-4.4 BRANCH and TRUNK also install a: "system-services" directory.  If you installed KDE-4.x.y in: "/opt/KDE-4, the D-Bus system services will be installed in "/opt/KDE-4/share/dbus-1/system-services". D-Bus needs to find these services and use them.
: "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+
: "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+
:<busconfig>
+
:  <servicedir>/usr/KDE4/share/dbus-1/services</servicedir>
+
:</busconfig>
+
  
<nowiki>------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------</nowiki>
+
You can either change the default to install them in:
  
 +
::/usr/share/dbus-1/system-services
  
 +
by adding the CMake parameter:
  
 +
::-DDBUS_SYSTEM_SERVICES_INSTALL_DIR:PATH=/usr/share/dbus-1/system-services
  
TO DO
+
Or, you can add, for example:<pre>
 +
  <servicedir>/opt/KDE-4/share/dbus-1/system-services</servicedir>
 +
</pre>
 +
{use the actual path from your system}
  
===KDE-4.4 and TRUNK===
+
to your: "/etc/dbus-1/system-local.conf" file.
  
TO DO
+
NOTE: Although you can place multiple paths for system services in the "/etc/dbus-1/system-local.conf" file, if the services have the same name, only the last one will be used.  This may or may not cause problems if you have multiple versions of KDE on your system.
  
 
==SYSCONF_INSTALL_DIR==
 
==SYSCONF_INSTALL_DIR==
  
TO DO
+
You can use the parameter: "SYSCONF_INSTALL_DIR" when running CMake to place the configuration directories where you want them which would normally be: "/etc/kde-4" or if installing multiple versions: "/etc/kde-<version>"
 +
 
 +
For example, if you use:
 +
 
 +
::-DSYSCONF_INSTALL_DIR=/etc/kde-4
 +
 
 +
Then you must configure D-Bus to find these directories.
 +
 
 +
First if one or both of the directories:
 +
 
 +
::/etc/kde-<version>/dbus-1/session.d
 +
::/etc/kde-<version>/dbus-1/system.d
 +
 
 +
doesn't/don't exist, create it/them.
 +
 
 +
Then add:<pre>
 +
  <includedir>/etc/kde-4/dbus-1/session.d</includedir>
 +
</pre>
 +
to your: "/etc/dbus-1/session-local.conf" file.
 +
 
 +
If you don't have the: "session-local.conf", create it:
 +
 
 +
<nowiki>------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------</nowiki><pre>
 +
<!DOCTYPE busconfig PUBLIC
 +
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
 +
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
 +
<busconfig>
 +
 
 +
  <!-- Search for .conf files in /etc/kde-4/dbus-1/session.d -->
 +
  <includedir>/etc/kde-4/dbus-1/session.d</includedir>
 +
 
 +
</busconfig>
 +
</pre>
 +
<nowiki>------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------</nowiki>
 +
 
 +
And add:<pre>
 +
  <includedir>/etc/kde-4/dbus-1/system.d</includedir>
 +
</pre>
 +
to your: "/etc/dbus-1/system-local.conf" file.
 +
 
 +
If you don't have the: "system-local.conf", create it:
 +
 
 +
<nowiki>------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------</nowiki><pre>
 +
<!DOCTYPE busconfig PUBLIC
 +
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
 +
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
 +
<busconfig>
 +
 
 +
  <!-- Search for .conf files in /etc/kde-4/dbus-1/system.d -->
 +
  <includedir>/etc/kde-4/dbus-1/system.d</includedir>
 +
 
 +
</busconfig>
 +
</pre>
 +
<nowiki>------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------</nowiki>
 +
 
 +
==Policy files==
 +
 
 +
It is not possible to configure the location of the "*.policy" files.  therefore, you must build KDE-4 and: "polkit-kde-1" with:
  
==Work In Progress==
+
::-DKDE4_AUTH_POLICY_FILES_INSTALL_DIR:STRING=/usr/share/PolicyKit/policy
  
My apologies!  The documentation for D-Bus is inadequate, but I am working on this.  Till then, ask on the KDE or KDE-Linux mailing lists.
+
{for PolicyKit installed with a prefix of: "/usr"}

Latest revision as of 16:28, 19 July 2012


Contents

[edit] Configuring for Services

[edit] All KDE-4 versions

If you instlled KDE-4.x.y in: "/opt/KDE-4, the default location where D-Bus services will be installed is "/opt/KDE-4/share/dbus-1/services". D-Bus needs to find these services and use them.

You can either change the default to install them in:

/usr/share/dbus-1/services

by adding the CMake parameter:

-DDBUS_SERVICES_INSTALL_DIR:PATH=/usr/share/dbus-1/services
Or, you can add, for example:
  <servicedir>/opt/KDE-4/share/dbus-1/services</servicedir>

{use the actual path from your system}

to your: "/etc/dbus-1/session-local.conf" file.

NOTE: Although you can place multiple paths for services in the "/etc/dbus-1/session-local.conf" file, if the services have the same name, only the last one will be used. This may or may not cause problems if you have multiple versions of KDE on your system.

[edit] KDE >= 4.4 and TRUNK

The current KDE-4.4 BRANCH and TRUNK also install a: "system-services" directory. If you installed KDE-4.x.y in: "/opt/KDE-4, the D-Bus system services will be installed in "/opt/KDE-4/share/dbus-1/system-services". D-Bus needs to find these services and use them.

You can either change the default to install them in:

/usr/share/dbus-1/system-services

by adding the CMake parameter:

-DDBUS_SYSTEM_SERVICES_INSTALL_DIR:PATH=/usr/share/dbus-1/system-services
Or, you can add, for example:
  <servicedir>/opt/KDE-4/share/dbus-1/system-services</servicedir> 

{use the actual path from your system}

to your: "/etc/dbus-1/system-local.conf" file.

NOTE: Although you can place multiple paths for system services in the "/etc/dbus-1/system-local.conf" file, if the services have the same name, only the last one will be used. This may or may not cause problems if you have multiple versions of KDE on your system.

[edit] SYSCONF_INSTALL_DIR

You can use the parameter: "SYSCONF_INSTALL_DIR" when running CMake to place the configuration directories where you want them which would normally be: "/etc/kde-4" or if installing multiple versions: "/etc/kde-<version>"

For example, if you use:

-DSYSCONF_INSTALL_DIR=/etc/kde-4

Then you must configure D-Bus to find these directories.

First if one or both of the directories:

/etc/kde-<version>/dbus-1/session.d
/etc/kde-<version>/dbus-1/system.d

doesn't/don't exist, create it/them.

Then add:
  <includedir>/etc/kde-4/dbus-1/session.d</includedir>

to your: "/etc/dbus-1/session-local.conf" file.

If you don't have the: "session-local.conf", create it:

------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------
<!DOCTYPE busconfig PUBLIC
 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

  <!-- Search for .conf files in /etc/kde-4/dbus-1/session.d -->
  <includedir>/etc/kde-4/dbus-1/session.d</includedir>

</busconfig>

------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------

And add:
  <includedir>/etc/kde-4/dbus-1/system.d</includedir>

to your: "/etc/dbus-1/system-local.conf" file.

If you don't have the: "system-local.conf", create it:

------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------
<!DOCTYPE busconfig PUBLIC
 "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

  <!-- Search for .conf files in /etc/kde-4/dbus-1/system.d -->
  <includedir>/etc/kde-4/dbus-1/system.d</includedir>

</busconfig>

------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------8<------

[edit] Policy files

It is not possible to configure the location of the "*.policy" files. therefore, you must build KDE-4 and: "polkit-kde-1" with:

-DKDE4_AUTH_POLICY_FILES_INSTALL_DIR:STRING=/usr/share/PolicyKit/policy

{for PolicyKit installed with a prefix of: "/usr"}


This page was last modified on 19 July 2012, at 16:28. This page has been accessed 11,118 times. Content is available under Creative Commons License SA 3.0 as well as the GNU Free Documentation License 1.2.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal