Embedded Web Extension to build Containers as a Firefox Test Pilot Experiment and Shield Study to learn:
- Will a general Firefox audience understand the Containers feature?
- Is the UI as currently implemented in Nightly clear or discoverable?
For more info, see:
- node 7+ (for jpm)
- Firefox 53+
Add-on development is better with a particular environment. One simple way to get that environment set up is to install the DevPrefs add-on. You can make a custom Firefox profile that includes the DevPrefs add-on, and use that profile when you run the code in this repository.
-
Make a new profile by running
/path/to/firefox -P
, which launches the profile editor. "Create Profile" -- name it whatever you wish (e.g. 'addon_dev') and store it in the default location. It's probably best to deselect the option to "Use without asking," since you probably don't want to use this as your default profile. -
Once you've created your profile, click "Start Firefox". A new instance of Firefox should launch. Go to Tools->Add-ons and search for "DevPrefs". Install it. Quit Firefox.
-
Now you have a new, vanilla Firefox profile with the DevPrefs add-on installed. You can use your new profile with the code in this repository like so:
Release & Beta channels do not allow un-signed add-ons, even with the DevPrefs. So, you must run the add-on in an unbranded build:
- Download and install an un-branded build of Firefox
- Download the latest
.xpi
from this repository's releases - Run the un-branded build of Firefox with your DevPrefs profile
- Go to
about:addons
- Click the gear, and select "Install Add-on From File..."
- Select the
.xpi
file
Whilst this is still using legacy code to test you will need the following in your profile:
Change the following prefs in about:config:
- extensions.legacy.enabled = true
- xpinstall.signatures.required = false
git clone [email protected]:mozilla/testpilot-containers.git
cd testpilot-containers
npm install
./node_modules/.bin/jpm run -p /Path/To/Firefox/Profiles/{junk}.addon_dev -b FirefoxBeta
(where FirefoxBeta might be: ~//obj-x86_64-pc-linux-gnu/dist/bin/firefox or ~//firefox)
Check out the Browser Toolbox for more information about debugging add-on code.
To build a local testpilot-containers.xpi, use the plain jpm xpi
command,
or run npm run build
.
To sign an .xpi, use jpm sign
command.
Note: You will need to be an author on the AMO add-on.
TBD
TBD