Επειδή ό,τι σχετικό documentation υπάρχει που αφορά το packaging είναι στα Αγγλικά και απευθύνεται σε χρήστες που ήδη έχουν πιο προχωρημένο επίπεδο γνώσεων στο Ubuntu για να γίνει κατανοητό, προσπάθησα να δημιουργήσω έναν οδηγό στα Ελληνικά, ο οποίος θα απευθύνεται σε όλους τους χρήστες ανεξαρτήτως γνώσεων.
Τί είναι το Packaging;
Όλα (ή τουλάχιστον τα περισσότερα) τα έργα Ελεύθερου Λογισμικού / Λογισμικού Ανοιχτού Κώδικα δημιουργούνται αυτόνομα από προγραμματιστές ή ομάδες προγραμματιστών για να καλύψουν μία συγκεκριμένη ανάγκη του τελικού χρήστη. Και όταν λέμε «αυτόνομα», αυτό σημαίνει πως τα έργα ΕΛ/ΛΑΚ δεν δημιουργούνται με προδιαγραφές ώστε να χρησιμοποιηθούν σε μία συγκεκριμένη διανομή Linux, αλλά από όλες τις διανομές (αυτό που λέμε «Upstream») ή ακόμη και από άλλα συστήματα. Κάθε διανομή, όμως, έχει τις δικές της ιδιαιτερότητες και ανάγκες, ενώ συγκριτικά με οποιαδήποτε άλλη, μπορούν να παρατηρηθούν μικρές διαφορές ή και εξαιρετικά σημαντικές και ουσιαστικές διαφορές. Άρα, πως μπορεί μία εφαρμογή, η οποία έχει δημιουργηθεί αγνοώντας τις ανάγκες της εκάστοτε διανομής, να λειτουργήσει σωστά σε αυτή; Εδώ μπαίνει η διαδικασία του packaging.
Με το πακετάρισμα ενός έργου ΕΛ/ΛΑΚ, το οποίο έχει δημιουργηθεί ανεξάρτητα από κάποιους developers, ουσιαστικά φέρνουμε το λογισμικό στα μέτρα της διανομής που αυτό θα εγκατασταθεί και θα χρησιμοποιηθεί, ώστε να μην υπάρχουν προβλήματα σχετικά με την λειτουργία του στην εκάστοτε διανομή και να ενεργεί όπως αυτή προορίστηκε από τους προγραμματιστές που το δημιούργησαν. Με την ολοκλήρωση της διαδικασίας, δημιουργείται ένα πακέτο (pagkage – εξού και ο όρος «pagkaging») για την εγκατάσταση του λογισμικού στην διανομή μας.