
تم نقل التطوير إلى https://codeberg.org/librewolf/source
يحتوي هذا المستودع على جميع التصحيحات (patches) والتخصيصات (theming) التي تشكل LibreWolf، بالإضافة إلى البرامج النصية وملف Makefile لبناء LibreWolf. يوجد أيضًا مستودع الإعدادات، الذي يحتوي على تفضيلات LibreWolf.
graph LR
FFSRC(مصدر Firefox)
FFSRC--ملف مضغوط--->Source
subgraph librewolf-community/
Settings(الإعدادات)--"librewolf.cfg<br>policies.json"-->Source
Website(الموقع الإلكتروني<br><br>- التوثيق<br>- الأسئلة الشائعة)
subgraph browser/
Source(المصدر<br><br>- التصحيحات<br>- التخصيصات<br>- نصوص البناء)
bsys6(bsys6<br><br>مستودع البناء الجديد<br>باستخدام Docker)
AppImage
Arch
end
end
Website-->librewolf.net
Source--"ملف مصدر مضغوط"-->bsys6
AppImage--".appimage"-->librewolf.net
bsys6--"ملف setup.exe لويندوز"--->librewolf.net
bsys6--"ملف portable.zip لويندوز"--->librewolf.net
bsys6--"ملف .msix لويندوز"--->MS("متجر Microsoft")
bsys6--"ملف .nupkg لويندوز"--->Chocolatey
bsys6--"ملف ثنائي مضغوط للينكس"--->Flathub
bsys6--"ملف ثنائي مضغوط للينكس"--> AppImage
bsys6--"ملف .deb للينكس"--->repo.librewolf.net
bsys6--"ملف .rpm للينكس"--->repo.librewolf.net
bsys6--"ملف ثنائي مضغوط للينكس لـ 'librewolf-bin'"--> Arch
Source--"ملف مصدر مضغوط لـ 'librewolf'"-->Arch
Arch-->AUR
قائمة بالمشاريع الفرعية لبناء المتصفح. هذه هي الأماكن التي يحتفظ فيها الأشخاص بمستودعاتهم وملفات البناء.
مستودعات البناء النشطة حاليًا:
حزم التوزيعات المشتقة:
الانشقاقات السابقة:
هناك طريقتان لبناء LibreWolf. يمكنك إما استخدام ملف المصدر المضغوط (tarball) أو التجميع مباشرة من هذا المستودع.
أولاً، دعنا نقوم بتحميل أحدث ملف مضغوط. هذا الملف المضغوط هو الأحدث الذي تم إنتاجه بواسطة CI. يمكنك أيضًا التحقق من sha256sum للملف المضغوط هناك.
tar xf <اسم الملف المضغوط>
cd <المجلد>
بعد ذلك، يجب عليك تهيئة نظامك ليكون قادرًا على بناء LibreWolf. عليك فعل ذلك مرة واحدة فقط. يتم ذلك بتشغيل الأوامر التالية:
./mach --no-interactive bootstrap --application-choice=browser
أخيرًا، يمكنك بناء LibreWolf ثم تعبئته كحزمة أو تشغيله باستخدام الأوامر التالية:
./mach build
./mach package
# أو
./mach run
أولاً، قم باستنساخ هذا المستودع باستخدام Git:
git clone --recursive https://codeberg.org/librewolf/source.git librewolf-source
cd librewolf-source
بعد ذلك، قم ببناء شفرة مصدر LibreWolf باستخدام الأمر التالي:
make dir
بعد ذلك، يجب عليك تهيئة نظامك ليكون قادرًا على بناء LibreWolf. عليك فعل ذلك مرة واحدة فقط. يتم ذلك بتشغيل الأمر التالي:
make bootstrap
أخيرًا، يمكنك بناء LibreWolf ثم تعبئته كحزمة أو تشغيله باستخدام الأوامر التالية:
make build
make package
# أو
make run
نستخدم Weblate لترجمة جميع السلاسل النصية الخاصة بـ LibreWolf. يمكنك مساعدتنا عن طريق ترجمة LibreWolf إلى لغتك على https://translate.codeberg.org/engage/librewolf. وفيما يلي حالة الترجمة الحالية:
أسهل طريقة لإنشاء التصحيحات هي الذهاب إلى مجلد مصدر LibreWolf:
cd librewolf-$(cat version)
git init
git add <مسار_الملف_الذي_غيرته>
git commit -am initial-commit
git diff > ../mypatch.patch
لدينا غرف Gitter / Matrix، وعلى الموقع الإلكتروني لدينا روابط لمتتبعات المشكلات المختلفة.
أسهل طريقة لإنشاء التصحيحات هي الذهاب إلى مجلد مصدر LibreWolf:
make fetch # احصل على الملف المضغوط لـ firefox
./scripts/git-patchtree.sh patches/sed-patches/disable-pocket.patch
الآن قم بتعديل شجرة المصدر بالطريقة التي تريدها، مع تذكر إضافة الملفات الجديدة باستخدام git add. عند الانتهاء، يمكنك إنشاء التصحيح الجديد باستخدام:
cd firefox-<الإصدار>
git diff 4b825dc642cb6eb9a060e54bf8d69288fbee4904 HEAD > ../my-patch-name.patch
هذا المعرف هو قيمة التجزئة (hash) لأول commit، والذي يُسمى initial. لا تنسَ عمل commit للتغييرات قبل القيام بهذا الفرق (diff)، وإلا سيكون التصحيح ناقصًا.
حسنًا، أولاً وقبل كل شيء:
الآن بعد أن أصبح لديك تصحيح في LibreWolf، فهذا لا يكفي لرفعه إلى Mozilla. كما ترى، Mozilla تقبل فقط التصحيحات ضد إصدار Nightly. إليك كيفية القيام بذلك:
إذا لم تكن قد فعلت ذلك بالفعل، قم بإنشاء مجلد mozilla-unified وبناء Firefox باستخدامه:
hg clone https://hg.mozilla.org/mozilla-unified
cd mozilla-unified
hg update
MOZBUILD_STATE_PATH=$HOME/.mozbuild ./mach --no-interactive bootstrap --application-choice=browser
./mach build
./mach run
إذا تخطيت الخطوة السابقة، يمكنك التأكد من أنك محدث باستخدام:
cd mozilla-unified
hg pull
hg update
الآن يمكنك تطبيق التصحيح الخاص بك على Nightly:
patch -p1 -i ../mypatch.patch
الآن دع Mercurial يقوم بإنشاء التصحيح:
hg diff > ../my-nightly-patch.patch
ويمكن رفعه إلى Bugzilla.
حان الوقت لبدء القرصنة! يجب عليك الانضمام إلينا على Matrix، وقول مرحبًا في قناة المقدمة، وابحث عن خطأ للبدء في العمل عليه. راجع المرجع السريع لمساهمي Firefox لتعلم كيفية اختبار تغييراتك، وإرسال التصحيحات إلى Mozilla، وتحديث شفرتك المصدرية محليًا، والمزيد.
نحن نتفهم، الحياة ليست دائماً عادلة 😺. نفس الخطوات المذكورة أعلاه تنطبق، لكن ستحتاج إلى اتباع الجزء الأول من الأدلة التالية:
make setup-wasi.المساعدة في اختبار هذه الأهداف مرحب بها دائمًا.