0
Fork 0
mirror of https://codeberg.org/librewolf/source.git synced 2025-01-03 03:10:07 -05:00

Fixed a bug that we didn't provide the mozconfig.new.without-wasi

This commit is contained in:
Bert van der Weerd 2022-01-03 14:14:15 +01:00
parent 6bf59b86a1
commit e032bd76ed
No known key found for this signature in database
GPG key ID: 4CFABB96ADE0F5B1
4 changed files with 28 additions and 9 deletions

View file

@ -1,11 +1,11 @@
## Building LibreWolf from source: ## Building LibreWolf from source:
First, let's **[download the latest tarball](https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-95.0.2-2.source.tar.gz?job=build-job)**. This tarball is the latest produced by the CI. First, let's **[download the latest tarball](https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-95.0.2-3.source.tar.gz?job=build-job)**. This tarball is the latest produced by the CI.
To download the latest from a script, use wget/curl like this: To download the latest from a script, use wget/curl like this:
``` ```
wget -O librewolf-95.0.2-2.source.tar.gz https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-95.0.2-2.source.tar.gz?job=build-job wget -O librewolf-95.0.2-3.source.tar.gz https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-95.0.2-3.source.tar.gz?job=build-job
curl -L -o librewolf-95.0.2-2.source.tar.gz https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-95.0.2-2.source.tar.gz?job=build-job curl -L -o librewolf-95.0.2-3.source.tar.gz https://gitlab.com/librewolf-community/browser/source/-/jobs/artifacts/main/raw/librewolf-95.0.2-3.source.tar.gz?job=build-job
``` ```
Next, we create ourselves a build folder and extract the tarball. Next, we create ourselves a build folder and extract the tarball.
@ -13,13 +13,22 @@ Next, we create ourselves a build folder and extract the tarball.
``` ```
mkdir build mkdir build
cd build cd build
tar xf ../librewolf-95.0.2-2.source.tar.gz tar xf ../librewolf-95.0.2-3.source.tar.gz
``` ```
Next step, if you have not done so already, you must create the build environment: Next step, if you have not done so already, you must _create the build environment_:
``` ```
librewolf-95.0.2/lw/mozfetch.sh librewolf-95.0.2/lw/mozfetch.sh
``` ```
This would create a _mozilla-unified_ folder in our 'build' folder. It takes about an hour for me to complete, but it needs to be done only once. This step might fail and cause problems. Hack a bit, and if that fails you can ask on our [Gitter](https://gitter.im/librewolf-community/librewolf)/[Matrix](https://matrix.to/#/#librewolf:matrix.org) channels. There is no need to actually build _mozilla-unified_ (Mozilla Nightly) itself, nor is the folder needed to build LibreWolf. So you can remove it: `rm -rf mozilla-unfied` if you don't plan on using/exploring it. This would create a _mozilla-unified_ folder in our 'build' folder, or basically anywhere that is your current working directory. It takes about an hour for me to complete, but it needs to be done only once. This step might fail and cause problems. Hack a bit, and if that fails you can ask on our [Gitter](https://gitter.im/librewolf-community/librewolf)/[Matrix](https://matrix.to/#/#librewolf:matrix.org) channels. There is no need to actually build _mozilla-unified_ (Mozilla Nightly) itself, nor is the folder needed to build LibreWolf. So you can remove it: `rm -rf mozilla-unfied` if you don't plan on using/exploring it.
Since Firefox 95.0, we need to install an additional library, the 'wasi sdk'. This library sandboxes wasm libraries, which is what we do want. The script to do this is: `setup-wasi-linux.sh` but it's still experimental for us.
So you have the option to either: setup the wasi sdk using _setup-wasi-linux.sh_ perhaps modifying it.
Or, the other option is to not use these sandbox libraries: In this case we can't use our standard _mozconfig_ symlink from _mozconfig.new_ into _mozconfig.new.without-wasi_. In that case you have to type something along the lines of:
```
cd librewolf-95.0.2
cp lw/mozconfig.new.without-wasi mozconfig
cd ..
```
Now we're ready to actually build LibreWolf: Now we're ready to actually build LibreWolf:
``` ```

View file

@ -15,11 +15,20 @@ mkdir build
cd build cd build
tar xf ../librewolf-__VERSION__-__RELEASE__.source.tar.gz tar xf ../librewolf-__VERSION__-__RELEASE__.source.tar.gz
``` ```
Next step, if you have not done so already, you must create the build environment: Next step, if you have not done so already, you must _create the build environment_:
``` ```
librewolf-__VERSION__/lw/mozfetch.sh librewolf-__VERSION__/lw/mozfetch.sh
``` ```
This would create a _mozilla-unified_ folder in our 'build' folder. It takes about an hour for me to complete, but it needs to be done only once. This step might fail and cause problems. Hack a bit, and if that fails you can ask on our [Gitter](https://gitter.im/librewolf-community/librewolf)/[Matrix](https://matrix.to/#/#librewolf:matrix.org) channels. There is no need to actually build _mozilla-unified_ (Mozilla Nightly) itself, nor is the folder needed to build LibreWolf. So you can remove it: `rm -rf mozilla-unfied` if you don't plan on using/exploring it. This would create a _mozilla-unified_ folder in our 'build' folder, or basically anywhere that is your current working directory. It takes about an hour for me to complete, but it needs to be done only once. This step might fail and cause problems. Hack a bit, and if that fails you can ask on our [Gitter](https://gitter.im/librewolf-community/librewolf)/[Matrix](https://matrix.to/#/#librewolf:matrix.org) channels. There is no need to actually build _mozilla-unified_ (Mozilla Nightly) itself, nor is the folder needed to build LibreWolf. So you can remove it: `rm -rf mozilla-unfied` if you don't plan on using/exploring it.
Since Firefox 95.0, we need to install an additional library, the 'wasi sdk'. This library sandboxes wasm libraries, which is what we do want. The script to do this is: `setup-wasi-linux.sh` but it's still experimental for us.
So you have the option to either: setup the wasi sdk using _setup-wasi-linux.sh_ perhaps modifying it.
Or, the other option is to not use these sandbox libraries: In this case we can't use our standard _mozconfig_ symlink from _mozconfig.new_ into _mozconfig.new.without-wasi_. In that case you have to type something along the lines of:
```
cd librewolf-__VERSION__
cp lw/mozconfig.new.without-wasi mozconfig
cd ..
```
Now we're ready to actually build LibreWolf: Now we're ready to actually build LibreWolf:
``` ```

View file

@ -1 +1 @@
2 3

View file

@ -139,6 +139,7 @@ def librewolf_patches():
# provide a script that fetches and bootstraps Nightly # provide a script that fetches and bootstraps Nightly
exec('cp -v ../scripts/mozfetch.sh lw') exec('cp -v ../scripts/mozfetch.sh lw')
exec('cp -v ../assets/mozconfig.new ../assets/mozconfig.new.without-wasi lw')
leave_srcdir() leave_srcdir()