Utente:Michele palazzoni

Opensuse desktop su Android con Raspberry Pi Zero

Questo è uno dei test sulle performance di pisusedroid: ho chiamato il progetto in questo modo perchè si tratta di un desktop Opensuse Tumbleweed su Android che con l'aiuto di Raspberry Pi Zero come thin client offre una confortevole esperienza desktop senza intaccare di molto le prestazioni del cellulare e il suo uso.

La sfida piu importante di questo progetto sono le prestazioni, ho volutamente usato uno smartphone basato su Snapdragon 820, quindi non un soc di ultima generazione e il piu piccolo dei Raspberry, il Pi Zero, per essere certo dell'usabilità del desktop Opensuse: il problema principale infatti è che qui stiamo parlando di prestazioni veramente ridotte e dobbiamo ridurre al minimo l'impatto dei software usati sia dal lato smartphone ma ancora di piu dal lato Raspberry. La stessa immagine su hardware Raspberry Pi 3 offre prestazioni notevolmente migliori specialmente dal lato video ma per l'uso da ufficio e la massima portabilità va bene anche il pi zero.

Sullo smartphone ho installato LineageOS per avere l'accesso root, le performance migliori e la migliore compatibilita con l'ambiente Opensuse ma potete usare qualsiasi app che permette di fare girare il nostro amato desktop Opensuse su Android come Userland o altri.

Se decidete per LineageOS rooted installate manualmente busybox in /system/xbin, create la directory /data/local/suse che ospiterà la chroot, scaricate e decomprimete l'immagine di opensuse Tumbleweed arm64 del desktop Xfce4 dal sito ufficiale: potete fare tutto con lo smartphone usando il terminale e busybox (wget, unxz, tar), da root basterà eseguire il chroot per iniziare. Ricordatevi di aggiungere al nuovo utente Opensuse che creerete i gruppi standard Android per accedere alle risorse di sistema altrimenti non riuscirete a fare molto, neanche a connettervi ad internet...potete trovare gli id dei gruppi android nel terminale android col comando id di busybox. A breve inseriro su https://github.com/palazzoni/pisusedroid anche gli script per le modifiche alla rootfs di Opensuse Tumbleweed oltre che quelli per LineageOS.

Sul Raspberry Pi per ottenere le performance migliori ho usato il sistema operativo DietPi - ottimizzazione del raspbian - adb, TigerVNC e Pulseaudio: ho effettuato un'infinità di test per ottenenere performance decenti con il pi zero, è stata una vera sfida considerando la pochissima potenza a disposizione e dai test è venuto fuori che adb offre la latenza e la velocita migliori per il collegamento con cavo usb (ma direi anche via wifi), TigerVNC è notevolmente piu veloce delle altre soluzioni di desktop remoto grazie alla accellerazione hardware arm NEON (le soluzioni di streaming non sono usabili su alte risoluzioni e testo piccolo) e Pulseaudio impostato per il minor consumo di banda e CPU offre buone prestazioni.

Al pi zero sono state apportate diverse modifiche per ottenenere le prestazioni migliori quindi vi consiglio di scaricare l'immagine gia pronta da https://github.com/palazzoni/pisusedroid: una volta collegato il pi al monitor, mouse e tastiera dovrete lanciare l'eseguibile adbvnc per interagire col desktop opensuse (ho in progetto di lanciarlo automaticamente al collegamento del cellulare via udev :-).

Per collegare via usb con successo pisusedroid basterà che abbiate adb abilitato sul telefono e che abbiate lanciato il desktop opensuse con display vnc :1 (porta 5901) e pulseaudio configurato per collegarsi al server sulla porta 4712.

Non nego che con le prestazioni degli ultimi soc mobili non è piu un miraggio l'usabilità di Opensuse su smartphone come soluzione desktop, una collaborazione con LineageOS per integrare al meglio Opensuse integrata ad una scheda arm performante potrebbe essere una ottima alternativa al piu blasonato Dex....Se volete collaborare al progetto sentitevi liberi di contattarmi via mail.