Detect default web browser of the current user, cross-platform (Win/Lin/Mac)
npm install @aw-web-design/x-default-browser
This cross-platform module finds out the default browser for current user.
Tested on Windows 10 64-bit, Windows 7 64-bit, Windows XP 32-bit, Ubuntu 14.04 64-bit (en-US locale), Mac OS X.
It requires nodejs and npm. If you don't have node, grab it at nodejs.org.
Node installer bundles npm (node package manager)
* Windows:
* checks registry value HKCU\Software\Clients\StartMenuInternet
* Linuxes:
* reads the output of xdg-mime query default x-scheme-handler/http
* OS X:
* delegated to default-browser-id from Sindre Sorhus
``sh`
$ npm install x-default-browser
`js
var defaultBrowser = require('x-default-browser');
defaultBrowser(function (err, res) {
// in case of error, err will be a string with error message; otherwise it's null.
console.dir(res);
// => {
// isIE: false,
// isFirefox: true,
// isChrome: false,
// isChromium: false,
// isOpera: false,
// isWebkit: false,
// identity: 'firefox.exe',
// commonName: 'firefox'
// }
});
`
* commonName is portable, it will be ie, safari, firefox, chrome, chromium, opera or unknownisBlink
* is true for Chrome, Chromium, OperaisWebkit
* is true for Chrome, Chromium, Opera, Safariidentity
* key is platform-specific.HKLM\Software\Clients\StartMenuInternet\
* On Windows, it's the prefix you can use for querying iexplore.exe
keys to find out details of the browser. It'll be one of , firefox.exe, google chrome,chromium.
, operastable.firefox.desktop
* On Ubuntu, it will be , google-chrome.desktop, chromium-browser.desktop or opera.desktopcom.apple.Safari
* On Mac OS X, it will be the bundle ID: , com.google.chrome, com.operasoftware.Opera, org.mozilla.firefox etc
`sh`
$ npm install -g x-default-browser
$ x-default-browser
firefox
Command line version outputs the commonName key, i.e. ie, safari, firefox, chrome, chromium, opera or unknown`.
This module was only tested on Ubuntu. Compatibility reports and fixes for other distros are more than welcome!
Use GitHub issues or email: (jakub.g.opensource) (gmail)
MIT © Jakub Gieryluk
* default-browser-id (OS X)
* win-detect-browsers (Windows)
* browser-launcher2 (cross-platform)
* opener (cross-platform)
* node-open (cross-platform)