-
Notifications
You must be signed in to change notification settings - Fork 7
Testing and build
The easiest way to test changes to Foxtrick is to 'test in place' i.e. without building an extension xpi/zip.
- Chrome: Developer Mode, and then Load Unpacked.
- Firefox: install Mozilla web-ext tool, and then
$ web-ext run
However, the update to version 0.19.0.0 has some new implications for testing.
- manifest.json is no longer present - replaced by manifest-mv2.json and manifest-mv3.json
- module CurrencyConverter issues
Now there are two ways to 'test in place', each with their own pros and cons.
This still works, but there are a couple of steps that must be done first:
- Copy manifest-mv2.json (Firefox) or manifest-mv3.json (Chrome) to manifest.json
- In content/preferences.html comment out or remove the entry for currency-converter.js (line 175).
Be careful not to commit these changes back to the repository.
This is the preferred method, but requires waiting for the build to complete before starting to test.
- General POSIX utilities -
rm,cat,grep,make,zipand so on - Base python install.
On Windows a git install including git-bash will provide most of the POSIX utils needed, but you will need to download a GnuWin32 version of make and zip, and have these in the PATH.
https://sourceforge.net/projects/gnuwin32/files/
The build uses tags on the Foxtrick repo to set version number.
-
$ git fetch upstream --tagswhere upstream is a remote that points tofoxtrick-ng/foxtrick.
By default the Makefile is configured for in-place development testing.
-
$ makebuild both ff and chrome versions -
$ make chromebuild chrome version only -
$ make firefoxbuild ff version only -
$ make cleanremove build directory
The build creates a build-dev directory containing chrome and firefox directories for use with 'Load Unpacked' and web-ext respectively.
- It is recommended to set your IDE to run the make targets.
-
$ make chromeand$ make firefoxcan be run in parallel. - If a change has been made to manifest-mv2.json (Firefox) you must
$ make clean-firefox firefoxand restart web-ext. - Dave has a basic VSCode config that streamlines some of this, and can provide it if you ask.