نحن نصون تعريف البرمجيات الحرة لنظهر بوضوح ما هي معايير اعتبار برنامج معين من البرمجيات الحرة. نراجع هذا التعريف من وقت لآخر لنوضّحه. إذا أردت مراجعة التغييرات التي أجريناها، من فضلك راجع
قسم التاريخ أسفله لمزيد من المعلومات.
في اللغة الإنجليزية، “Free software” تدل على الحرية، وليس السعر. لفهم الفكرة باللغة الإنجليزية، اعتبر “free” كما لو كانت في “free speech” وليس “free beer”.
البرمجيات الحرة تركز على حرية المستخدمين في تشغيل ونسخ وتوزيع ودراسة وتعديل وتحسين البرمجيات. بشكل أكثر تحديدا، تشير إلى أن مستخدمي البرنامج يملكون هذه الحريات الأربع الأساسية:
حرية تشغيل البرنامج، لأي غرض (الحرية 0).
حرية دراسة كيفية عمل البرنامج وتغييرها ليقوم بما ترغب به (الحرية 1). الوصول إلى الكود المصدري ضروري لهذا.
حرية إعادة توزيع نسخ لتتمكن من مساعدة جارك (حرية 2).
حرية توزيع نسخ من إصداراتك المعدلة للآخرين (الحرية 3). وبذلك يمكن أن تمنح المجتمع بأسره فرصة الاستفادة من تعديلاتك. الوصول إلى الكود المصدري ضروري لهذا.
يصبح البرنامج حرا إذا امتلك مستخدموه كل هذه الحريات. لذلك، ينبغي أن تكون حرا في إعادة توزيع نُسخ، سواءً مع أو بدون تعديلات، سواءً مجانا أو بمقابل رسوم للتوزيع،
لأي شخص في أي مكان. كونك حرا لفعل هذه الأشياء يعني ضمن ما يعنيه أنك لا تطالب بالدفع للحصول على إذن للقيام بذلك.
ينبغي أن تملك حرية إنشاء تعديلات واستخدامها بشكل خاص في عملك أو لهوك بدون الإشارة حتى إلى وجودها. إذا نشرت تعديلاتك، يجب ألا تُطالب بإخطار أي شخص محدد، بأي طريقة محددة.
حرية تشغيل البرنامج تعني حرية أي فرد أو منظمة في استخدامه على أي نظام حاسوب، لأي مهمة وغرض بدون أن يكون مطالبا بالإفشاء عنه للمطور أو لأي كيان آخر. في هذه الحرية، غرض المستخدم هو المهم، وليس غرض المطور؛ أنت كمستخدم حر في تشغيل البرنامج لأي غرض، وإذا وزّعته إلى أي شخص آخر، هو حر حينئذ بتشغيله لأغراضه، وأنت غير مُخول بفرض أغراضك عليه.
حرية إعادة توزيع النسخ يجب أن تتضمن الهيئتين الثنائية أو التشغيلية للبرنامج، بالإضافة إلى الكود المصدري، لكلا الإصدارين المعدل وغير المعدل. (توزيع البرنامج بصيغة قابلة للتشغيل ضروري لملائمة أنظمة التشغيل الحرة التي يمكن تثبيتها.) لا مشكلة إذا لم توجد طريقة لتوليد هيئة ثنائية أو قابلة للتشغيل لبرنامج معين (لأن بعض اللغات لا تدعم هذه الميزة)، لكن يجب أن تمتلك حرية إعادة توزيع هذه الهيئات في حال وجدتها أو طورتها.
لجعل الحريتين 1 و3 (حرية إجراء تعديلات وحرية نشر نُسَخ معدلة) ساريتين، يجب أن تملك الوصول إلى الكود المصدري للبرنامح. ولذلك، فإن إتاحة الكود المصدري للبرنامج شرط أساسي للبرمجيات الحرة. ”الكود المصدري“ المُعتّم ليس كودًا مصدريًا حقيقًا ولا يعتبر كذلك.
تتضمن الحرية 1 حرية استخدام النسخ المعدلة بدلا من النسخة الأصلية. إذا أتى البرنامج مع منتج مُصمّم لتشغيل النسخة التي عدلها شخص آخر، لكنه يرفض تشغيل نسختك (وهي الظاهرة التي تُعرف باسم ”التيفرزة“ -Tivoization- أو -وهو الاسم الذي نرفضه- ”الإقلاع الآمن“)، فإن الحرية 1 تصبح نظرية خيالية لا حرية حقيقة، وهذا غير مجدي. بعبارة أخرى، تلك الثنائيات ليست حرة حتى لو كان الكود المصدري الذي تُرجمت منه حرًا.
طريقة هامة لتعديل برنامج هي دمجه بالوحدات والمخططات الحرة. إذا كانت رخصة البرنامج تقول أنك لا تستطيع دمجه بوحدة موجودة (مثل اشتراطها أن تكون مالك حقوق النشر لأي كود تضيفه) فإن الرخصة مقيدة جدا ولا يمكن أن توصف بأنها حرة.
تتضمن الحرية 3 حرية إصدار نسخك بطريقة تجعلها حرة. يجوز أن تسمح الرخصة الحرة بطرق أخرى لإصدار النسخ؛ بعبارة أخرى، لا يشترط أن تكون رخصة
حقوق متروكة. لكن الرخص التي تطالب أن تكون النسخ المعدلة غير حرة لا تعتبر رخصًا حرة.
لتكون هذه الحريات حقيقة، يجب أن تكون غير قابلة للإلغاء طالما أنك لم ترتكب خطأً؛ إذا كان مطور البرمجيات لديه القوة لإبطال الرخصة، أو يستطيع تغيير شروطها بأثر رجعي بدون ارتكابك أي شيء داعٍ، البرنامج غير حر.
من ناحية أخرى، أنواع القواعد الثابتة حول ممارسة توزيع البرمجيات الحرة مقبولة، عندما لا تتعارض مع الحريات المركزية. على سبيل المثال، الحقوق المتروكة (حالة بسيطة جدا) هي قاعدة التي لا تستطيع عند إعادة توزيع البرنامج، إضافة قيود لحرمان الأشخاص الآخرين من الحريات المركزية. هذه القاعدة لا تتعارض مع الحريات المركزية، بدلا من أن تحميها.
”البرمجيات الحرة“ لا تعني ”غير التجارية.“ البرنامج الحر يجب أن يتاح للاستخدام التجاري والتطوير التجاري والتوزيع النجاري. التطوير التجاري للبرمجيات الحرة لم يعد غريبا؛ برمجيات حرة تجارية مماثلة مهمة جدا. قد تكون دفعت مالا للحصول على نسخة البرنامج الحرة أو قد تكون سعيت للحصول على نسخة بدون مقابل. لكن بغض النظر عن كيفية حصولك على النسخة، لديك دائما حرية نسخ وتعديل البرنامج، بل وحتى
بيع النسخة .
إذا كان تمثيل التعديل ”تحسينا“ مسألة شخصية، بمعنى أن تعديلاتك محصورة على ما يعتبره شخص آخر تحسينا، فالبرنامج ليس حرا.
ومع ذلك، والقواعد حول كيفية حزم النسخة المعدلة مقبولة، إذا لم تمنع عمليا حريتك في إصدار نسخ معدلة، أو حريتك في إنشاء واستخدام نسخ معدلة بشكل خاص. وهكذا، كان مقبولا للحصول على رخصة أن تتطلب منك تغيير اسم نسخة معدلة، إزالة الشعار، أو تحديد التعديلات بصفتك. وما دامت هذه الشروط ليست ثقيلة بحيث تعرقل على نحو فعال لكم من الافراج عن التغييرات، فهي مقبولة؛ انكم تصنعون بالفعل تغييرات أخرى على البرنامج، لذلك سوف لا يكون لديكم مشاكل في وضع بعض تعديلات أكثر.
القواعد التي “إذا جعلت نسختك متاحة بهذه الطريقة ، يجب أن تجعلها متاحة بتلك الطريقة أيضا” يمكن ان يكون مقبولا أيضا، على نفس الشرط. مثال على حكم من هذا القبيل هي واحدة مقبولة من يقول : إذا كنت قد وزعت نسخة معدلة وطلب مطور سابق للحصول على نسخة منه، يجب أن ترسل واحدة. (لاحظ أن هذه القاعدة ما زالت تترك لك اختيار ما إذا كان لتوزيع الإصدار الخاص بك على الإطلاق.) القواعد التي تطلب إصدار الكود المصدري للمستخدمين للنسخ التي تضعها في عموم الاستخدام مقبولة أيضا.
تصدر الحكومة أحيانا
قوانين مراقبة التصدير وتمرر مراسيمًا قد تقيد حريتك في نشر نُسَخ من البرامج دوليا. لا يمتلك مطوروا البرمجيات القوة لإسقاط أو تجاوز هذه القيود، لكن ما يمكن ويجب فعله هو رفض إجبارهم على وضع هذه القيود في شروط استخدام البرنامج. في هذه الحالة، القيود لن تؤثر على الأنشطة والأشخاص خارج سيطرة هذه الحكومات. لذلك، تراخيص البرمجيات الحرة يجب ألا تطلب الطاعة لأي قانون تصدير كشرط لأي حرية جوهرية.
معظم تراخيص البرمجيات الحرة مبنية على حقوق النشر، ويوجد حدود على أنواع المطالب التي يمكن أن تفرضها حقوق النشر. إذا كان الترخيص المبني على حقوق النشر يحترم الحريات الموضحة أعلاه، فمن غير المرجح أن يحتوي مشاكلا أخرى لم نتنبأ بها (رغم أن هذا يحدث أحيانا). من ناحية أخرى، بعض تراخيص البرمجيات الحرة مبنية على عقد اتفاقية، والاتفاقيات يمكنها فرض نطاق أوسع من القيود المحتملة. هذا يعني وجود الكثير من الطرق يمكن عبرها أن يكون الترخيص مُقيدا بشكل غير مقبول وغير حر.
لا نستطيع وضع قائمة بكل الطرق المحتملة. إذا كان ترخيصًا مبنيًا على عقد اتفاقية تقيد المستخدم بشكل غريب لا تستطيع التراخيص المبنية على حقوق النشر فعله، وغير مذكور هنا كشرعي، يجب أن ندرسه، وعلى الأرجح سنعتبره غير حر.
عند الحديث عن البرمجيات الحرة، الأفضل تجاوز استخدام مصطلحات مثل ”هدية“ أو ”بالمجان“، لأن هذه المصطلحات تدل على أن القضية حول السعر، وليست الحرية. بعض المصطلحات العامة مثل قرصنة تجسد آراءً نأمل ألا تُقرّها. راجع
كلمات وعبارات مضللة تستحق التجنب لمناقشة هذه المصطلحات. لدينا أيضا قائمة
بترجمات ”البرمجيات الحرة“ الملائمة إلى لغات عديدة.
أخيرا، من فضلك لاحظ أن معاييرًا مثل هذه التي في تعريف البرمجيات الحرة هذا تتطلبا تفكيرا حذرا في تفسيراتها. لحسم اعتبار رخصة برمجيات معينة من رخص البرمجيات الحرة، نفصل في الأمر بناءً على هذه المعايير لنقرّر فيما إذا كانت تلائم مبادئها وتعابيرها. إذا احتوت قيودا غير مقبولة، نرفضها، حتى لو لم نتنبأ بالقضية في هذه المعايير. أحينا يستدعي أحد متطلبات الرخصة تفكيرًا عميقا، بما في ذلك نقاشا مع محامي قبل أن نقرر فيما إذا كان المتطلب مقبولا. إذا وصلنا إلى نتيجة تفيد القضية، نحدّث عادة هذه المعايير لجعل فهم سبب مطابقة أو عدم مطابقة رخصة معينة للمعايير أسهل.
إذا كنت مهتما فيما إذا كان ترخيص محدد مؤهلا ليعتبر ترخيص برمجيات حرة، راجع
قائمتنا للتراخيص. إذا كان الترخيص الذي تُعنى به غير موجود في القائمة، تستطيع سؤالنا عنه عن طريق مراسلتنا
.
إذا كنت ترغب في كتابة ترخيص جديد، من فضلك راسل مؤسسة البرمجيات عن طريق الكتابة إلى هذا العنوان. زيادة تراخيص البرمجيات الحرة يعني زيادة جهد المستخدمين لفهم التراخيص، ربما نكون قادرين على مساعدتك في إيجاد ترخيص برمجيات حرة موجود يلبي احتياجاتك.
إذا لم يكن هذا ممكنا، وإذا كنت تريد حقا ترخيصا جديدا، فبمساعدتنا تستطيع ضمان أن الترخيص ترخيص برمجيات حرة بالفعل وتتجاوز الكثير من المشاكل العملية.
ما وراء البرمجياتنفس الحجة أيضا تعطي مبرّرا لأعمال الاستخدام العملي الأخرى — بما في ذلك، الأعمال التي تجسد فائدة معرفية، مثل الأعمال التعليمية والأعمال المرجعية.
ويكيبيديا هي أفضل مثال.
أي نوع من الأعمال
يمكن أن يكون حرا، وتعريف البرمجيات الحرة وُسّع إلى تعريف
الأعمال الثقافية الحرة القابل للتطبيق على أي نوع من الأعمال.
المصدر المفتوح؟بدأت مجموعة أخرى في استخدام المصطلح ”المصدر المفتوح“ لقصد شيء شبيه (وغير مطابق) ”للبرمجيات الحرة“ نحن نفضل مصطلح ”البرمجيات الحرة“ لأنه يقودك بمجرد سماعه إلى التفكير بالحرية. كلمة ”مفتوح“
لا تشير إطلاقا إلى الحرية.
التاريخمن وقت لآخر نراجع تعريف البرمجيات الحرة لنوضحه. هنا نقدم قائمة بهذه التعديلات، بالتماشي مع الوصلات لتوضيح ما عُدّل تحديدا، ليتمكن الآخرون من مراجعتها إذا أرادوا ذلك.
النسخة 1.92: توضيح أن الكود المُعتّم لا يعتبر كودًا مصدريًا.
النسخة 1.90: توضيح أن الحرية 3 تعني حق توزيع نُسخ من إصدار المعدل أو المحسن، وليس حق الانضمام إلى مشروع تطوير شخص آخر.
الإصدار 1.80: يجب أن تكون الحرية 1 عملية، وليست نظرية فحسب على سبيل المثال التيفزة ممنوعة.
النسخة 1.77: توضيح أن كل التعديلات الرجعية على الرخصة غير مقبولة، حتى لو لم توصف ببديل كامل.
النسخة 1.74: أربع توضيحات لنقاط غير واضحة كفاية، أو نُصّت في بعض الأماكن لكن لم تعكس في كل مكان:
"التحسينات" لا تعني أن الرخصة يمكن أن تحد واقعيا أنواع الإصدارات المعدلة التي تصدرها. الحرية 3 تتضمن توزيع إصدارات معدلة، ليس فقط التغييرات.
حق الدمج مع وحدات موجودة يشير إلى تلك المرخصة بشكل مناسب.
تصريح بيّن لخاتمة نقطة إصدار التحكمات.
فرض تغيير رخصة يشكل إبطال الرخصة القديمة.
النسخة 1.46: توضيح أغراض مَن معنيّة في حرية تشغيل البرنامج لأي غرض.
النسخة 1.40: شرح أن الرخصة الحرة يجب أن تسمح لك باستخدام برمجيات حرة متاحة أخرى لإنشاء تعديلاتك.
النسخة 1.39: لاحظ أنه من المقبول لرخصة طلب تقديم الشيفرة إصدار البرمجيات الذي تضعه في الاستخدام العام.
النسخة 1.31: لاحظ أنه من المقبول لرخصة طلب تعريف نفسك كمؤلف للتعديلات. توضيحات أخرى طفيفة على النص.
النسخة 1.23: تقديم مشاكل كامنة متعلقة بالتراخيص المبنية على اتفاقية.
النسخة 1.11: لاحظ أن الرخصة الحرة قد تطلب منك إرسال نسخة من الإصدارات التي توزعها إلى المؤلف.
يوجد فجوة في أرقام الإصدارات لوجود تعديلات كثيرة لم تؤثر على جوهر التعريف ككل. بدلا من ذلك، إصلاح وصلات، إضافة ترجمات، وهكذا. إذا رغبت في مراجعة قائمة التعديلات الكاملة، تستطيع فعل ذلك على
واجهة cvsweb