extension-downloader
extension-downloader
is a tool to download browser extensions for Firefox and Chromium-based browsers.
This can be used to maintain and deploy browser extensions across multiple systems.
Prerequisites
Before you begin, ensure you have the following installed:
Installation
To install extension-downloader
, follow these steps:
- Install
extension-downloader
:
go install github.com/michaeladler/extension-downloader@latest
- Copy the example configuration file to your user configuration directory:
mkdir -p ~/.config/extension-downloader
cp example/config.toml ~/.config/extension-downloader/config.toml
- Adjust the
config.toml
to your needs.
Usage
After configuring config.toml
, you can run the tool using:
./extension-downloader
The downloader will fetch and install the extensions specified in the configuration file.
See ./extension-downloader --help
for available CLI options.
Configuration
To configure extension-downloader
, edit the config.toml
file to specify which extensions you'd like to download.
The configuration options include specifying the extension IDs (or names), the destination directory, and browser type.
Example config snippet:
[[extensions]]
# browser can be one of: "firefox", "chromium"
browser = "firefox"
# tilde (~) is expanded, anything else not
profile = "~/.mozilla/firefox/default"
# firefox extensions are referenced by name
names = ["ublock-origin"]
[[extensions]]
browser = "chromium"
profile = "~/.config/chromium"
# chromium extensions are referenced by their ID
# which can be obtained from the URL in the Chrome web store
names = [
"cjpalhdlnbpafiamejdnhcphjbkeiagm", # ublock-origin
]
Note: Each extension is downloaded only once and then shared across compatible browsers.
Contributing
If you'd like to contribute to extension-downloader
, please fork the repository and create a pull request, or open an issue for discussion regarding changes or features you'd like to add.
License
extension-downloader
is made available under the Apache-2.0 License.