
Die Entwicklung ist umgezogen auf https://codeberg.org/librewolf/source
Dieses Repository enthält alle Patches und das Theming, aus denen LibreWolf besteht, sowie Skripte und ein Makefile zum Erstellen von LibreWolf. Es gibt auch das Settings-Repository, das die LibreWolf-Einstellungen enthält.
graph LR
FFSRC(Firefox Source)
FFSRC--Tarball--->Source
subgraph librewolf-community/
Settings(Settings)--"librewolf.cfg<br>policies.json"-->Source
Website(Website<br><br>- Dokumentation<br>- FAQ)
subgraph browser/
Source(Source<br><br>- Patches<br>- Theming<br>- Build-Skripte)
bsys6(bsys6<br><br>Neues Docker-Erstellungs-<br>Repository)
AppImage
Arch
end
end
Website-->librewolf.net
Source--"Quell-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-->AURListe der Browser-Build-Unterprojekte. Dies sind die Orte, an denen die Leute ihre Repositories und Build-Artefakte haben.
Derzeit aktive Build-Repositories:
Downstream-Distributionspakete:
Frühere Forks:
Es gibt zwei Möglichkeiten, LibreWolf zu erstellen. Du kannst entweder den Quell-Tarball verwenden oder direkt mit diesem Repository kompilieren.
Lade zunächst den neuesten Tarball herunter. Dieser Tarball ist der neueste, der vom CI erstellt wurde. Du kannst dort auch die sha256sum des Tarballs überprüfen.
tar xf <tarball>
cd <ordner>
Dann musst du dein System bootstrappen, um LibreWolf bauen zu können. Dies musst du nur einmal tun. Das erledigst du mit den folgenden Befehlen:
./mach --no-interactive bootstrap --application-choice=browser
Schließlich kannst du LibreWolf bauen und es dann mit den folgenden Befehlen verpacken oder ausführen:
./mach build
./mach package
# ODER
./mach run
Klone zunächst dieses Repository mit Git:
git clone --recursive https://codeberg.org/librewolf/source.git librewolf-source
cd librewolf-source
Baue als nächstes den LibreWolf-Quellcode mit dem folgenden Befehl:
make dir
Danach musst du dein System bootstrappen, um LibreWolf bauen zu können. Dies musst du nur einmal tun. Das erledigst du mit dem folgenden Befehl:
make bootstrap
Schließlich kannst du LibreWolf bauen und es dann mit den folgenden Befehlen verpacken oder ausführen:
make build
make package
# ODER
make run
Wir verwenden Weblate, um alle LibreWolf-spezifischen Zeichenketten zu lokalisieren. Du kannst uns helfen, indem du LibreWolf in deine Sprache übersetzt unter https://translate.codeberg.org/engage/librewolf. Hier ist der aktuelle Übersetzungsstatus:
Der einfachste Weg, Patches zu erstellen, ist, in den LibreWolf-Quellordner zu gehen:
cd librewolf-$(cat version)
git init
git add <pfad_zur_geänderten_datei>
git commit -am initial-commit
git diff > ../mypatch.patch
Wir haben Gitter/Matrix-Räume und auf der Website gibt es Links zu den verschiedenen Issue-Trackern.
Der einfachste Weg, Patches zu erstellen, ist, in den LibreWolf-Quellordner zu gehen:
make fetch # Firefox-Tarball abrufen
./scripts/git-patchtree.sh patches/sed-patches/disable-pocket.patch
Ändere nun den Quellbaum nach deinen Wünschen, wobei du daran denkst, neue Dateien mit git add hinzuzufügen. Wenn du fertig bist, kannst du den neuen Patch erstellen mit:
cd firefox-<version>
git diff 4b825dc642cb6eb9a060e54bf8d69288fbee4904 HEAD > ../my-patch-name.patch
Diese ID ist der Hash-Wert des ersten Commits, der initial genannt wird. Vergiss nicht, vor dem Erstellen dieses Diffs die Änderungen zu committen, sonst wird der Patch unvollständig sein.
Nun, zunächst einmal:
Nun, wenn du einen Patch in LibreWolf hast, reicht das nicht aus, um ihn an Mozilla hochzuladen. Mozilla akzeptiert nur Patches gegen Nightly. So gehst du dabei vor:
Falls du noch nicht gemacht, erstelle den mozilla-unified-Ordner und baue Firefox damit:
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
Falls du den vorherigen Schritt übersprungen hast, kannst du sicherstellen, dass du auf dem neuesten Stand bist mit:
cd mozilla-unified
hg pull
hg update
Jetzt kannst du deinen Patch auf Nightly anwenden:
patch -p1 -i ../mypatch.patch
Jetzt lässt du Mercurial den Patch erstellen:
hg diff > ../my-nightly-patch.patch
Und er kann auf Bugzilla hochgeladen werden.
Zeit mit dem Hacken zu beginnen! Du solltest dich uns auf Matrix anschließen, im Einführungskanal Hallo sagen und einen Fehler zum Bearbeiten finden. Siehe die Kurzreferenz für Firefox-Mitwirkende, um zu lernen, wie du deine Änderungen testest, Patches an Mozilla sendest, deinen Quellcode lokal aktualisierst und mehr.
Wir verstehen, das Leben ist nicht immer fair 😺. Die gleichen Schritte wie oben gelten, du musst nur den Anfangsteil der Anleitungen durchgehen für:
Hilfe beim Testen dieser Ziele ist immer willkommen.