... | ... | @@ -128,13 +128,14 @@ In addition, you must [create a new public key pair](https://gitlab.torproject.o |
|
|
## Updater URL and Signature Public Certificate
|
|
|
|
|
|
Testing the `nightly` channel is easiest.
|
|
|
`alpha` and `release` are also feasible, but slightly less automated because our tools take for granted that you are updating from signed builds.
|
|
|
|
|
|
You can change the URL in the [build configuration](https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/blob/main/projects/firefox/config#L38): you just need to set `override_updater_url`.
|
|
|
This URL will contain the update responses, that are some XML files that the Firefox updater polls with a certain frequency to check if any update is available.
|
|
|
|
|
|
Setting a custom updater URL will also override the update certificate: copy yours to `project/firefox/marsigner.der`.
|
|
|
|
|
|
If you are testing `release` or `alpha` then a more complicated patch will be needed.
|
|
|
If you are testing `release` or `alpha`, you will have to modify the `build` script to replace the release key instead of the nightly.
|
|
|
|
|
|
## Sign MAR file
|
|
|
|
... | ... | @@ -194,6 +195,7 @@ They are located in `tools/update-responses`. |
|
|
### Generate the incrementals
|
|
|
|
|
|
Generating the incrementals has the "side" effect of creating a configuration to create the update responses.
|
|
|
For nightly you can use use this command:
|
|
|
|
|
|
```shell
|
|
|
make torbrowser-incrementals-nightly
|
... | ... | @@ -207,6 +209,21 @@ Otherwise, if you really don't want to generate the incrementals, you can simply |
|
|
rbm/rbm build release --step update_responses_config --target nightly --target torbrowser
|
|
|
```
|
|
|
|
|
|
For `release` and `alpha`, you cannot use the respective `make` targets.
|
|
|
You will have to use the above command to generate the configuration first, adjust it to use the unsigned build directory:
|
|
|
|
|
|
```yaml
|
|
|
versions:
|
|
|
xx.y.z:
|
|
|
releases_dir: .../tor-browser-build/torbrowser/release/unsigned
|
|
|
```
|
|
|
|
|
|
Then you can optionally generate incrementals manually with:
|
|
|
|
|
|
```shell
|
|
|
tools/update-responses/gen_incrementals $channel
|
|
|
```
|
|
|
|
|
|
#### Update the URLs in `config.yml`
|
|
|
|
|
|
`tools/update-responses/config.yml` is a non-versioned file that is generated automatically at the previous stage. \
|
... | ... | |