4. Η γενική δημόσια άδεια GNU (General Public License)

Μέχρι στιγμής, η γενική δημόσια άδεια GNU (GPL) είναι η πιο κυρίαρχη άδεια του λογισμικού Ανοικτού Κώδικα. Από όλο το λογισμικό στο οποίο έχει εφαρμοστεί, κανένα δεν είναι περισσότερο γνωστό από τον πυρήνα του Linux. Στην πραγματικότητα, η GPL έχει εφαρμοστεί σε μια πλειάδα τμημάτων λογισμικού που συμπεριλαμβάνονται στις γνωστότερες Linux διανομές, όπως το Red Hat Linux. Η ευρεία αποδοχή της GPL μεταξύ της κοινότητας Ανοικτού Κώδικα προέρχεται από το γεγονός ότι ανήκει σε εκείνη την κατηγορία αδειών Ανοικτού Κώδικα που υποχρεώνουν όσους επιθυμούν να αναδιανείμουν τέτοιο λογισμικό, είτε στην αρχική είτε σε τροποποιημένη (παράγωγο) μορφή, να το πράξουν υπό τους ίδιους όρους της συμφωνίας άδειας με την οποία το έλαβαν αρχικά (τέτοιες άδειες ονομάζουμε Προστατευτικές άδειες). Δηλαδή, έχοντας χορηγηθεί το δικαίωμα στη χρήση, τροποποίηση και αναδιανομή του λογισμικού κάτω από τη GPL, η τελευταία σας υποχρεώνει να επεκτείνετε τα ίδια προνόμια στο πλαίσιο των ίδιων όρων σε όσους λαμβάνουν το λογισμικό μετά από σας. Αυτό είναι το κοινό νήμα που επικρατεί στις Προστατευτικές άδειες και για αυτόν το λόγο θα επικεντρωθούμε στη GPL ως πρότυπο των Προστατευτικών αδειών.

Η GPL παρέχει συγκεκριμένα δικαιώματα σε όποιον λαμβάνει μια άδεια για λογισμικό υπό την GPL. Συγχρόνως, επιβάλλει πολύ λίγες υποχρεώσεις εκτός από εκείνους που επιθυμούν να αναδιανείμουν το λογισμικό: Αυτά τα δικαιώματα και οι υποχρεώσεις είναι:

  1. Το δικαίωμα να αντιγράψετε και να αναδιανείμετε εφ' όσον περιλαμβάνετε μια ειδοποίηση περί των δικαιωμάτων πνευματικής ιδιοκτησίας και μια αποκήρυξη των εγγυήσεων. Μπορείτε να χρεώσετε για το κόστος της διανομής και να προσφέρετε εγγύηση έναντι αμοιβής.

  2. Το δικαίωμα να δημιουργηθούν παράγωγες εργασίες για ιδία χρήση.

  3. Το δικαίωμα να διανεμηθούν οι παράγωγες εργασίες εφ' όσον:

    1. Προσδιορίσετε την εργασία ως τροποποιημένη

    2. Τη χορηγήστε κάτω από τη GPL άδεια και

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

  4. Μπορείτε να διανείμετε την εργασία μόνο στην εκτελέσιμη μορφή της εφ' όσον ο πηγαίος κώδικας είναι:

    1. διανεμημένος μαζί με τον εκτελέσιμο κώδικα

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

    3. για τις μη εμπορικές διανομές, συνοδευόμενος με την προσφορά που ο διανομέας παρέλαβε ως προς τη διαθεσιμότητα του πηγαίου κώδικα.

  5. Δεν μπορούν να επιβληθούν περιορισμοί σε οποιαδήποτε από τα ανωτέρω δικαιώματα.

Αυτή είναι μια απλή, αλλά κομψή προσέγγιση. Βασικά, ο χορηγών την άδεια επιτρέπει σε οποιοδήποτε κάτοχο άδειας να ασκήσει ουσιαστικά όλα τα δικαιώματα που είναι διαθέσιμα κάτω από την πνευματική ιδιοκτησία, δηλαδή το δικαίωμα της αντιγραφής, το δικαίωμα να δημιουργηθούν παράγωγες εργασίες, το δικαίωμα της διανομής, το δικαίωμα της εκτέλεσης, το δικαίωμα της παρουσίασης. Η μόνη υποχρέωση που επιβάλλεται είναι, εάν ο κάτοχος άδειας στη συνέχεια επιθυμεί να διανείμει το λογισμικό σε τρίτους, αυτοί θα πρέπει να συμφωνούν να το παραλάβουν μόνο κάτω από την GPL. Ο μόνος σκοπός αυτού του περιορισμού είναι να διατηρηθεί η ακεραιότητα της αρχικής επιχορήγησης της ελευθερίας για οποιαδήποτε αναδιανομή και να κατασταθεί αδύνατο, για οποιονδήποτε δημιουργήσει μια άλλη έκδοση του λογισμικού, να προσφέρει λιγότερη ελευθερία σε οποιοδήποτε παραλήπτη από αυτήν που η αρχική έκδοση θα είχε προσφέρει. Με άλλα λόγια, η GPL δηλώνει "μιά φορά ελεύθερο, πάντα ελεύθερο."

Σημειώστε ότι η GPL δεν έχει καμία σχέση με την περίπτωση όπου ο δημιουργός χορηγεί άδεια στο λογισμικό και επιλέγει να μην το αναδιανείμει. Αυτό αληθεύει εάν ο δημιουργός είναι είτε άτομο, είτε μια εταιρία, είτε ένα εταιρικό συγκρότημα επιχειρήσεων, είτε η κυβέρνηση. Όπως σημειώνεται από το Ίδρυμα Ελεύθερου Λογισμικού, όταν αναφέρεται η GPL στα πλαίσια μιας εταιρίας, εννοεί την υφιστάμενη επιχείρηση και όλα τα ελεγχόμενα υποκαταστήματα αυτής. Ομοίως, όταν αναφέρεται σε μια μονάδα της κυβέρνησης, εννοεί εκείνη την μονάδα της κυβέρνησης και όλες τις υπόλοιπες μονάδες αυτής της κυβέρνησης που είναι κάτω από τον άμεσο έλεγχό της. Σε αυτό το πλαίσιο, μπορεί να αναφέρεται σε ολόκληρη την ομοσπονδιακή κυβέρνηση των ΗΠΑ ή οποιαδήποτε πολιτεία ή κυβέρνηση Κοινοπολιτειών, συμπεριλαμβανομένων των αντιπροσωπειών αυτής της πολιτείας ή της κυβέρνησης Κοινοπολιτειών. Η GPL δεν απαιτεί από έναν κάτοχο άδειας, που δεν έχει διανείμει το λογισμικό σε τρίτους, να παρέχει αντίγραφο αυτού του λογισμικού σε οποιονδήποτε το ζητήσει αυτό. Οι περιορισμοί της GPL εφαρμόζονται μόνο στην περίπτωση όπου το λογισμικό παρέχεται σε τρίτους, και η GPL αναφέρεται μόνο στη διατήρηση του αρχικού σκοπού, τίποτα περισσότερο.

Βασισμένοι στα προαναφερθέντα, μπορούμε να διακρίνουμε τους τύπους χρήσης του Ανοικτού Κώδικα σε κατηγορίες και να αναλύσουμε τις νομικές επιπτώσεις της GPL για κάθε κατηγορία. Οι ενδιαφέρουσες κατηγορίες είναι:

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

  2. Χρήστες που τροποποιούν τον πηγαίο κώδικα προγραμμάτων υπό την GPL για να χειριστούν τοπικά ζητήματα ρυθμίσεων ή για να εξετάσουν τις εσωτερικές απαιτήσεις τους και όχι για την αναδιανομή σε τρίτους και

  3. Χρήστες που τροποποιούν τον πηγαίο κώδικα προγραμμάτων υπό την GPL και τα αναδιανέμουν είτε για προσωπικούς λόγους ευχαρίστησης ή/και για κέρδος.

Στην περίπτωση (1), η GPL δεν έχει επιπτώσεις σε αυτούς τους χρήστες καθόλου. Για παράδειγμα η χρήση του επεξεργαστή κειμένων Ανοικτού Κώδικα GNU Emacs TM δεν υπονοεί ότι η πράξη της αποθήκευσης ενός αρχείου αλλάζει την ιδιοκτησία αυτού του αρχείου ώστε να ανήκει στο Ίδρυμα Ελεύθερου Λογισμικού, ούτε η μεταγλώττιση ενός αρχείου από το μεταγλωττιστή Ανοικτού Κώδικα GNU C Compiler προκαλεί τον προκύπτων κώδικα αντικειμένων να ανήκει στο Ίδρυμα Ελεύθερου Λογισμικού, ούτε θέτοντας ένα σημείο αναστολής (breakpoint) σε ένα εκτελέσιμο αρχείο προκαλεί το εκτελέσιμο να γίνει ξαφνικά ιδιοκτησία του Ιδρύματος. Κατά συνέπεια, η κανονική χρήση λογισμικού υπό την GPL (δηλαδή όπως η χρήση οποιουδήποτε άλλου εμπορικού λογισμικού) σε ένα εμπορικό περιβάλλον δεν θέτει κανένα εξαιρετικό νομικό πρόβλημα. Η ευρεία διανομή του λειτουργικού συστήματος Linux τα τελευταία χρόνια για χρήση του στους εμπορικούς και επιχειρησιακούς κεντρικούς web εξυπηρετητές αποτελεί απόδειξη ότι δεν υπάρχει κανένας νομικός λόγος να μην χρησιμοποιηθεί το λογισμικό Ανοικτού Κώδικα εάν τυχαίνει να θεωρείται καλύτερο από τις εναλλακτικές λύσεις ιδιόκτητου (proprietary) λογισμικού.

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

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

Μετά από αυτήν την ανάλυση χρειαζόματε έναν ορισμό του τι αποτελεί μια παράγωγο εργασία στο λογισμικό.