Ενέργειες

Arch Linux

Η συλλογική βιβλιοθήκη γνώσης για το Linux στα Ελληνικά

Expand.png
Το άρθρο ή η ενότητα χρειάζεται επέκταση
Απαιτούνται πληροφορίες για άλλες πτυχές της διανομής.

Το Arch Linux είναι μια κοινοτικά υποστηριζόμενη διανομή Linux γενικού σκοπού, σχεδιασμένη για επεξεργαστές με αρχιτεκτονική x86-64. Ακολουθεί το μοντέλο των κυλιόμενων εκδόσεων (rolling release) και παρέχει τις τελευταίες σταθερές εκδόσεις των λογισμικών, όπως αυτές διατίθενται από τους προγραμματιστές τους.

Ιστορία

Η ανάπτυξη του Arch Linux ξεκίνησε το 2001 από τον Καναδό προγραμματιστή Judd Vinet[1], στόχευε την αρχιτεκτονική x86, και αντλούσε επιρροές από τα CRUX, Slackware, PLD Linux αλλά και από το BSD. Ο Vinet δημιούργησε και το πρόγραμμα διαχείρισης πακέτων pacman, ενώ η πρώτη επίσημη έκδοση της διανομής ήρθε στις 11 Μαρτίου 2002, με το Arch Linux 0.1.[2]

Η δραστηριότητα γύρω από τη διανομή, καθώς και η κοινότητά της, άρχισαν να μεγαλώνουν από το 2005[3], που ήταν και το έτος δημιουργίας του ArchWiki. Μόλις δύο χρόνια αργότερα, ο Judd Vinet αποσύρθηκε από την ανάπτυξη του Arch Linux, παραδίδοντας τα ηνία στον Αμερικανό προγραμματιστή Aaron Griffin.

Στις αρχές του 2020, έπειτα από την πρόθεση του Griffin να αποχωρήσει, σχεδιάστηκε μια διαδικασία επιλογής των μελλοντικών υπεύθυνων έργου (project leaders) για το Arch Linux[4]. Ακολούθησε ψηφοφορία από την ομάδα ανάπτυξης της διανομής και στη θέση αυτή εκλέχτηκε ο Ούγγρος προγραμματιστής Levente Polyak.

Ονομασία

Ο Judd Vinet εμπνεύστηκε από τον όρο «arch-enemy»[5] που συνάντησε σε κάποιο βιβλίο, και συγκεκριμένα από το πρώτο συνθετικό, δηλαδή το ελληνικό «αρχι-» που δηλώνει τον πρωτεύοντα/κύριο. Έτσι, ονόμασε τη διανομή «Arch Linux» (προφέρεται «αρτς»).

Ανάπτυξη

Το Arch Linux αναπτύσσεται συλλογικά από μη αμειβόμενους, εθελοντές προγραμματιστές μερικής απασχόλησης, και δεν υπάρχουν προοπτικές δημιουργίας εσόδων από το έργο. Τον πρώτο λόγο έχουν πάντα οι συνεισφέροντες σε αυτό, δηλαδή η βασική ομάδα προγραμματιστών. Αυτοί συντηρούν τα επίσημα αποθετήρια [core] και [extra], και αποφασίζουν για την κατεύθυνση της διανομής.[6]

Οι βασικοί προγραμματιστές πλαισιώνονται από τον θεσμό των «Trusted Users», οι οποίοι είναι χρήστες/προγραμματιστές που υποβάλλονται σε μια διαδικασία επιλογής, έπειτα από την οποία αποκτούν αυξημένα δικαιώματα αλλά και υποχρεώσεις στο έργο. Οι Trusted Users συντηρούν το αποθετήριο [community] και επιβλέπουν τη λειτουργία του AUR.[7]

Τεχνικός σχεδιασμός

Το Arch Linux βασίζεται στον πυρήνα Linux και αποτελείται από δυαδικά πακέτα, ωστόσο διαθέτει και ένα «ports-like» σύστημα για την αυτοματοποιημένη δημιουργία πακέτων από πηγαίο κώδικα, το ABS. Εφαρμόζει ανοιχτά πρότυπα, όπως τα FHS και POSIX, και εστιάζει στη δημιουργία ενός τεχνικά απλού λειτουργικού συστήματος.

Arch Build System

Το Arch Build System είναι ένα σύστημα μεταγλώττισης πηγαίου κώδικα σε δυαδικά πακέτα. Παρέχει ένα δέντρο σεναρίων κελύφους (shell scripts) που ονομάζονται PKGBUILDs, τα οποία μεταγλωττίζονται με το εργαλείο makepkg, συμπιέζονται σε αρχεία της μορφής pkg.tar.zst και μπορούν να εγκατασταθούν μέσω του pacman.

Αρχές

Η υλοποίηση της διανομής διαπνέεται από ορισμένες βασικές αρχές[8], οι οποίες αναλύονται παρακάτω.

Απλότητα

Το Arch Linux ορίζει την απλότητα ως χωρίς περιττές προσθήκες ή τροποποιήσεις. Παρέχει λογισμικό όπως αυτό κυκλοφόρησε από τους αρχικούς προγραμματιστές (upstream) με ελάχιστες εξειδικευμένες για τη διανομή αλλαγές (downstream): αποφεύγονται ενημερώσεις κώδικα (patches) που δε γίνονται αποδεκτές από το upstream και οι downstream ενημερώσεις κώδικα του Arch Linux αποτελούνται σχεδόν εξ ολοκλήρου από backported διορθώσεις σφαλμάτων που έχουν ξεπεραστεί από την επόμενη κυκλοφορία του έργου.

Με παρόμοιο τρόπο, το Arch Linux προσφέρει τα αρχεία διαμόρφωσης που παρέχονται από το upstream με αλλαγές που περιορίζονται σε ζητήματα που αφορούν συγκεκριμένα τη διανομή, όπως η προσαρμογή των διαδρομών αρχείων συστήματος. Δεν προσθέτει δυνατότητες αυτοματισμού, όπως η ενεργοποίηση μιας υπηρεσίας απλώς και μόνο επειδή εγκαταστάθηκε το πακέτο. Τα πακέτα διαχωρίζονται μόνο όταν υπάρχουν επιτακτικά πλεονεκτήματα, όπως η εξοικονόμηση χώρου στον δίσκο. Δεν παρέχονται επίσημα GUI βοηθητικά προγράμματα διαμόρφωσης, ενθαρρύνοντας τους χρήστες να εκτελούν τις περισσότερες ρυθμίσεις παραμέτρων συστήματος από το κέλυφος και έναν επεξεργαστή κειμένου.

Νεωτερισμός

Το Arch Linux προσπαθεί να διατηρεί τις πιο πρόσφατες σταθερές εκδόσεις του λογισμικού του, αρκεί να μπορεί να αποφευχθεί σε λογικά πλαίσια η συστημική καταστροφή πακέτων. Είναι βασισμένο σε ένα σύστημα κυλιόμενων εκδόσεων, το οποίο επιτρέπει μια εφάπαξ εγκατάσταση με συνεχείς αναβαθμίσεις.

Το Arch Linux ενσωματώνει πολλές από τις νεότερες δυνατότητες που διατίθενται στους χρήστες GNU/Linux, όπως το σύστημα init systemd, σύγχρονα συστήματα αρχείων, το LVM2, RAID λογισμικού, υποστήριξη για το udev και το initcpio (με το mkinitcpio), καθώς και τους πιο πρόσφατους διαθέσιμους πυρήνες.

Πραγματισμός

Το Arch Linux είναι μια πραγματιστική διανομή και όχι μια ιδεολογική. Οι αρχές εδώ είναι μόνο χρήσιμες οδηγίες. Τελικά, οι σχεδιαστικές αποφάσεις λαμβάνονται κατά περίπτωση μέσω συναίνεσης των προγραμματιστών. Η τεκμηριωμένη τεχνική ανάλυση και η συζήτηση που βασίζονται σε αποδεικτικά στοιχεία έχουν σημασία, όχι η πολιτική ή οι δημοφιλείς γνώμες.

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

Χρηστοκεντρικότητα

Ενώ πολλές διανομές GNU/Linux προσπαθούν να είναι περισσότερο φιλικές προς τον χρήστη, το Arch Linux ήταν πάντα και θα παραμείνει πάντα χρηστοκεντρικό. Η διανομή έχει ως στόχο να καλύψει τις ανάγκες όσων συμβάλλουν σε αυτήν, αντί να προσπαθεί να προσελκύσει όσο το δυνατόν περισσότερους χρήστες. Απευθύνεται στον έμπειρο χρήστη ή σε οποιονδήποτε είναι πρόθυμος να διαβάσει την τεκμηρίωση και να λύσει τα δικά του προβλήματα.

Όλοι οι χρήστες ενθαρρύνονται να συμμετέχουν και να συνεισφέρουν στη διανομή. Η αναφορά και η βοήθεια στην επιδιόρθωση σφαλμάτων είναι πολύτιμη και εκτιμώνται ιδιαίτερα οι επιδιορθώσεις κώδικα που βελτιώνουν τα πακέτα ή τα βασικά έργα: οι προγραμματιστές του Arch Linux είναι εθελοντές και οι ενεργοί συνεισφέροντες συχνά γίνονται μέλη αυτής της ομάδας. Μπορούν ελεύθερα να συνεισφέρουν πακέτα στο Arch User Repository, να βελτιώνουν την τεκμηρίωση του ArchWiki, να παρέχουν τεχνική βοήθεια σε άλλους ή να ανταλλάσσουν απόψεις σε fora, λίστες αλληλογραφίας ή κανάλια IRC. Το Arch Linux είναι το προτιμώμενο λειτουργικό σύστημα για πολλούς ανθρώπους σε όλο τον κόσμο και υπάρχουν πολλές διεθνείς κοινότητες που προσφέρουν βοήθεια και παρέχουν τεκμηρίωση σε πολλές διαφορετικές γλώσσες.

Προσαρμοστικότητα

Το Arch Linux είναι μια διανομή γενικού σκοπού. Κατά την εγκατάσταση, παρέχεται μόνο ένα περιβάλλον γραμμής εντολών: αντί να αφαιρεί τα περιττά και ανεπιθύμητα πακέτα, προσφέρεται στον χρήστη η δυνατότητα να δημιουργήσει ένα προσαρμοσμένο σύστημα επιλέγοντας ανάμεσα σε χιλιάδες πακέτα υψηλής ποιότητας που παρέχονται στα επίσημα αποθετήρια για την αρχιτεκτονική x86-64.

Υποστηρίζεται από τον pacman, έναν ελαφρύ, απλό και γρήγορο διαχειριστή πακέτων που επιτρέπει την αναβάθμιση ολόκληρου του συστήματος με μία εντολή. Παρέχει, επίσης, το Arch Build System, ένα ports-like σύστημα για να διευκολύνει τη δημιουργία και την εγκατάσταση πακέτων από την πηγή, τα οποία μπορούν επίσης να συγχρονιστούν με μία εντολή. Επιπρόσθετα, το Arch User Repository περιέχει χιλιάδες περισσότερα σενάρια PKGBUILD που συνεισφέρει η κοινότητα για τη μεταγλώττιση εγκαταστάσιμων πακέτων από πηγαίο κώδικα. Είναι, επίσης, δυνατό για τους χρήστες να δημιουργήσουν και να διατηρούν τα δικά τους προσαρμοσμένα αποθετήρια με ευκολία.

Παραπομπές

  1. «Interview with Judd Vinet» (3 Αυγ. 2003), distrowatch.com
  2. Arch Linux - Releases (14 Ιουν. 2020), archlinux.org
  3. Random Arch Website Stats 2002-2011 (14 Ιουν. 2020), archlinux.org
  4. DeveloperWiki:Project Leader (14 Ιουν. 2020), archlinux.org
  5. Aaron Griffin (24 Αυγ. 2005), «Pronnounciation [sic] of our beloved distribution's name», osdir.com. Αρχείο πρωτότυπου.
  6. Arch Linux Developers (14 Ιουν. 2020), archlinux.org
  7. Arch Linux Trusted Users (14 Ιουν. 2020), archlinux.org
  8. Arch Linux Principles (14 Ιουν. 2020), archlinux.org