Browser Management Examples
These examples show how to list, install, select, and remove browsers used by Butler Sheet Icons. All commands are provided for macOS/Linux (Bash) and Windows (PowerShell).
Prerequisites
- Install Butler Sheet Icons from the releases page
- Ensure you can run the executable
- macOS/Linux:
./butler-sheet-icons - Windows:
./butler-sheet-icons.exe(orbutler-sheet-icons.exe)
- macOS/Linux:
Basic operations
List currently installed browsers
bash
./butler-sheet-icons browser list-installedpowershell
./butler-sheet-icons.exe browser list-installedExample output:
text
2024-02-16T14:10:55.141Z info: App version: 3.2.3
2024-02-16T14:10:55.141Z info: Installed browsers:
2024-02-16T14:10:55.156Z info: chrome, build id=121.0.6167.85, platform=mac, path=/Users/you/.cache/puppeteer/chrome/mac-121.0.6167.85
2024-02-16T14:10:55.156Z info: firefox, build id=124.0a1, platform=mac, path=/Users/you/.cache/puppeteer/firefox/mac-124.0a1Install default browser (latest Chrome)
bash
./butler-sheet-icons browser installpowershell
./butler-sheet-icons.exe browser installExample output:
text
2024-02-16T14:13:35.312Z info: App version: 3.2.3
2024-02-16T14:13:35.484Z info: Resolved browser build id: "121.0.6167.85" for browser "chrome" version "stable"
2024-02-16T14:13:35.562Z info: Installing browser...
2024-02-16T14:13:44.062Z info: Browser "chrome" version "121.0.6167.85" installedInstall Firefox (latest)
bash
./butler-sheet-icons browser install --browser firefoxpowershell
./butler-sheet-icons.exe browser install --browser firefoxList available Chrome builds (channels)
bash
./butler-sheet-icons browser list-available --browser chrome --channel stablepowershell
./butler-sheet-icons.exe browser list-available --browser chrome --channel stableInstall a specific Chrome version
First list available versions (see above), then install:
bash
./butler-sheet-icons browser install --browser chrome --browser-version 121.0.6167.85powershell
./butler-sheet-icons.exe browser install --browser chrome --browser-version 121.0.6167.85Uninstall a specific browser version
bash
./butler-sheet-icons browser uninstall --browser chrome --browser-version 121.0.6167.85powershell
./butler-sheet-icons.exe browser uninstall --browser chrome --browser-version 121.0.6167.85Remove all cached browsers
bash
./butler-sheet-icons browser uninstall-allpowershell
./butler-sheet-icons.exe browser uninstall-allUsing browsers when creating sheet icons
Use default browser
BSI will download and use the default browser (Chrome) if needed:
bash
butler-sheet-icons qscloud create-sheet-icons \
--tenanturl mytenant.eu.qlikcloud.com \
--apikey $BSI_API_KEY \
--logonuserid user@company.com \
--logonpwd mypassword \
--appid 12345678-1234-1234-1234-123456789012powershell
./butler-sheet-icons.exe qscloud create-sheet-icons `
--tenanturl mytenant.eu.qlikcloud.com `
--apikey $env:BSI_API_KEY `
--logonuserid user@company.com `
--logonpwd mypassword `
--appid 12345678-1234-1234-1234-123456789012Specify browser type (Chrome/Firefox)
bash
butler-sheet-icons qscloud create-sheet-icons \
--tenanturl mytenant.eu.qlikcloud.com \
--apikey $BSI_API_KEY \
--logonuserid user@company.com \
--logonpwd mypassword \
--appid 12345678-1234-1234-1234-123456789012 \
--browser chromepowershell
./butler-sheet-icons.exe qscloud create-sheet-icons `
--tenanturl mytenant.eu.qlikcloud.com `
--apikey $env:BSI_API_KEY `
--logonuserid user@company.com `
--logonpwd mypassword `
--appid 12345678-1234-1234-1234-123456789012 `
--browser chromeUsing Firefox works the same, set --browser firefox.
Use a specific browser version
Install and then use a pinned version for consistency:
bash
# Install specific version
./butler-sheet-icons browser install --browser chrome --browser-version 121.0.6167.85
# Use it
butler-sheet-icons qscloud create-sheet-icons \
--tenanturl mytenant.eu.qlikcloud.com \
--apikey $BSI_API_KEY \
--logonuserid user@company.com \
--logonpwd mypassword \
--appid 12345678-1234-1234-1234-123456789012 \
--browser chrome \
--browser-version 121.0.6167.85powershell
# Install specific version
./butler-sheet-icons.exe browser install --browser chrome --browser-version 121.0.6167.85
# Use it
./butler-sheet-icons.exe qscloud create-sheet-icons `
--tenanturl mytenant.eu.qlikcloud.com `
--apikey $env:BSI_API_KEY `
--logonuserid user@company.com `
--logonpwd mypassword `
--appid 12345678-1234-1234-1234-123456789012 `
--browser chrome `
--browser-version 121.0.6167.85Docker usage
Browsers in Docker are downloaded inside the container.
bash
# List browsers in container
docker run -it --rm ptarmiganlabs/butler-sheet-icons:latest browser list-installed
# Install Firefox in container
docker run -it --rm ptarmiganlabs/butler-sheet-icons:latest browser install --browser firefox
# Use Firefox for sheet icons
docker run -it --rm \
-v $(pwd)/images:/nodeapp/img \
ptarmiganlabs/butler-sheet-icons:latest \
qscloud create-sheet-icons \
--tenanturl mytenant.eu.qlikcloud.com \
--apikey $BSI_API_KEY \
--logonuserid user@company.com \
--logonpwd mypassword \
--appid 12345678-1234-1234-1234-123456789012 \
--browser firefox \
--headless truepowershell
# List browsers in container
docker run -it --rm ptarmiganlabs/butler-sheet-icons:latest browser list-installed
# Install Firefox in container
docker run -it --rm ptarmiganlabs/butler-sheet-icons:latest browser install --browser firefox
# Use Firefox for sheet icons
docker run -it --rm `
-v ${PWD}/images:/nodeapp/img `
ptarmiganlabs/butler-sheet-icons:latest `
qscloud create-sheet-icons `
--tenanturl mytenant.eu.qlikcloud.com `
--apikey $env:BSI_API_KEY `
--logonuserid user@company.com `
--logonpwd mypassword `
--appid 12345678-1234-1234-1234-123456789012 `
--browser firefox `
--headless trueDiagnostics and troubleshooting
Full diagnostic of browser setup
bash
# Installed browsers
./butler-sheet-icons browser list-installed
# Available Chrome builds
./butler-sheet-icons browser list-available --browser chrome
# Available Firefox builds
./butler-sheet-icons browser list-available --browser firefoxpowershell
# Installed browsers
./butler-sheet-icons.exe browser list-installed
# Available Chrome builds
./butler-sheet-icons.exe browser list-available --browser chrome
# Available Firefox builds
./butler-sheet-icons.exe browser list-available --browser firefoxClean cache and reinstall
bash
# Remove all
./butler-sheet-icons browser uninstall-all
# Reinstall common browsers
./butler-sheet-icons browser install --browser chrome
./butler-sheet-icons browser install --browser firefox
# Verify
./butler-sheet-icons browser list-installedpowershell
# Remove all
./butler-sheet-icons.exe browser uninstall-all
# Reinstall common browsers
./butler-sheet-icons.exe browser install --browser chrome
./butler-sheet-icons.exe browser install --browser firefox
# Verify
./butler-sheet-icons.exe browser list-installedVisible mode test (debugging)
bash
./butler-sheet-icons qscloud create-sheet-icons \
--tenanturl mytenant.eu.qlikcloud.com \
--apikey $BSI_API_KEY \
--logonuserid user@company.com \
--logonpwd mypassword \
--appid 12345678-1234-1234-1234-123456789012 \
--headless false \
--pagewait 10 \
--loglevel verbosepowershell
./butler-sheet-icons.exe qscloud create-sheet-icons `
--tenanturl mytenant.eu.qlikcloud.com `
--apikey $env:BSI_API_KEY `
--logonuserid user@company.com `
--logonpwd mypassword `
--appid 12345678-1234-1234-1234-123456789012 `
--headless false `
--pagewait 10 `
--loglevel verbosePlatform-specific notes
Windows
- Browsers are stored in
C:\Users\<username>\.cache\puppeteer\ - Use PowerShell for the best experience
- Windows Defender might scan downloaded browsers (slight delays)
macOS
- Browsers are stored in
~/.cache/puppeteer/ - BSI binaries are notarized by Apple
- First run might show a security warning (normal)
Linux
- Browsers are stored in
~/.cache/puppeteer/ - Ensure sufficient disk space for browser downloads
- Some distributions might require additional dependencies
Best practices
Production
- Use specific browser versions to ensure consistency
- Pre-install browsers rather than downloading during execution
- Use headless mode for better performance
- Monitor disk space (browsers are 100–200 MB each)
Development
- Use visible mode when debugging login issues
- Keep multiple browser versions for compatibility testing
- Use verbose logging to understand behavior
- Test with both Chrome and Firefox
CI/CD
- Cache browser downloads between pipeline runs
- Use specific versions to avoid unexpected changes
- Include browser installation in your deployment scripts
- Test browser functionality in your pipeline
For conceptual information, see the Browser Management Guide.