In seguito al presente articolo su http://pollycoke.net
lavorando su un progetto analogo mi sono sentito di intervenire con un post per esplicitare meglio il mio lavoro:
Buongiorno a tutti,
vorrei portare alla vostra attenzione un progetto tutto italiano che sto sviluppando con certosina pazienza che cerca di risolvere una buona parte dei problemi introdotti da tutti i sistemi in Bundle oggi esistenti.
Alcuni riferimenti diretti qui:
http://developer.infodomestic.com
https://sourceforge.net/project/showfiles.php?group_id=199098
Di seguito lo skeleton che sto usando per la costruizione del Bundle:
http://it.wikipedia.org/wiki/SpatialBundles
in particolare uno scambio di punti di vista con Alexander Larsson
http://lists.freedesktop.org/archives/xdg/2007-September/008812.html
In poche parole uno SpatialBundle è un Bundle semicompleto che vive in un file e necessita quasi esclusivamente per funzionare della shell POSIX (ora bash ma poi dash compatibile) e di xmessage per alcune interazioni.
Ad oggi lo sviluppo avviene tramite Ubuntu quindi sfrutto anche una componente di zenity e della system tray per migliorare l'esperienza di ritorno con l'utente, ma ho intenzione di rendermi indipendente anche da loro.
Alcune differenze dagli altri sistemi ormai noti come glik klik AppDir & co sono:
Vive in un file ed in quanto tale è manipolabile come un file.
Non necessita di istallazione 1 programma = 1 file = 1 click per eseguirlo (a meno del doppio clik)
Non necessita di infrastrutture esotiche tipo FUSE
Non necessita di accesso root
Non necessita di preinstallazione di programmi proxy tipo klik
Si comporta come un eseguibile al pari di glick ma con qualche riserva in quanto è un file shell con il payload incorporato (usa il codice di makeself/loki)
Lavora in ambiente di memoria protetto e non permette il code injection in quanto ogni esecuzione del bundle ha un controllo checksum e crc di consistenza.
Non usa file immegine cramfs o altro.
Non sporca il file fstab
La sua architettura interna è 100% ROX Application Directory (ho inserito anche il proxy standard AppDir) compatibile e presenta una compatibilità in via di miglioramento con le Application Bundle di OSX/NEXTSTEP.
In particolare se con il ROX filer si visita la cartella Programs che contiene la cache dello SpatialBundle è possibile vedere direttamente un'icona in stile ROX ed avviare dalla cache l'applicazione (operazione non necessaria).
L'esecuzione del Bundle produce un menu contestuale presente nella tray per il controllo primordiale del Bundle stesso compresa la rimozione della cache (che viene comunque rimossa ad ogni riavvio del computer).
E' progettato per venire incontro alle esigenze della "Nonna".
Soffre di alcune latenze al primo avvio che sono funzione dell'espansione del file nella cache.
Sto progettando un metodo statistico che cone le dovute premesse conservative migra la cache da disco a ram pura per velocizzare l'avvio di applicazioni pesanti (ad esempio OpenOffice).
Vorrebbe essere multipiattaforma attaversando GNU/Linux - BSD - OSX - Windows (ovvero li dove è possibile installare una shell standard POSIX o al limite bash).