Το GPLv2 και η παράβασή του από την Xiaomi

click fraud protection

Μάθετε πώς η Xiaomi παραβιάζει τους όρους της GPL και πώς οι αποφάσεις της να το πράξουν επηρεάζουν την κοινότητα Android και το μέλλον του λειτουργικού συστήματος.

Η Xiaomi ανακοίνωσε το θεαματικά προδιαγραφόμενο Mi Note Pro, το οποίο διαθέτει το τελευταία στους επεξεργαστές Snapdragon της Qualcomm μαζί με μια μεγάλη οθόνη 2K και 4 GB μνήμης RAM σε εξωφρενική τιμή. Τούτου λεχθέντος, υπάρχει κάτι που δεν είναι τόσο καλό στις προσφορές της Xiaomi που απασχολεί πολλούς προγραμματιστές, ειδικά πολλούς βρέθηκαν εδώ στο XDA: Οι επαναλαμβανόμενες παραβιάσεις της άδειας GPLv2 από την Xiaomi για τον πυρήνα Linux που είναι το Android (και συνεπώς οι συσκευές της Xiaomi) χτισμένο σε.

Η Xiaomi είναι δεν είναι η μόνη εταιρεία που έχει παραβιάσει την GPL Ωστόσο, και στο παρελθόν πολλοί OEM όπως η Rockchip και η Micromax το έχουν κάνει επίσης, με πολλούς να συνεχίζουν τη συμπεριφορά τους ως παράνομη μέχρι σήμερα. Εμείς μίλησε λίγο για αυτό στο XDA, και γιατί να μην το κάνουμε; Το XDA είναι κατά κύριο λόγο μια κοινότητα προγραμματιστών και είμαστε γνωστοί για το ότι παρέχουμε σε χιλιάδες χρήστες με δύναμη τροποποιήσεις λογισμικού που εμπίπτουν στην GPL, αλλά η κοινότητά μας ακολουθεί

Η πολιτική μας για την GPL και επομένως δεν βλέπουμε πολλές σκιερές οικειοποιήσεις εδώ.

Λοιπόν, τι ακριβώς κάνει λάθος η Xiaomi; Και είναι παράνομο, ανήθικο ή απλά ανάρμοστο; Δεδομένου ότι μπορεί να υπάρχουν ορισμένοι αναγνώστες, χρήστες ή ακόμα και προγραμματιστές που δεν είναι ενημερωμένοι για αυτά τα θέματα, ας ρίξουμε μια γρήγορη ματιά στο τι σημαίνει η GPL.

Η Γενική Δημόσια Άδεια GNU (GPL) είναι μια άδεια ελεύθερου λογισμικού που εγγυάται προγραμματιστές, OEM, χρήστες ή οποιοδήποτε είδος οργανισμός που συγχωνεύει τα τρία για να έχει απεριόριστη πρόσβαση στα θεμέλια και τη λειτουργικότητα του λογισμικού που πέφτει κάτω από αυτό. Μπορούν να χρησιμοποιήσουν, να μελετήσουν, να μοιραστούν και να αντιγράψουν ή να τροποποιήσουν το εν λόγω λογισμικό, καθώς είναι ελεύθερο λογισμικό. Οι προγραμματιστές GNU του Έργου GNU ορίζουν το ελεύθερο λογισμικό ως εξής:

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

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

Το Έργο GNU έχει μια πολύ ευγενική άποψη για το λογισμικό και εκστρατεύει επειδή πιστεύει ότι κάθε χρήστης και δημιουργός αξίζει αυτή την ελευθερία. Όχι μόνο επιτρέπει στο κοινό να ελέγχει το πρόγραμμα και τι κάνει, αλλά και ιδιόκτητο λογισμικό κάνει το αντίθετο ελέγχοντας τον χρήστη μέσω του ελέγχου του προγράμματος από τον προγραμματιστή, κάτι που θα είχε ως αποτέλεσμα σε όργανο άδικης εξουσίας. Με τις βασικές ελευθερίες του ελεύθερου λογισμικού (που εκτελούν το πρόγραμμα όπως θέλετε, μελετούν πώς λειτουργεί, το αναδιανέμουν όταν θέλετε και διανέμουν τις δικές σας τροποποιήσεις), το λογισμικό η μηχανική μοιάζει περισσότερο με μια καθαρή επιστήμη που επιτρέπει σε κάποιον να έχει έγγραφα αντί για διπλώματα ευρεσιτεχνίας, επιτρέποντας σε κάθε προγραμματιστή να κορυφώσει τη θεωρία κώδικα κάποιου, τις μεθοδολογίες του και τους προτιμώμενο στυλ προγραμματισμού για να βελτιώσει τη δική του κατανόηση για το πώς λειτουργεί και να συγκεντρώσει γνώσεις για την προσωπική του ανάπτυξη. Επιπλέον, του επιτρέπει να αρπάξει αυτό το λογισμικό και να το τροποποιήσει.

Η λέξη «ιδιόκτητο» που χρησιμοποιείται για να περιγράψει το μη ελεύθερο λογισμικό δεν υπονοεί απλώς ότι οι εσωτερικές λειτουργίες του κώδικα είναι νομικά ακατάλληλες για άλλα μέρη. υπονοεί επίσης ότι ο κάτοχος του λογισμικού που χρησιμοποιείτε (είτε είναι μια εφαρμογή που κατεβάζετε είτε ένα λειτουργικό σύστημα που εκτελείτε) είναι ο δημιουργός και, επομένως, ο κάτοχος αποφασίζει εάν μπορείτε να το αντιγράψετε ή να το μοιραστείτε. Τέτοια μη ελεύθερα εμπόδια οδηγούν σε λιγότερα άτομα που χρησιμοποιούν το πρόγραμμα και μαθαίνουν από αυτό, καθώς και στην αδυναμία των χρηστών να τροποποιήσουν, να προσαρμόσουν ή να διορθώσουν το πρόγραμμα. Αφήνοντας κατά μέρος τους περισσότερους ηθικούς λόγους σχετικά με την κοινωνική συνοχή και τις ιδεολογίες που την αποκρύπτουν, αυτή η υλική βλάβη έχει αξιοσημείωτο αντίκτυπο στην το μέλλον της επιστήμης των υπολογιστών και των καταναλωτών, ειδικά δεδομένου ότι η επιστήμη των υπολογιστών και τα υποπροϊόντα της είναι συνυφασμένα με τη ζωή των χρηστών - και το μέλλον τους - περισσότερο από ποτέ σήμερα.

Δεν υπάρχει πιάσιμο. Υπάρχουν όμως πράγματα που ενοχλούν τους OEM. Τα άτομα που επιχειρούν να τροποποιήσουν το ελεύθερο λογισμικό με άδεια χρήσης σύμφωνα με την GPL πρέπει να συμμορφώνονται με ορισμένους κανόνες.

Πρώτα απ 'όλα, οι όροι πρέπει να είναι διαθέσιμοι σε οποιονδήποτε λαμβάνει αντίγραφο εργασίας με άδεια GPL και σε οποιονδήποτε ο οποίος συμμορφώνεται με τους όρους της GPL έχει άδεια να μοιράζεται, να μελετά και να τροποποιεί την εργασία καθώς και αυτήν παράγωγα. Σε αντίθεση με άλλες άδειες, η GPL κάνει επιτρέπουν στο ελεύθερο λογισμικό (ελεύθερης ομιλίας) να μην είναι ελεύθερο (δωρεάν μπύρα), σε αντίθεση με άλλες άδειες που απαγορεύουν ρητά την εμπορική διανομή.

Ένας κάτοχος άδειας ή διανομέας GPL δεν μπορεί να επιβάλει περαιτέρω περιορισμούς στα δικαιώματα που παρέχονται από την GPL - απαγορευτική τη διανομή λογισμικού GPL χωρίς τη ρητή αποκάλυψη της φύσης του ή υπό μη αποκάλυψη συμβάσεις. Όλα τα διπλώματα ευρεσιτεχνίας που χρησιμοποιούνται στο λογισμικό GPL είναι διαθέσιμα για απεριόριστη χρήση για εκείνα που συμμορφώνονται με τους όρους της GPL.

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

Το Android έχει άδεια σύμφωνα με Apache 2.0 άδεια και όχι GPL. Το Apache είναι μια πιο «ανεκτική» άδεια και δεν διαθέτει τις ίδιες απαιτήσεις με την GPL. Δεν απαιτεί από εσάς να διανείμετε τον πηγαίο κώδικα μιας καλυπτόμενης εργασίας και το παράγωγο έργο δεν φέρει απαραίτητα την άδεια Apache, όπως η πιο ιογενής GPL, αρκεί να συμπεριλάβετε τους άδεια.

Έτσι, ενώ η GPL προωθεί την ανάπτυξη του ελεύθερου λογισμικού, οι Apache είναι πιο ελευθεριακοί με την προσέγγισή τους στον τρόπο με τον οποίο αναπτύσσονται οι όροι των μελλοντικών παραγώγων. Και οι OEM μπορούν, για παράδειγμα, να πάρουν λογισμικό με άδεια χρήσης Apache, να προσθέσουν τα skins τους, το bloat και το what-have-you, και στη συνέχεια να το κλείσουν και να κρατήσουν κλειστή την πηγή. Αυτό που κάνει η Xiaomi και πολλοί κατασκευαστές OEM. Αλλά ο πυρήνας του Linux στον οποίο βασίζεται το Android είναι δεν με άδεια χρήσης Apache, για Linux είναι GPLv2 λογισμικό και λόγω αυτής της «ιογενούς» ή «μολυσματικής» ιδιότητας του GPLv2, του πυρήνα του Android που βασίζεται σε Linux που χρησιμοποιεί τον κώδικα GPLv2 του Linux έχει να παραμείνει GPLv2.

Η Xiaomi δεν κυκλοφόρησε τους πηγαίους κωδικούς πυρήνα του κλάδου Android της. Δεδομένου ότι ο πυρήνας τους βασίζεται στον πυρήνα του Android, ο οποίος βασίζεται στον πυρήνα του Linux, που είναι το GPLv2, οι όροι του GPLv2 μεταφέρονται μέχρι τη Xiaomi. Αν θα είχαν χρησιμοποιήσει τον δικό τους πυρήνα, τότε θα είχαν κάθε δικαίωμα να μην διανείμουν την πηγή τους και δεν θα είχαν καμία υποχρέωση να το κάνουν. Αλλά τροποποιώντας και διανέμοντας λογισμικό GPL, πρέπει να συμμορφώνονται με τους όρους της GPL, σε αυτήν την περίπτωση GPLv2.

Οι χρήστες και οι προγραμματιστές δικαιούνται πρόσβαση στους πηγαίους κώδικες του πυρήνα και για το XDA η έλλειψη ενός τέτοιου σημαντικό μέρος της τροποποιημένης πηγής πυρήνα Android της Xiaomi σημαίνει ότι οι μικροαλλαγές και οι αλλαγές σε συσκευές Xiaomi δέχεται ένα χτύπημα. Και για μια κοινότητα που είναι αφοσιωμένη στην εξερεύνηση του κόσμου του Android και τη μετατροπή του στο καλύτερο που μπορεί να είναι, να μην τροποποιεί το λογισμικό των τηλεφώνων από το ο ταχύτερα αναπτυσσόμενος ΚΑΕ στον κόσμο είναι σημαντικό θέμα.

Υπήρξαν αιτήματα για να συμμορφωθεί η Xiaomi με το GPLv2 και να δημοσιοποιηθούν οι πηγές τους σε εύθετο χρόνο, αλλά μέχρι στιγμής έχουν καταφέρει μόνο να μας υποσχέσεις. Και αυτές οι υποσχέσεις δεν έχουν ακόμη τηρηθεί. Ο Hugo Barra, αντιπρόεδρος της Xiaomi, υποσχέθηκε τον Οκτώβριο του 2014 ότι θα βλέπαμε πηγές πυρήνα για το Mi3 στο “τις επόμενες εβδομάδες”, αλλά αυτό δεν συνέβη ποτέ. Επιπλέον, τον Δεκέμβριο του περασμένου έτους είπαν ότι οι πηγές τους θα δημοσιοποιηθούν όχι το 2014, αλλά το 2015.

Γιατί η Xiaomi δεν δημοσίευσε τις πηγές για τη συσκευή της Mi3 σε εύθετο χρόνο; Ο Hugo Barra είπε τον Δεκέμβριο ότι δεν το έκαναν για να αποτρέψουν μια διαρροή πληροφοριών στις επερχόμενες συσκευές τους. Ο ίδιος αναφέρει:

«Ο πηγαίος κώδικας του πυρήνα για αυτές τις συσκευές περιέχει μια σημαντική ποσότητα πηγαίου κώδικα που θα χρησιμοποιηθεί σε δύο επερχόμενα μοντέλα. Εάν απελευθερώσουμε τον κώδικα του πυρήνα στην τρέχουσα κατάστασή του, θα αποκαλύψουμε περισσότερα από όσα θα θέλαμε για μελλοντικές συσκευές. Θα το αλλάξουμε αυτό στο μέλλον, αλλά αυτή τη στιγμή είναι ένας περιορισμός με τον οποίο πρέπει να ζήσουμε. Ελπίζουμε να καταλάβετε αυτή τη θέση και λυπούμαστε πολύ για την απογοήτευση που μπορεί να προκαλέσαμε!».

Αυτό δικαιολογεί τις πράξεις τους; Φυσικά και όχι. Είναι ένας δισεκατομμυριούχος κατασκευαστής σε μια βιομηχανία δισεκατομμυριούχων και γνώριζαν πολύ καλά ότι ο κώδικάς τους λειτουργούσε σύμφωνα με τους όρους του GPLv2 και ότι έπρεπε να συμμορφωθούν με αυτόν. Το 2013 βγήκε ανακοίνωση επιδεικνύοντας περήφανα τον ανοιχτό κώδικα του Xiaomi Kernel. Έκαναν πολλά σχετικά με το ότι οι προγραμματιστές μπορούν να προσαρμόσουν τις ROM για smartphone της Xiaomi και οι απολογητές της ανέφεραν ότι η Xiaomi είναι «όλα σχετικά με την κοινή χρήση κώδικα ανοιχτού κώδικα». Fast forward ένα χρόνο και οι πηγαίοι κώδικές τους καθυστερούν για αδικαιολόγητους λόγους, όταν οι πηγές πυρήνα τους θα έπρεπε να είχαν διανεμηθεί σε καταναλωτές από την αρχή, χωρίς να περιμένουν τους καταναλωτές να τους κυνηγήσουν με πιρούνια και χωρίς να τους φτύνουν στα μούτρα με παράλογα καθυστερήσεις. Και αυτό δεν λαμβάνει υπόψη καν τη δουλειά αυτών που έχουν προηγηθεί, και την παροιμιώδη χάλια Η Xiaomi (και κάθε άλλος OEM που δεν ακολουθεί το GPLv2) τους αναλαμβάνει κάθε φορά που κυκλοφορούν ένα νέο συσκευή.

Θέλω να προσδιορίσω κάτι τελευταίο για όσους αναγνώστες δεν είναι εξοικειωμένοι με τη διάκριση: Η GPL είναι άδεια και όχι σύμβαση. Ορισμένες δικαιοδοσίες βλέπουν βασικές διακρίσεις μεταξύ αυτών των δύο, καθώς οι συμβάσεις είναι εκτελεστές από δίκαιο των συμβάσεων και οι άδειες υπάγονται πνευματική ιδιοκτησία. Επομένως, η παραβίαση του όρου μιας άδειας εξακολουθεί να είναι δικαστική. Οι διανομείς που δεν αποδέχονται τους όρους και τις προϋποθέσεις της GPL δεν μπορούν να αντιγράψουν και να διανείμουν λογισμικό GPL βάσει του νόμου. Εφόσον επέλεξαν να διανείμουν το λογισμικό, είναι ένοχοι παράβασης στα μάτια του Νόμου.

Είτε κάποιος διαφωνεί με το όραμα του GNU για δημοκρατικό, ανοιχτό και χωρίς αποκλεισμούς ελεύθερο λογισμικό, είτε όχι, δεν λαμβάνει τις αποφάσεις της Xiaomi και την επαναλαμβανόμενη παραβίαση των όρων που αγόρασαν λανθασμένος. Επωφελούνται από το Android με ταχύτητα που δεν έχει δει κανένας αντίπαλος και δεν ακολουθούν τους κανόνες που έκαναν το Android αυτό που είναι σήμερα, τους κανόνες που επέτρεψαν στους OEM και σε μεμονωμένους προγραμματιστές να υποκινήσουν την ανάπτυξη και την πρόοδο εντός του οικοσυστήματος του λειτουργικού συστήματος. Οι κανόνες που εκατομμύρια έχουν συμμορφωθεί με σεβασμό για να δημιουργήσουν τη δική τους επιτυχημένη καριέρα, τις δικές τους επιτυχημένες εταιρείες, και το αγαπημένο μας χόμπι στο XDA.

Από πρακτική άποψη, το να το κάνεις αυτό σε ένα δικαστήριο δεν είναι το πιο εύκολο πράγμα. Η κυβέρνηση της Κίνας γνωριζει της κλοπής διπλωμάτων ευρεσιτεχνίας, της πειρατείας και των παραβιάσεων πνευματικών δικαιωμάτων κάθε είδους και ειδών που συμβαίνουν στη χώρα, αλλά δεν είναι διατεθειμένος να κάνει οτιδήποτε γι' αυτό. Πολλοί αναλυτές και ακαδημαϊκοί το κατηγορούν αυτό λανθάνουσα λογοκλοπή που η Κίνα έχει δει εδώ και χρόνια, ορισμένοι προτείνουν ότι θα μπορούσε να είναι ένα αναπόσπαστο μέρος της κομφουκιανής φιλοσοφίας στην οποία βασίζεται σε μεγάλο βαθμό η κινεζική κουλτούρα. Αλλά είτε έχουν δίκιο οι ακαδημαϊκοί, οι αναλυτές ή οι απογοητευμένοι επιχειρηματίες είτε όχι, το πρόβλημα της παραβίασης των πνευματικών δικαιωμάτων στην Κίνα βλέπει όλο το φάσμα των προϊόντων και το Android δεν διαφέρει.

Η Xiaomi βρίσκεται στο επίκεντρο ως ένας από τους σημαντικότερους κατασκευαστές OEM του σήμερα, με αναγνωρισιμότητα επωνυμίας που μεγαλώνει μέρα με τη μέρα και πιθανή εισβολή στην αμερικανική αγορά σύντομα. Αν και οι παραβάσεις τους δεν σημαίνουν απαραίτητα πολλά για τον απλό καταναλωτή Android, έχει σοβαρό αντίκτυπο όχι μόνο στους προγραμματιστές, αλλά στο οικοσύστημα στο σύνολό του. Όπως προτείνει το GNU Project, αυτή η συγκεκριμένη πρακτική, ειδικά στη συγκεκριμένη περίπτωση, βλάπτει την πρόοδο του αγαπημένου μας λογισμικού.

Και αυτό είναι επίσης θέμα σεβασμού, και ταπεινότητας. Σας αφήνω με ένα απόσπασμα ενός οραματιστή επαναστάτη που αναγνώρισε ότι ο αντίκτυπός του στον κόσμο ήταν τόσο μεγάλος χάρη στο προηγούμενο έργο όσων πριν από αυτόν. Ας ελπίσουμε ότι η Xiaomi θα υιοθετήσει αυτή τη φιλοσοφία μια μέρα, θα συμμορφωθεί με τους όρους και θα βοηθήσει το Android να ευημερήσει όσο μόνο αυτό μπορεί.