Pardus Desktop Services: o in arte “Universal Apps”
Con il termine di “Universal Apps” si intendono delle applicazioni KDE che siano in grado di essere eseguite indipendentemente dal versione di KDE in esecuzione sul proprio PC. Da nn confondere con quelle del Mondo di OS X che invece sono indipendenti dal tipo di processore powerpc o intel (ma questa è un altra storia……..)
Generalmente le applicazioni KDE 4.x dipendono dalle librerie kdelibs4, cosa che rende impossibile la loro esecuzione in KDE 3.x che fa use delle kdelibs3.
I ragazzi del Team di Pardus sono alle prese con una versione del nostro O.S. dedicata ad un utilizzo di tipo Corporate dove oltre ad avere tool specifici, è necessario che faccia della stabilità il proprio cavallo di battaglia.
Per questo motivo è stato deciso di adottare come DE di riferimento KDE 3.5.10.
Dato che l’attuale linea di sviluppo di Pardus è invece basata su KDE4, si è presentato un bel problema nell’ottica di voler ottimizzare il codice prodotto e ovviamente i necessari sforzi.
Scartata sia l’idea di “riscrivere” tutto per KDE 3.5.10 e sia quella di utilizzare comunque le kdelibs4, è stato scelto di esplorare la possibilità di realizzare una sorta di “Universal Apps” in grado di essere eseguite indipendentemente dal desktop utilizzato, ovvero con KDE4 si sfruttano le librerie kdelibs4 ma con altre DE tipo KDE 3.5.10 o XFCE si sfruttano solo le librerie QT.
Il “miracolo” prende il nome di Pardus Desktop Services che consiste in un wrapper scritto in python che intercetta e adatta le chiamate delle applicazioni relative alle API delle kdelibs4 verso le corrispondenti offerte dalle librerie QT.
Nell’immagine seguente vediamo l’applicazione package-manager avviata sia con KDE 4:
e con KDE3.5.x:
Nel primo casosi fa uso dell’API KUniqueApplication di kdelibs4 mentre nel secondo caso dell’API QUniqueApplication fornita dalle Pardus Desktop Services.
Stessa Applicazione, stesse caratteristiche, unico codice……….






In Progress
BlogCatalog
Il Bloggatore
Technorati