2021-11-20 06:57:42 +00:00
## Building LibreWolf from source:
2021-11-21 00:42:29 +01:00
First, let's [download the latest version ](https://gitlab.com/stanzabird/source/-/jobs/artifacts/main/raw/librewolf-94.0.2.source.tar.gz ). Once downloaded, extract it.
2021-11-20 06:11:22 +00:00
```
2021-11-21 00:11:04 +01:00
export version=$(cat version)
mkdir build
cd build
2021-11-20 06:20:03 +00:00
wget -q https://fresh.librewolf.io/librewolf-$(version)/librewolf-$(version).source.tar.gz
2021-11-20 06:11:22 +00:00
tar xf librewolf-$(version).source.tar.gz
```
Next step, if you have not done so already, you must create the build environment:
2021-11-20 06:04:05 +00:00
```
2021-11-21 00:11:04 +01:00
cp librewolf-$(version)/lw-assets/bootstrap.py .
python3 bootstrap.py --no-interactive --application-choice=browser
2021-11-20 06:04:05 +00:00
```
2021-11-21 00:32:13 +01:00
It takes about an hour for me to complete, but it needs to be done only once. This step might fail and cause problems.
2021-11-20 06:11:22 +00:00
2021-11-20 06:21:54 +00:00
Now we're ready to actually build LibreWolf:
2021-11-20 06:11:22 +00:00
```
2021-11-20 06:57:42 +00:00
cd librewolf-$(version)
2021-11-20 06:11:22 +00:00
./mach build
```
2021-11-20 06:21:54 +00:00
Also takes me an hour. Then, we can run it:
2021-11-20 06:11:22 +00:00
```
./mach run
```
2021-11-20 06:21:54 +00:00
Or make a package:
2021-11-20 06:11:22 +00:00
```
./mach package
```
2021-11-20 06:57:42 +00:00
## Building LibreWolf source tarball:
You don't need the build environment for this. If you don't have write access, just:
```
git clone https://gitlab.com/stanzabird/source.git
cd source
make all
```
If you **do** have write access, we're first gonna check for a newer version of Firefox:
```
git clone git@gitlab .com:< your_username > /source.git
cd source
make check
```
If there is a new version, it's a good time to git commit and trigger a CI build job.
```
2021-11-20 07:08:59 +00:00
git commit -am v$(cat version) & & git push
2021-11-20 06:57:42 +00:00
```
To build the source archive:
```
make all
```