ΕΛ/ΛΑΚ | creativecommons.gr | mycontent.ellak.gr |
freedom

Η πρόταση του KDE για κινητά τηλέφωνα με ελεύθερο λογισμικό (μέρος 2)

Συμπληρώνοντας το τεχνικό παζλ

Στο προηγούμενο άρθρο κάναμε μια εισαγωγή στο εγχείρημα του KDE για ένα πλήρες, ανοιχτό σύστημα λογισμικού για κινητές συσκευές, το Plasma Mobile .  Για να συνεχίσουμε από εκεί που είχαμε μείνει, αξίζει να θυμηθούμε πως τα βασικά στοιχεία που το απαρτίζουν σε τεχνικό επίπεδο είναι ένα κέλυφος (shell) για την εκτέλεση των εφαρμογών, οι ίδιες οι εφαρμογές και τέλος, ένα μικρό λειτουργικό σύστημα.

Για να ολοκληρωθεί η τεχνική περιγραφή ενός κινητού τηλεφώνου με ελεύθερο λογισμικό μας λείπουν όμως ένα δυο πράγματα ακόμα. Μας λείπει, σίγουρα, ένα λειτουργικό σύστημα. Και πάνω από όλα, χρειαζόμαστε την ίδια τη συσκευή.

Αυτή τη στιγμή που μιλάμε το Plasma Mobile υποστηρίζεται σε Nexus 5 και Nexus 5X, με την κοινότητα να ορίζει το επίπεδο λειτουργίας τους ως “Σταθερό”. Για να καταλάβουμε τι σημαίνει σταθερό, πρέπει να σημειώσουμε πως οι τιμές επιπέδου κατάστασης κυμαίνονται στο εξής φάσμα: Εξαιρετικό, Καλό, Σταθερό, Βασικές λειτουργίες, Πειραματικό, Πολύ-πειραματικό.

Η ισχύς εν τη ενώσει

Αυτό όμως δε σημαίνει πως πρέπει να είστε κάτοχος των παραπάνω συσκευών, για να δοκιμάσετε το Plasma Mobile. Μεταξύ άλλων, η mobile εκδοχή του χώρου εργασίας της κοινότητας του KDE μπορεί να εγκατασταθεί σε οποιαδήποτε κινητή συσκευή υποστηρίζει το Halium. Τι είναι όμως το Halium και γιατί αξίζει την προσοχή μας;

Η ιστορία του πρότζεκτ Halium ξεκινά με τη διακοπή της επένδυσης στο Ubuntu Touch από την Canonical, και την απόφαση της κοινότητας του UBPorts να συνεχίσει την ανάπτυξή του. Λίγο πιο μετά, διάφορες ομάδες προγραμματιστών με κοινό σημείο αναφοράς μια πολύ συγκεκριμένη τεχνολογία αποφασίζουν να μιλήσουν μεταξύ τους. Η τεχνολογία αυτή είναι το libhybris, μια διεπαφή που επιτρέπει σε διανομές GNU/Linux να αλληλεπιδρούν με τα binary blobs του Android. Φυσικά, μιλάμε για τα κομμάτια κλειστού κώδικα του Android.

Έτσι, οι ομάδες των AsteroidOS, LuneOS, Mer, Plasma Mobile, SailfishOS και Ubuntu Touch ξεκίνησαν καταγράφοντας σε ένα κοινόχρηστο έγγραφο τα σημεία που τους ένωναν τα οποία εκτός από το libhybris, ήταν ο πυρήνας του Linux αλλά και το επίπεδο αφαίρεσης υλικού (Hardware Abstraction Layer) του Android. Αποτέλεσμα ήταν η γέννηση του έργου Halium, που εκτός της ενοποίησης του τρόπου χρήσης του libhybris, στοχεύει στο να δημιουργήσει ένα πρότυπο για το ενδιάμεσο επίπεδο (middleware) που επικοινωνεί με το υλικό.

Επομένως, σε έναν χώρο που κατά πολλούς χαρακτηρίζεται από κατακερματισμό (fragmentation) σε πολλές μικρές κοινότητες οι οποίες δημιουργούν παρόμοια έργα, έχουμε ένα ελπιδοφόρο εγχείρημα συνεργασίας και συλλογικής δουλειάς. Καρπός αυτής της δουλειάς είναι το γεγονός πως το Plasma Mobile, εκτός από τα Nexus 5 και 5Χ, να είναι διαθέσιμο σε μια επιπλέον σειρά συσκευών. Ίσως όμως η πιο σημαντική συνεισφορά του εν λόγω έργου να αφορά στο ότι η ομάδα του KDE δεν ασχολείται πλέον καθόλου,με το porting σε συγκεκριμένες συσκευές. Οι προγραμματιστές του Halium έχουν αναλάβει εξ ολοκλήρου αυτή τη δουλειά. Χαρακτηριστικό παράδειγμα το Fairphone 2, που τρέχει Plasma Mobile χωρίς κανένας από την κοινότητα του KDE να έχει εμπλακεί στη διαδικασία του porting. Το μόνο που έγινε ήταν η τοποθέτηση του root file system πάνω σε μια έτοιμη υποδομή Halium. Και το κινητό απλά έπαιξε.

Τα πράγματα δεν είναι και τόσο εύκολα

Οι δυσκολίες όμως που συναντούν όσοι θέλουν να πραγματώσουν το όνειρο ενός κινητού με ελεύθερο λογισμικό είναι πολλές και σημαντικές· μια σειρά από εξωτερικούς  παράγοντες δυσχεραίνουν το έργο τους. Ένα πρώτο εμπόδιο αποτελούν οι πολλές διαφορετικές εκδόσεις πυρήνων Linux στις οποίες βασίζονται οι custom android εκδόσεις των κινητών συσκευών, που σε πολλές περιπτώσεις είναι παλιοί και αρκετά διαφοροποιημένοι σε σχέση με τον mainline πυρήνα. Συνεπώς, προκύπτουν ζητήματα ασφαλείας, καθώς κανείς δεν μπορεί να εξασφαλίσει το backporting των επιδιορθώσεων σφαλμάτων. Ακόμα, η ανάπτυξη γίνεται πιο δύσκολη αφού πραγματοποιείται πάνω σε μια πολύπλοκη υποδομή, χωρίς κοινή βάση. Επίσης, πολλοί κατασκευαστές κυκλοφορούν συστήματα με κλειδωμένο bootloader, αναγκάζοντας τους προγραμματιστές να τον υιοθετήσουν θέλοντας και μη, ενώ η -συχνά εξαναγκασμένη- κρυπτογράφηση των κατατμήσεων συστήματος και δεδομένων φορτώνει τους προγραμματιστές με τον επιπλέον φόρτο να την παρακάμψουν.

dimkard: Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

Μαζί με τις τεχνικές δυσκολίες και την πρόσθετη δουλειά που απαιτείται, που σε πολλές περιπτώσεις μεταφράζεται σε reverse engineering για να μπορέσει να συνυπάρξει ο ελεύθερος πυρήνας μαζί με μια σειρά τμημάτων λογισμικού κλειστού κώδικα, δεν θα πρεπε σε καμία περίπτωση να παραβλέψουμε και την ηθική πλευρά του ζητήματος. Πιο συγκεκριμένα, ακόμα κι αν καταστεί δυνατή, με τον ένα ή τον άλλο τρόπο, η επικοινωνία με τα κομμάτια του κλειστού κώδικα και η αρμονική τους συνύπαρξη σε τεχνικό επίπεδο, κανείς δεν μπορεί να μας διασφαλίσει ότι τα κλειστά αυτά κομμάτια δεν θα υπονομεύουν την ασφάλεια και την ιδιωτικότητά μας, παρακολουθώντας τις επικοινωνίες μας και χρησιμοποιώντας τα προσωπικά μας δεδομένα χωρίς τη συγκατάθεσή μας.

Το κομμάτι που λείπει

Παρόλα αυτά, όσο σημαντική κι αν είναι η συνεισφορά του πρότζεκτ Halium σε αυτή τη συγκυρία, απαλλάσσοντας τους προγραμματιστές του Plasma Mobile, του Sailfish, του UBports και των υπολοίπων κοινοτήτων από τη δουλειά του porting, αλλά και παρέχοντας μια υποδομή που καθιστά εφικτή την ανάπτυξη, τον έλεγχο και την επιδιόρθωση σφαλμάτων σε πραγματικές συσκευές, χρειαζόμαστε κάτι ακόμα. Για να κάνουμε ένα μεγάλο βήμα προς ένα ανοιχτό και ελεύθερο smartphone, εκτός από τον ενημερωμένο, ελεύθερο πυρήνα Linux κρίνεται αναγκαία και η απαλλαγή μας από τα binary blobs του Android.

Είναι θετικό και συνάμα ελπιδοφόρο ότι τον τελευταίο καιρό έχουν κάνει την εμφάνιση τους τα πρώτα εγχειρήματα που κινούνται προς αυτήν την κατεύθυνση. Βασισμένα στον πυρήνα του Linux, στο ελεύθερο λογισμικό και τα ανοιχτά πρότυπα, οι κοινότητες του postmarketOS και του Purism, προσφέρουν μια υποδομή που συμβαδίζει με τις αξίες του ελεύθερου λογισμικού αλλά και διευκολύνει έργα όπως το Plasma Mobile.

Για τα εγχειρήματα αυτά, για το πώς μπορούν να συνεισφέρουν στην επιτυχία του Plasma Mobile αλλά και στο τι μπορούμε να κάνουμε εμείς, ως χρήστες κινητών συσκευών αλλά και άνθρωποι της ευρύτερης κοινότητας του ελεύθερου λογισμικού θα μιλήσουμε στο επόμενο – και τελευταίο- άρθρο της σειράς.

Το άρθρο «Η πρόταση του KDE για κινητά τηλέφωνα με ελεύθερο λογισμικό (μέρος 2)» δημοσιεύτηκε στο opensource.ellak.gr από τον dimkard.

Leave a Comment