Αλλάζει το Linux; O Mark Shuttleworth της Canonical ανακοίνωσε τον Ιούνιο ότι το Snaps, μια νέα μέθοδος της εταιρείας για να πακετάρει συσκευασίες θα υιοθετηθεί και από άλλες διανομές.
Μια σύντομη ιστορία για το χάος συσκευασίας του Linux
Σε αντίθεση με τις εφαρμογές των Windows ή του Mac, οι εφαρμογές του Linux μοιράζονται τις ίδιες βιβλιοθήκες σε όλο το σύστημα και η κύρια δουλειά ενός διαχειριστή πακέτων είναι να βρει τις εξαρτήσεις (βιβλιοθήκες) που απαιτούνται από την εφαρμογή για μπορεί να εγκατασταθεί.
Οι διανομές Linux χρησιμοποιούν κυρίως σε δύο μορφές συσκευασίας: τις rpm και deb. Οι διανομές όπως το Red Hat Enterprise Linux, το SUSE Linux Enterprise, το openSUSE, Fedora και το CentOS χρησιμοποιούν πακέτα rpm, ενώ η οικογένεια του Debian, συμπεριλαμβανομένων όλων των Ubuntοειδών, Linux Mint κ.α. OS χρησιμοποιούν πακέτα deb. Φυσικά υπάρχουν πολλές άλλες διανομές που έχουν τις δικές τους μορφές συσκευασίας.
Αυτό προκαλεί τρία μεγάλα προβλήματα για τους προγραμματιστές εφαρμογών και τους χρήστες του Linux:
1: Οι προγραμματιστές δεν μπορούν να χρησιμοποιήσουν τις τελευταίες βιβλιοθήκες που προσφέρουν περισσότερες δυνατότητες, εάν η διανομή που έχουν εξακολουθεί να χρησιμοποιεί παλαιότερες βιβλιοθήκες.
2: Οι προγραμματιστές πρέπει να γράψουν και να διατηρήσουν τις εφαρμογές για διαφορετικές διανομές, καθώς και διαφορετικές εκδόσεις της κάθε ενιαίας διανομής, επειδή όλες οι διανομές χρησιμοποιούν διαφορετικές εκδόσεις βιβλιοθηκών.
3: Η ανάμιξη στις βιβλιοθήκες οδηγεί σε χαλασμένα συστήματα, και έτσι οι χρήστες Linux βιώνουν συχνά διάφορα προβλήματα.
Κάπου εδώ έρχεται το Snaps. Είναι η απάντηση που ψάχνει η κοινότητα του ανοιχτού λειτουργικού;
Τα Snaps ξεκίνησαν αρχικά σαν Click, μια νέα μορφή συσκευασίας για το Ubuntu Mobile. Ομαδοποιούσε όλες τις εξαρτήσεις και τις βιβλιοθήκες ώστε να μην χρειάζεται να ανησυχούν οι προγραμματιστές για την ανάλυση μιας εξάρτησης.
Αργότερα τα Click εξελίχθηκαν σε Snaps, τα οποία απευθύνονται σε servers, συσκευές του Internet of Things (IoT) αλλά και υπολογιστές. Αυτό τον Απρίλιο, η Canonical διέθεσε για πρώτη φορά δημόσια τα Snaps με την κυκλοφορία του Ubuntu 16.04.
Η άφιξη του Snaps σε σύστημα επιφάνειας εργασίας τράβηξε αμέσως την προσοχή διαφορετικών κοινοτήτων και προγραμματιστών που άρχισαν να ζητούν από την Canonical αν μπορούν να το κάνουν port στη διανομή τους.
Έτσι αν και το Snaps φτιάχτηκε και κυκλοφόρησε για το Ubuntu, η Canonical σε συνεργασία με developers από τις διανομές Gentoo, Fedora και Arch Linux αρχίζει να δημιουργεί hooks για διαφορετικές διανομές. Έτσι το Snaps λειτουργεί τώρα εγγενώς στις διανομές Arch, Debian, Fedora, Kubuntu, Lubuntu, Ubuntu GNOME, Ubuntu Kylin, Ubuntu MATE, Ubuntu Unity, και Xubuntu.
Εν τω μεταξύ η Canonical συνεργάζεται με άλλους προγραμματιστές για την επικύρωση του Snaps στο CentOS, Elementary, Gentoo, Mint, OpenSUSE, OpenWrt και RHEL.
Τι φέρνει το μέλλον;
Φανταστείτε ότι με το Snaps η επιφάνεια εργασίας του Linux θα γίνει μια τεράστια πλατφόρμα παρόμοια με αυτή του MacOS και του Windows. Οι προγραμματιστές εφαρμογών θα πρέπει να γράφουν την εφαρμογή τους μόνο μία φορά και θα τρέχει σε κάθε διανομή.
Το νέο χαρακτηριστικό εκτός από τα παραπάνω φέρνει επίσης και την απαραίτητη ασφάλεια στην επιφάνεια εργασίας του Linux καθώς το Snaps μπορεί να θεωρηθεί σαν περιβάλλον δοκιμών, γιατί οι βιβλιοθήκες του πακέτου δεν έρχονται σε “επαφή” με το σύστημα.
Ένα άλλο πλεονέκτημα του Snaps είναι η ευκολότερη και η ταχύτερη διανομή των εφαρμογών. Οι προγραμματιστές δεν θα ανησυχούν πια για το ποιες βιβλιοθήκες χρησιμοποιεί το κάθε σύστημα, και θα κυκλοφορούν το συντομότερο νέες εκδόσεις των εφαρμογών τους.
Για να δούμε όμως τι θα γίνει. Για να ζήσουμε το μέλλον που περιγράφουμε παραπάνω θα πρέπει όλη η κοινότητα του Linux να αφήσει .deb και .rpm και να υιοθετήσει το Snaps ως προεπιλεγμένη μορφή πακέτων.