RichStyle: The Angel is in The Detail.

أساسيات جنو/لينكس

مفهوم المستودعات

فيما يلي سلسلة من المقالات الموجزة تستهدف الراغبين في التوجه لاستخدام نظام التشغيل لينكس. مبدئياً، هذه المقالات تستند في مضامينها إلى نسخة LinuxMint 14 «Nadia» الإصدار MATE 32-bit، من توزيعة لينكس منت، والتي تتصدر —وفقاً لموقع DistroWatch.com— لائحة توزيعات لينكس الأكثر استخداماً على مستوى العالم.

من أبرز المفاهيم التي يتعين على الوافدين إلى عالم لينكس من بيئة ويندوز إدراكها واستيعابها مفهوم المستودعات Repositories، فعليه تبنى مفاهيم إدارة البرمجيات وتثبيتها في لينكس.

مجتمع لينكس في جوهره، مجتمع تعاوني، تعتمد المشاريع فيه على بعضها بشدة، فحرية الاستخدام التي توفرها تلك البرمجيات تعبد الطريق قانوناً أمام المطورين نحو الاستفادة من جهود التطوير فيما بينهم. يتحول كل مشروع قائم بذاته وظيفياً، ومدار من قبل طرف محدد، إلى حزمة برمجية package مستقلة بذاتها، إلا أنها تعتمد غالباً في تشغيلها بعد تثبيتها على توفر حزم أخرى.

على سبيل المثال، لو أنك طورت برنامجاً مكتوباً بلغة بايثون، فلا بد لتشغيله على حاسب معين من توفر لغة بايثون على ذلك الحاسب.

في بيئة ويندوز ستجد نفسك عادة أمام خيارين لا ثالث لهما:

في حين أن هذه الخطوة تجري في بيئة لينكس بصورة تلقائية دون تدخل من المستخدم، كل ما عليك القيام به كمطور هو أن تخبر الحزمة الخاصة بك أنها بحاجة لحزمة بايثون، وما إن يطلب المستخدم تثبيت الحزمة الخاصة بك على جهازه حتى يجري تثبيت حزمة بايثون معها من المستودع تلقائياً.

ففي بيئة لينكس يتم تجميع كل هذه الحزم في أرشيف أو مخزن مركزي واحد يدعى المستودع Repository، يحوي —إلى جانب تلك الحزم— فهرساً بكل هذه الحزم وعلاقاتها ببعضها، بما يسمح لها بالتخاطب فيما بينها.

عملياً، يتوضع المستودع (بما فيه من حزم مضافاً إليها فهرس الحزم) على أحد مواقع الإنترنت أو الشبكة الداخلية «الإنترانت»، في حين تنطوي كل نسخة من النظام على نسخة من ذلك الفهرس محلياً.

مخطط النشر UML Deployment للعلاقة بين لينكس ومستودعاته
مخطط النشر UML Deployment للعلاقة بين لينكس ومستودعاته

وعليه، فالبحث عن برنامج ما واستكشافه يتم محلياً، أما تثبيته فيتم باستدعائه —هو وكافة الحزم التي يحتاجها، تلقائياً— من المستودع.

علاقة الاعتمادية هذه، بين حزم برمجية مخزنة عن بعد، تجعل من الإنترنت شريان الحياة النابض في بيئة لينكس، فمن العسير جداً تصور إمكانية استخدام لينكس دون توفر اتصال بالإنترنت يمكن الاعتماد عليه، وأعتقد أن هذا ما أخر انتشار نظام لينكس مقارنة بنظام ويندوز في منطقتنا العربية ردحاً من الزمن.