ورق — المكونات الخارجية وتراخيصها
=================================

هذا الملف يسجل كل مكون خارجي يشحن مع ورق أو يُبنى عليه، ورخصته كما تعلنها الحزمة
نفسها. حُرِّر بمسح التعريفات المثبتة فعلا (importlib.metadata) لا بالنقل عن الذاكرة.

آخر تحديث: 2026-10-03 · ورق 1.0.18


١) المكون الحاكم: PyMuPDF
--------------------------
pymupdf 1.28.2        AGPL-3.0 أو رخصة Artifex التجارية
pymupdf4llm 1.28.2    AGPL-3.0 أو رخصة Artifex التجارية

ورق مبني على PyMuPDF بنيويا: القراءة والكتابة والتصيير والتحرير والتنقيح كلها تمر
به. ورخصته مزدوجة، فلا سبيل ثالث أمام التوزيع:

  (أ) نشر ورق كاملا تحت AGPL-3.0، بما في ذلك خادم الجوال؛ أو
  (ب) شراء رخصة Artifex التجارية.

  ← **اختار المالك (أ) في 17 سبتمبر 2026**: ورق حر تحت AGPL-3.0، ونصها في LICENSE.
    فلا حاجة إلى رخصة Artifex. ولو أُريد إغلاق المصدر لاحقا فالطلب يُقدَّم عبر
    نموذج المبيعات على artifex.com/contact — لا تنشر Artifex بريدا للترخيص ولا
    تنشر سعرا، والسعر يُعطى بعرض سعر بعد أن يسألوا عن نموذج التوزيع وعدد الوحدات
    أو الخوادم وحق إعادة التوزيع والمدة.

وينبني على الخيار (أ) التزام عملي كثيرا ما يُغفل: المادة 13 تلزم من يشغّل البرنامج
خدمةً على الشبكة بأن يعرض شيفرته المصدرية على مستخدمي الخدمة. وخدمة waraq.cc
تفي به عبر `/api/source` ورابط «الشيفرة المصدرية» في التطبيق.

وأثرٌ عمليٌّ آخر: الحدود التي تُفرض على جهاز المستخدم (عدد ملفات الدمج مثلا) لا
تُنفَّذ، لأن من يحذفها يحق له نشر نسخته. وما يُنفَّذ هو ما يجري على الخادم.


٢) واجهة Qt
------------
PySide6_Essentials 6.10.3   LGPL-3.0-only أو GPL-2.0-only أو GPL-3.0-only
PySide6_Addons 6.10.3       LGPL-3.0-only أو GPL-2.0-only أو GPL-3.0-only  (وحدة Qt Multimedia وحدها: تسجيل الشرح)
shiboken6 6.10.3            LGPL-3.0-only أو GPL-2.0-only أو GPL-3.0-only
FFmpeg 7.1.3                LGPL-2.1-or-later  (مكتبات avcodec وavformat وavutil وswresample وswscale
                            المشحونة مع Qt Multimedia، ببناءٍ لا يدخله ما رخصته GPL؛ وترميزُ H.264
                            بمرمّز ويندوز نفسه)

نستعملها تحت LGPL-3.0. وتلزم LGPL بإتاحة شيفرة المكتبة نفسها وبتمكين المستخدم من
استبدالها بنسخة معدلة. وبناء PyInstaller هنا يشحن مكتبات Qt وFFmpeg ملفاتٍ منفصلة لا
مدموجة في التنفيذي، وهو ما يفي بشرط إعادة الربط.


٣) بقية المكتبات
-----------------
anthropic 1.6.0               MIT
arabic-reshaper 3.0.1         MIT
cryptography 50.0.1           Apache-2.0 أو BSD-3-Clause
ezdxf 1.4.4                   MIT            (تصدير DXF للرسوم المتجهة)
fastapi 0.141.1               MIT
fonttools 4.65.0              MIT
numpy 2.5.3                   BSD-3-Clause   (ومكوّناتٌ بـ0BSD وMIT وZlib وCC0-1.0)
openpyxl 3.1.5                MIT
pikepdf 10.13.0.post1         MPL-2.0        (حقوق متروكة على مستوى الملف)
Pillow 12.3.0                 MIT-CMU
pyhanko 0.37.0                MIT
pyhanko-certvalidator 0.32.1  MIT
pyparsing 3.3.2               MIT            (يجرّها ezdxf)
python-bidi 0.6.11            LGPL           (يسري عليها ما في البند ٢)
python-docx 1.2.0             MIT
python-multipart 0.0.32       Apache-2.0
python-pptx 1.0.2             MIT
pywin32 312                   PSF
qtawesome 1.4.2               MIT
QtPy 2.4.3                    MIT
scipy 1.18.1                  BSD-3-Clause   (شبكة التدرج في التحويل إلى متجه)
skia-pathops 0.9.2            BSD-3-Clause   (ويضم مكتبة Skia بترخيص BSD-3-Clause، حقوقها 2011 Google Inc.؛
                                              عمليات المسارات: الدمج والطرح والتقاطع والإزاحة وحدّ الخط)
uharfbuzz 0.55.0              Apache-2.0     (ويضم HarfBuzz بترخيص MIT القديم؛ تشكيل النص في تحويله إلى مسارات)
uvicorn 0.53.0                BSD-3-Clause


٤) أدوات البناء والفحص (لا تُشحن مع المنتج)
---------------------------------------------
pyinstaller 6.22.3   GPL-2.0 مع استثناء المُقلِع
                     الاستثناء يجيز توزيع تطبيقات غير مفتوحة مبنية به، فلا يفرض
                     على ورق شيئا. والقيد على ورق يأتي من البند ١ لا من هنا.
pytest 9.1.1         MIT
pytest-qt 4.5.0      MIT


٥) الخطوط
----------
IBM Plex Sans Arabic (Regular, Medium, SemiBold, Bold؛ والموقع يخدم معها Light مقتطعةً بصيغة WOFF
  في mobile/static/site/fonts ومعها نصُّ OFL)
  حقوق النشر 2019 IBM Corp.
  SIL Open Font License 1.1 — كما يعلنها جدول الأسماء في الخط نفسه (nameID 13).
  «IBM Plex» علامة تجارية مسجلة لـIBM في ولايات قضائية كثيرة.

إعادة التوزيع مسموحة، لكن OFL تشترط أن يرافق نصُّ الرخصة الخطَّ.

  ← مستوفى في 19 سبتمبر 2026: نصُّ OFL-1.1 في waraq/resources/fonts/OFL.txt
    (منقول عن مستودع IBM Plex الرسمي بترويسة حقوق IBM واسم الخط المحفوظ)،
    ومواصفة البناء تحزم مجلد fonts كاملا فيُشحن معها.


٦) نماذج التعرف الضوئي
-----------------------
ara.traineddata, eng.traineddata — نماذج Tesseract، Apache-2.0.
النماذج المنزَّلة عند الطلب تعيش في مجلد بيانات المستخدم ولا تُشحن مع المثبِّت.


٧) واجهة الويب الشاملة (/studio)
---------------------------------
تُبنى من web/ ويحمّلها متصفح كل زائر، فما تضمّه من مكتبات يُشحن مع ورق كبقية المكونات:
preact 11.0.0                 MIT
@preact/signals 2.11.3        MIT
@preact/signals-core 1.14.4   MIT
Material Design Icons 6.9.96  Apache-2.0     (مسارات الأيقونات مأخوذة من خطها كما تحمله qtawesome)

نصوص رخصها كاملة تُخدم مع الواجهة في /studio/licenses.txt، منقولة عن ملفات الرخص في الحزم
نفسها (web/public/licenses.txt). وأدوات بنائها وفحصها (vite وrolldown وtypescript وvitest
وhappy-dom) لا تُشحن معها.


ما يلزم المالك فعله
--------------------
1. ✅ حُسم البند ١: AGPL-3.0، ونصها في LICENSE (منقولة حرفيا عن gnu.org).
   والمادة 13 مُوفّاة عبر `/api/source` في الخدمة المستضافة.
2. ✅ أُضيف waraq/resources/fonts/OFL.txt، فشرط خطوط IBM Plex مستوفى.
