This document provides a complete reference for fxios configuration.
fxios uses a merged configuration system:
- CLI arguments - Highest priority, always takes precedence
- Project config -
.fxios.yamlin repository root - Product presets - Built-in defaults for Firefox/Focus (for l10n commands)
- Bundled defaults - Fallback values built into fxios
The .fxios.yaml file in your repository root configures fxios's behavior.
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
project |
string | Yes | - | Project identifier (must be firefox-ios) |
default_bootstrap |
string | No | firefox |
Default product for bootstrap command |
default_build_product |
string | No | firefox |
Default product for build/run/test commands |
Minimal (uses all defaults):
project: firefox-iosFocus development:
project: firefox-ios
default_bootstrap: focus
default_build_product: focusThe --product option on l10n export/import commands provides preset configurations for Firefox and Focus. These presets configure multiple settings at once.
Important: For l10n export and l10n import, you must specify either --product or --project-path.
| Setting | Firefox | Focus |
|---|---|---|
xliff_name |
firefox-ios.xliff |
focus-ios.xliff |
export_base_path |
/tmp/ios-localization |
/tmp/ios-localization-focus |
development_region |
en-US |
en |
project_name |
Client.xcodeproj |
Blockzilla.xcodeproj |
project_path |
Client.xcodeproj |
Blockzilla.xcodeproj |
skip_widget_kit |
false |
true |
For l10n commands, values are resolved in this order:
- CLI argument - e.g.,
--xliff-name custom.xliff - Product preset - from
--productflag - Hardcoded fallback - Firefox defaults
Uses default_bootstrap to determine which product to bootstrap:
firefox- Bootstrap for Firefox developmentfocus- Bootstrap for Focus development
Uses default_build_product to determine which product to build:
firefox- Build Firefoxfocus- Build Focusklar- Build Klar
Requires either --product or --project-path.
| Option | Description |
|---|---|
--product |
Product preset (firefox/focus). Required unless using --project-path |
--project-path |
Path to .xcodeproj. Required unless using --product |
--xliff-name |
Override: XLIFF filename |
--export-base-path |
Override: temp export path |
Requires either --product or --project-path.
| Option | Description |
|---|---|
--product |
Product preset (firefox/focus). Required unless using --project-path |
--project-path |
Path to .xcodeproj. Required unless using --product |
--xliff-name |
Override: XLIFF filename |
--development-region |
Override: xcloc development region |
--project-name |
Override: xcloc project name |
--skip-widget-kit |
Override: exclude WidgetKit strings |
| Option | Description |
|---|---|
--product |
Product preset for xliff-name default |
--xliff-name |
Override: XLIFF filename (defaults to firefox-ios.xliff) |
# Using product preset
fxios l10n export --product firefox --l10n-project-path ~/src/firefox-ios-l10n
# Using explicit project path
fxios l10n export --project-path ./Client.xcodeproj --l10n-project-path ~/src/firefox-ios-l10n# Using product preset
fxios l10n import --product focus --l10n-project-path ~/src/focus-ios-l10n
# Override skip-widget-kit from preset
fxios l10n import --product focus --no-skip-widget-kit --l10n-project-path ~/src/focus-ios-l10n# Export only French
fxios l10n export --product firefox --locale fr --l10n-project-path ~/src/firefox-ios-l10n
# Import only German
fxios l10n import --product focus --locale de --l10n-project-path ~/src/focus-ios-l10n