
Development has moved to https://codeberg.org/librewolf/source
यह भंडार उन सभी पैच और थीमिंग को शामिल करता है जो LibreWolf को बनाते हैं, साथ ही LibreWolf बनाने के लिए स्क्रिप्ट और एक Makefile भी। साथ ही Settings repository भी है, जिसमें LibreWolf की प्राथमिकताएँ शामिल हैं।
graph LR
FFSRC(Firefox Source)
FFSRC--Tarball--->Source
subgraph librewolf-community/
Settings(Settings)--"librewolf.cfg<br>policies.json"-->Source
Website(Website<br><br>- Documentation<br>- FAQ)
subgraph browser/
Source(Source<br><br>- Patches<br>- Theming<br>- Build scripts)
bsys6(bsys6<br><br>New Docker building<br>repository)
AppImage
Arch
end
end
Website-->librewolf.net
Source--"Source tarball"-->bsys6
AppImage--".appimage"-->librewolf.net
bsys6--"Windows setup.exe"--->librewolf.net
bsys6--"Windows portable.zip"--->librewolf.net
bsys6--"Windows .msix"--->MS("Microsoft Store")
bsys6--"Windows .nupkg"--->Chocolatey
bsys6--"Linux binary tarball"--->Flathub
bsys6--"Linux binary tarball"--> AppImage
bsys6--"Linux .deb"--->repo.librewolf.net
bsys6--"Linux .rpm"--->repo.librewolf.net
bsys6--"Linux binary tarball for 'librewolf-bin'"--> Arch
Source--"Source tarball for 'librewolf'"-->Arch
Arch-->AUR
ब्राउज़र निर्माण उप-परियोजनाओं की सूची। ये वे स्थान हैं जहाँ लोग अपने भंडार और निर्माण कलाकृतियाँ रखते हैं।
वर्तमान में सक्रिय निर्माण भंडार:
डाउनस्ट्रीम वितरण पैकेज:
पिछले फोर्क्स:
LibreWolf बनाने के दो तरीके हैं। आप या तो स्रोत tarball का उपयोग कर सकते हैं या सीधे इस भंडार से संकलन कर सकते हैं।
पहले, आइए नवीनतम tarball डाउनलोड करें। यह tarball CI द्वारा निर्मित नवीनतम है। आप वहाँ tarball का sha256sum भी जाँच सकते हैं।
tar xf <tarball>
cd <folder>
फिर, LibreWolf बनाने में सक्षम होने के लिए आपको अपने सिस्टम को बूटस्ट्रैप करना होगा। आपको यह केवल एक बार करना होगा। यह निम्नलिखित कमांड चलाकर किया जाता है:
./mach --no-interactive bootstrap --application-choice=browser
अंत में आप LibreWolf बना सकते हैं और फिर निम्नलिखित कमांड के साथ इसे पैकेज या चला सकते हैं:
./mach build
./mach package
# OR
./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
# OR
make run
हम सभी LibreWolf-विशिष्ट स्ट्रिंग्स को स्थानीयकृत करने के लिए Weblate का उपयोग करते हैं। आप https://translate.codeberg.org/engage/librewolf पर LibreWolf का अपनी भाषा में अनुवाद करके हमारी मदद कर सकते हैं। यहाँ वर्तमान अनुवाद स्थिति है:
पैच बनाने का सबसे आसान तरीका LibreWolf स्रोत फ़ोल्डर में जाना है:
cd librewolf-$(cat version)
git init
git add <path_to_file_you_changed>
git commit -am initial-commit
git diff > ../mypatch.patch
हमारे पास Gitter / Matrix कक्ष हैं, और वेबसाइट पर हमारे पास विभिन्न मुद्दा ट्रैकर्स के लिंक हैं।
पैच बनाने का सबसे आसान तरीका LibreWolf स्रोत फ़ोल्डर में जाना है:
make fetch # get the firefox tarball
./scripts/git-patchtree.sh patches/sed-patches/disable-pocket.patch
अब स्रोत ट्री को अपनी इच्छानुसार बदलें, नई फ़ाइलों को git add करने का ध्यान रखें। जब हो जाए, तो आप निम्नलिखित के साथ नया पैच बना सकते हैं:
cd firefox-<version>
git diff 4b825dc642cb6eb9a060e54bf8d69288fbee4904 HEAD > ../my-patch-name.patch
यह ID पहले कमिट का हैश मान है, जिसे initial कहा जाता है। यह 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 पर हमसे जुड़ें, परिचय चैनल में नमस्ते कहें, और काम शुरू करने के लिए एक बग खोजें। अपने परिवर्तनों का परीक्षण करने, Mozilla को पैच भेजने, अपने स्रोत कोड को स्थानीय रूप से अपडेट करने और अधिक जानने के लिए Firefox Contributors’ Quick Reference देखें।
हम समझते हैं, जीवन हमेशा निष्पक्ष नहीं होता 😺। ऊपर दिए गए समान चरण लागू होते हैं, आपको बस निम्नलिखित के लिए गाइड के शुरुआती भाग से गुज़रना होगा:
make setup-wasi चरण के अपवाद के साथ।इन लक्ष्यों के परीक्षण में सहायता का हमेशा स्वागत है।