Changes

2,623 bytes added ,  14:16, 25 November 2013
no edit summary
Line 11: Line 11:  
'''D-Bus''' è un software per lo scambio di messaggi e la comunicazione tra processi. D-Bus opera attraverso un'interfaccia comune e consente di gestire sia programmi e processi utente che processi di sistema, di controllo dello hardware e i servizi forniti dai driver. Il tutto mediante un protocollo binario di passaggio dati molto veloce e caratterizzato da una bassa latenza che lo rendono particolarmente performante e poco oneroso in termini di uso del processore. Inizialmente sviluppato per Linux, D-Bus è mantenuto dal [http://www.freedesktop.org progetto freedesktop] e le sue specifiche sono aperte a tutti. D-Bus è stato adottato da molti moderni desktop manager come [http://www.gnome.org GNOME] e [http://www.kde.org] ove ha sostituito la precedente interfaccia '''DCOP''' tra processi.
 
'''D-Bus''' è un software per lo scambio di messaggi e la comunicazione tra processi. D-Bus opera attraverso un'interfaccia comune e consente di gestire sia programmi e processi utente che processi di sistema, di controllo dello hardware e i servizi forniti dai driver. Il tutto mediante un protocollo binario di passaggio dati molto veloce e caratterizzato da una bassa latenza che lo rendono particolarmente performante e poco oneroso in termini di uso del processore. Inizialmente sviluppato per Linux, D-Bus è mantenuto dal [http://www.freedesktop.org progetto freedesktop] e le sue specifiche sono aperte a tutti. D-Bus è stato adottato da molti moderni desktop manager come [http://www.gnome.org GNOME] e [http://www.kde.org] ove ha sostituito la precedente interfaccia '''DCOP''' tra processi.
   −
D-Bus fornisce sia un demone di sistema, utile per rilevare nuovo hardware o alterazioni allo stato di quello già rilevato, ed un demone specifico per ogni utente, utilizzato da applicazioni e programmi.
+
D-Bus '''fornisce sia un demone di sistema''', utile per rilevare nuovo hardware o alterazioni allo stato di quello già riconosciuto dal sistema operativo, che '''un demone dedicato ad ogni utente''', utilizzato da applicazioni e programmi. '''TDE''' usa D-Bus per due funzioni:
 +
* Far comunicare diverse applicazioni del desktop tra loro.
 +
* Far comunicare l'ambiente desktop con il sistema operativo.
 +
Il pacchetto '''dbus-1-tqt''' contiene i collegamenti di D-Bus alle librerie QT4 ed è pertanto un prerequisito al funzionamento dell'ambiente desktop e dei servizi da esso forniti.
   −
D-Bus supplies both a system daemon (for events such as "new hardware device added" or "printer queue changed") and a per-user-login-session daemon (for general IPC needs among user applications). Also, the message bus is built on top of a general one-to-one message passing framework, which can be used by any two apps to communicate directly (without going through the message bus daemon). Currently the communicating applications are on one computer, or through unencrypted TCP/IP suitable for use behind a firewall with shared NFS home directories. (Help wanted with better remote transports - the transport mechanism is well-abstracted and extensible.)
+
=== D-Bus-1-Tqt su Slackware ===
    +
Il software dbus-1-tqt non sembra avere una corrispondenza in Slackware 13.0: si tratta di '''codice specifico per TDE''' per cui non esiste uno script slackbuild da utilizzare come traccia. La stesura dello script di compilazione è basata sulla [http://www.trinitydesktop.org/wiki/bin/view/Developers/HowToBuild documentazione di TDE] e sul build kit ormai non più supportato. La procedura di configurazione e compilazione del pacchetto dbus-1-tqt è stata '''convertita a [http://www.cmake.org cmake]''' rendendo l'insieme dei programmi '''autotools''' superfluo. Come per gli altri pacchetti di TDE è stata configurata '''/opt/trinity''' come directory principale del pacchetto in modo da garantire la coesistenza con KDE 4. Non sono stati impostati parametri particolari per cmake, ma è stato fatto ricorso ad una chiamata standard. Seguono alcuni commenti al codice contenuto nello script di compilazione.
    +
'''Deve essere pulita la cache di cmake''':
 +
  # Clean cmake cache
 +
  find . -name CMakeCache.txt -exec rm {} \;
 +
In seguito è stata '''creata una directory''' ove verranno compilati i sorgenti e salvati i binari prodotti. Come per i pacchetti precedentemente compilati ''la directory è stata battezzata '''build''' altrimenti cmake non la avrebbe riconosciuta'':
 +
  # Create a directory where to build source (cmake wants the name to be build).
 +
  cd ${TMP}/tmp-${PRGNAM}
 +
  mkdir build
 +
  cd build
 +
Sono stati '''impostati esplicitamente i percorsi delle librerie Qt''' affinchè le stesse fossero trovate dagli script durante la compilazione:
 +
  # Add temporary paths to handle new libraries during build
 +
  export QTDIR=/opt/trinity
 +
  export PATH=/opt/trinity/bin:/usr/bin:$PATH
 +
  export LIBDIR=/usr/lib${LIBDIRSUFFIX}
 +
  export LD_LIBRARY_PATH=/usr/lib${LIBDIRSUFFIX}:/opt/trinity/lib${LIBDIRSUFFIX}
 +
  export PKG_CONFIG_PATH=:/usr/lib${LIBDIRSUFFIX}/pkgconfig:/opt/trinity/lib${LIBDIRSUFFIX}/pkgconfig:$PKG_CONFIG_PATH
 +
Lo script lancia infine il comando cmake con le opzioni standard:
 +
  cmake ${TMP}/tmp-${PRGNAM}/${PRGNAM}-${VERSION} \
 +
      -DCMAKE_C_FLAGS:STRING="${SLKCFLAGS}" \
 +
      -DCMAKE_CXX_FLAGS:STRING="${SLKCFLAGS}" \
 +
      -DCMAKE_INSTALL_PREFIX=${PREFIX} \
 +
      -DSYSCONF_INSTALL_DIR="/etc/trinity" \
 +
      -DLIB_SUFFIX=${LIBDIRSUFFIX} \
 +
      -DQT_VERSION=3 \
 +
      -DQT_INCLUDE_DIR=/opt/trinity/include \
 +
      2>&1 | tee ${OUTPUT}/${PRGNAM}_configure.log
 +
A configurazione ultimata, lo script esegue il comando '''make''' e procede con le operazioni di pacchettizzazione.
    +
Una versione completa dello script può essere scaricata dal seguente [http://www.giustetti.net/resource/slackbuild/tde/35132/dbus-1-tqt.tar.gz link]. Il pacchetto ottenuto potrà essere installato facendo ricorso al comando '''installpkg''' come è consuetudine in Slackware Linux.