### Install Project Dependencies Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/README.md Installs the necessary Python packages for developing the documentation website. Ensure you have Python and pip installed. ```shell pip install -r requirements.txt ``` -------------------------------- ### Build and Install from Source using cargo-make Source: https://github.com/filips123/pwasforfirefox/blob/main/native/README.md Use these commands to clone the repository, navigate to the native directory, optionally set a specific version, and then build and install the project using cargo-make. Ensure Rust and cargo-make are installed. ```shell # Clone the repository and switch into the correct directory git clone https://github.com/filips123/PWAsForFirefox.git cd PWAsForFirefox/native # If building a specific version # Set the VERSION environment variable # And run the following commands to set version git checkout tags/v${VERSION} makers set-version ${VERSION} # Build and install the project makers install ``` -------------------------------- ### Install Firefox PWA using Scoop Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Add the 'extras' bucket and then install Firefox PWA using Scoop. ```bash scoop bucket add extras scoop install extras/firefoxpwa ``` -------------------------------- ### Install Firefox PWA using Makers Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Use the 'makers' tool to set the version and then install Firefox PWA. ```bash makers set-version makers install ``` -------------------------------- ### Install Firefox PWA using Portage (Gentoo) Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Enable the 'guru' repository, sync it, and then install Firefox PWA using emerge. ```bash sudo eselect repository enable guru sudo emerge --sync guru sudo emerge -avt www-plugins/firefoxpwa ``` -------------------------------- ### Install Firefox Runtime Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Installs the necessary Firefox runtime for launching web apps. Ensure 7-Zip is installed on Windows. ```shell firefoxpwa runtime install ``` -------------------------------- ### Install Dependencies Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/README.md Installs project dependencies using Yarn. This command should be run after cloning the repository and navigating to the extension directory. ```bash yarn install ``` -------------------------------- ### Serve Documentation Locally Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/README.md Starts a local development server with live reloading for the documentation site. Useful for previewing changes during development. ```shell mkdocs serve ``` -------------------------------- ### Install Xcode Command Line Tools on macOS Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/faq.md Install the necessary Xcode Command Line Tools for compiling the loader during web app installation on macOS. ```shell xcode-select --install ``` -------------------------------- ### Install Firefox PWA using Winget Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Use this command to install Firefox PWA on Windows via the winget package manager. ```bash winget install firefoxpwa --version ``` -------------------------------- ### Install a Web App Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Download, parse, and register a web app. The profile is optional and defaults to the shared profile. Ensure unique names to avoid overwriting. ```shell firefoxpwa site install MANIFEST-URL --profile PROFILE-ID [...] ``` -------------------------------- ### Install Firefox PWA using Homebrew Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Install Firefox PWA on macOS using the Homebrew package manager. ```bash brew install firefoxpwa ``` -------------------------------- ### Install Firefox PWA using NCL Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Use this command to install Firefox PWA using the NCL package manager. ```bash ncl add -p firefoxpwa -v ``` -------------------------------- ### Install Firefox PWA using Pacman Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Install Firefox PWA on Arch Linux-based systems using the pacman package manager. ```bash sudo pacman -S firefoxpwa ``` -------------------------------- ### Launch a Web App Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Open a web app in the Firefox browser runtime. Supports custom start URLs and multiple tabs. ```shell firefoxpwa site launch ID ``` -------------------------------- ### List All Profiles Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Display all profiles and their installed web apps, including IDs. Profile IDs are needed for further management. ```shell firefoxpwa profile list ``` -------------------------------- ### Install Firefox PWA using Chocolatey Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/src/setup/instructions.html Use this command to install Firefox PWA on Windows via the Chocolatey package manager. ```bash choco install firefoxpwa --version ``` -------------------------------- ### Uninstall Firefox Runtime Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Uninstalls the Firefox runtime. Web apps cannot be launched without a runtime installed. ```shell firefoxpwa runtime uninstall ``` -------------------------------- ### Reinstall Xcode Command Line Tools on macOS Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/faq.md If Xcode Command Line Tools are installed but issues persist, remove and reinstall them. ```shell sudo rm -rf /Library/Developer/CommandLineTools ``` -------------------------------- ### Build Documentation Site Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/README.md Builds the static HTML files for the documentation website. This command generates the production-ready site. ```shell mkdocs build ``` -------------------------------- ### Build Extension (Release Mode) Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/README.md Builds the extension in release mode and packages it. This command is used to create a distributable version of the extension. ```bash yarn build ``` -------------------------------- ### Patch Firefox Runtime Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Applies the current globally installed version of patches to the Firefox runtime. Useful after installing a custom runtime or if experiencing launching issues. ```shell firefoxpwa runtime patch ``` -------------------------------- ### Create a New Profile Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Creates a new profile for web apps. Optionally specify a name, description, and template directory. The profile ID is returned and needed for subsequent operations. ```shell firefoxpwa profile create --name PROFILE-NAME --description PROFILE-DESCRIPTION --template PROFILE-TEMPLATE ``` -------------------------------- ### Build Extension (Development Mode) Source: https://github.com/filips123/pwasforfirefox/blob/main/extension/README.md Builds the extension in development mode and sets it up to automatically rebuild on file changes. This is useful for active development. ```bash yarn watch ``` -------------------------------- ### Remove a Profile Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Removes a profile and all web apps installed within it, including user data. The default profile cannot be fully removed but will be cleared. ```shell firefoxpwa profile remove ID ``` -------------------------------- ### Display MkDocs Help Message Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/README.md Prints the help message for the MkDocs command-line tool, showing available subcommands and options. ```shell mkdocs -h ``` -------------------------------- ### Create Symlink on Linux Source: https://github.com/filips123/pwasforfirefox/wiki/Frequently-Asked-Questions Use ln to create a symbolic link for the Firefox executable on Linux. This is typically done within the runtime directory. ```bash ln librewolf firefox ``` -------------------------------- ### Create DEBUG file for Logging Source: https://github.com/filips123/pwasforfirefox/wiki/Troubleshooting To enable detailed logging for debugging, create an empty file named 'DEBUG' in the application support directory for your operating system. This will generate log files in the same directory. ```bash Windows: %APPDATA%\FirefoxPWA Linux: ~/.local/share/firefoxpwa macOS: ~/Library/Application Support/firefoxpwa ``` -------------------------------- ### Launch Web App with JS Console Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/troubleshooting.md Use this command to launch a web app with the JavaScript console enabled for debugging. Ensure you have the correct web app ID. ```shell firefoxpwa site launch ID -- --jsconsole ``` -------------------------------- ### Create Symlink on Windows Source: https://github.com/filips123/pwasforfirefox/wiki/Frequently-Asked-Questions Use mklink to create a symbolic link for the Firefox executable on Windows. This is typically done within the runtime directory. ```bash mklink firefox.exe librewolf.exe ``` -------------------------------- ### Symlink Firefox Binary on Windows Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/faq.md Use this command to symlink the main binary of an alternative Firefox-based browser to 'firefox.exe' in the runtime directory on Windows. ```bash mklink firefox.exe librewolf.exe ``` ```bash mklink firefox.exe waterfox.exe ``` -------------------------------- ### Symlink Firefox Binary on Linux Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/faq.md Use this command to symlink the main binary of an alternative Firefox-based browser to 'firefox' in the runtime directory on Linux. ```bash ln librewolf firefox ``` ```bash ln waterfox firefox ``` -------------------------------- ### Download Web App Manifest with Curl Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/troubleshooting.md Fetch the web app manifest using curl with a specific user-agent and headers. This is useful when websites send different manifest versions to different clients. ```shell curl -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0" -H "Sec-Fetch-Site: none" -H "Sec-Fetch-Dest: manifest" "https://example.com/manifest.json" ``` -------------------------------- ### Include Web App Manifest in HTML Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/overrides/main.html Include this Jinja2 template block in your base HTML file to link the web app manifest. ```html {% extends "base.html" %} {% block extrahead %} {# Include web app manifest #} {# Include releases and commits feeds #} {% if page and page.is_homepage %} {# Preconnect to the shields.io website for badges #} {% endif %} {% if page and page.meta and page.meta.schema %} {# Support including JSON-LD schema #} {{ page.meta.schema | tojson }} {% endif %} {% if config.extra.analytics.enabled %} {# Store configuration for page view analytics #} {{ config.extra.analytics.endpoints | tojson }} {% endif %} {% endblock %} ``` -------------------------------- ### Update a Web App Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Modify web app information like name, description, and icon. Optionally updates manifest and icons, reapplying system integration. ```shell firefoxpwa site update ID --name SITE-NAME --description SITE-DESCRIPTION [...] ``` -------------------------------- ### Symlink Firefox Binary on macOS Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/faq.md Use this command within the 'Firefox.app/Contents/MacOS' directory to symlink the main binary of an alternative Firefox-based browser to 'firefox' on macOS. ```bash ln -s librewolf firefox ``` ```bash ln -s waterfox firefox ``` -------------------------------- ### Update a Profile Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Modify a profile's name and description. Omitted arguments leave properties unchanged. Empty values clear properties. ```shell firefoxpwa profile update ID --name NEW-PROFILE-NAME --description NEW-PROFILE-DESCRIPTION ``` -------------------------------- ### Uninstall a Web App Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/user-guide/console.md Remove a web app and its system integration. App data remains and can be reused upon reinstallation. ```shell firefoxpwa site uninstall ID ``` -------------------------------- ### Allow Native Messaging for Firefox Snap on Linux Source: https://github.com/filips123/pwasforfirefox/blob/main/docs/docs/help/faq.md Use this command to manually allow native messaging for PWAs for Firefox if the permission popup does not appear when using Firefox Snap on Ubuntu. ```shell flatpak permission-set webextensions firefoxpwa snap.firefox yes ```